IP Library Granted Patent US 11,259,082
Granted Patent B2
US 11,259,082 · App. 17/129,891 · Granted Feb 22, 2022

Systems and methods for data processing, storage, and retrieval from a server

Inventors: Ian Bastable (London, GB); Gareth Bowen (London, GB)
Assignee: SYNAMEDIA LIMITED
H04N21/4408H04L9/3218H04L9/3271H04N21/232H04N21/4405
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,259,082
App. No.
17/129,891
Granted
Feb 22, 2022
Kind
B2
Abstract

A method for offloading a data segment includes receiving a probe request from a user device to offload the data segment, where the probe request includes a segment identification. The method further includes sending a probe response to the user device, where the probe response includes an approval or decline of an action to be executed by the user device, the action being one of an upload or a request to retry offloading the data segment at a later time. The method further includes sending a challenge to the user device.

Claims (41)

1. A method for secure offloading of data by a user device to a server, the method comprising:

receiving a request from the user device to offload a data segment to the server, the request including a probe request, and the probe request including a segment identification;

determining whether a copy of the data segment is stored in a database;

when the copy of the data segment is not stored in the database:

verifying that the data segment corresponds to data associated with the segment identification; and

sending a probe response to the user device, the probe response comprising an approval or decline of an action to be executed by the user device, the action being one of an upload, or a request to retry offloading the data segment at a later time; and

when the copy of the data segment is stored in the database:

sending a challenge to the user device to verify an authenticity of the data segment,

wherein the challenge is satisfied at least in part by providing a proof that the user device was previously in possession of the stored copy of the data segment.

2. The method of claim 1 , wherein the challenge comprises a request for one or more bits of data of the data segment.

3. The method of claim 1 , wherein the segment identification is formed using a recording time for the data segment, a reference time value for the data segment, and a length enumeration for the data segment.

4. The method of claim 1 , further comprising requesting the user device to store the challenge and a user device proof, wherein the challenge and the user device proof are specific to the data segment.

5. The method of claim 1 , wherein the upload is declined if data corresponding to the data segment is known to be recoverable from the server.

6. The method of claim 1 , further comprising determining whether the segment identification matches one of segment identifications associated with one of local copies of data segments recoverable from the server.

7. The method of claim 6 , further comprising determining that the action is an approval of the upload when the segment identification does not match any of segment identifications associated with one of local copies of data segments recoverable from the server.

8. The method of claim 6 , further comprising determining that the action is a decline of the upload when the segment identification matches at least one of segment identifications associated with one of local copies of data segments recoverable from the server.

9. The method of claim 1 , wherein the challenge is unique for the user device.

10. The method of claim 1 , wherein the challenge is generated for the user device based on an identification of the user device.

11. The method of claim 1 , further comprising authenticating the user device before receiving the request from the user device.

12. The method of claim 1 , further comprising receiving the data segment and the segment identification when the probe response to the user device indicates that the upload is approved.

13. The method of claim 12 , further comprising receiving uploaded data, the uploaded data comprising information used to obtain a content key, wherein the content key is configured to partially decrypt the data segment.

14. The method of claim 13 , further comprising notifying the user device that the uploaded data is received, after receiving the uploaded data.

15. The method of claim 13 , wherein the data segment is encrypted commutatively with at least the content key and a common key.

16. The method of claim 13 , wherein the uploaded data comprises a local server copy of the data segment, the local server copy of the data segment being stored at a storage device associated with a local server, the local server copy of the data segment being encrypted only by a common key.

17. A computer-implemented system for secure offloading of data by a user device to a server, the system including at least one processor configured to perform operations comprising:

receiving a request from the user device to offload a data segment to the server, the request including a probe request, and the probe request including a segment identification;

determining whether a copy of the data segment is stored in a database;

when the copy of the data segment is not stored in the database:

verifying that the data segment corresponds to data associated with the segment identification; and

sending a probe response to the user device, the probe response comprising an approval or decline of an action to be executed by the user device, the action being one of an upload, or a request to retry offloading the data segment at a later time; and

when the copy of the data segment is stored in the database:

sending a challenge to the user device to verify an authenticity of the data segment,

wherein the challenge is satisfied at least in part by providing a proof that the user device was previously in possession of the stored copy of the data segment.

18. The system of claim 17 , wherein the challenge comprises a request for one or more bits of data of the data segment.

19. The system of claim 17 , wherein the segment identification is formed using a recording time for the data segment, a reference time value for the data segment, and a length enumeration for the data segment.

20. The system of claim 17 , further comprising requesting the user device to store the challenge and a user device proof, wherein the challenge and the user device proof are specific to the data segment.

21. The system of claim 17 , wherein the upload is declined if data corresponding to the data segment is known to be recoverable from the server.

22. The system of claim 17 , further comprising determining whether the segment identification matches one of segment identifications associated with one of local copies of data segments recoverable from the server.

23. The system of claim 22 , further comprising determining that the action is an approval of the upload when the segment identification does not match any of segment identifications associated with one of local copies of data segments recoverable from the server.

24. The system of claim 22 , further comprising determining that the action is a decline of the upload when the segment identification matches at least one of segment identifications associated with one of local copies of data segments recoverable from the server.

25. The system of claim 17 , wherein the challenge is unique for the user device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2020
From: BASTABLE, IAN; BOWEN, GARETH
To: SYNAMEDIA LIMITED
Reel/Frame 054824/0026 →
Continuity (2)
Continuation In Part 16660761 · Oct 22, 2019
Related Publication 20210120307A1 · Apr 22, 2021