IP Library Granted Patent US 9,507,735
Granted Patent B2
US 9,507,735 · App. 14/318,347 · Granted Nov 29, 2016

Digital content retrieval utilizing dispersed storage

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 9,507,735
App. No.
14/318,347
Granted
Nov 29, 2016
Kind
B2
Abstract

A method begins by a DS processing module, when operable within a computing device, causing the computing device to receive a request for retrieval of a set of encoded content data slices from a dispersed storage network (DSN) memory, wherein the request includes at least the identity of the set of encoded content data slices. The method continues by determining user access rights based on a content timestamp. The method continues by determining the current timestamp and whether user access rights compare favorably to the content timestamp and current timestamp or can be modified to be favorable. The method continues by retrieving encoded data slices from the DSN memory and decoding the encoded data slices utilizing an error coding dispersed storage function and in accordance with the read operational parameters producing the content and sending the content and/or the encoded data slices to the requester.

Claims (49)

1. A method for execution by one or more processing modules of a dispersed storage network (DSN), the method comprises:

receiving, from a requester, a request for retrieval of content previously stored within a DSN memory, wherein the request includes at least the identity of sets of encoded data slices representing the content;

determining user time-frame access rights based on comparison of one or more timestamps associated with the user to a timestamp of the requested content;

determining user content access rights based on a comparison of the identity of the sets of encoded data slices and user subscribed content access information;

when the user time-frame and content access rights compare favorably:

determining read operation parameters regarding the sets of encoded data slices;

retrieving a threshold number of encoded data slices for each of the sets of encoded data slices from the DSN memory in accordance with the read operation parameters; and

decoding the sets of the threshold number of encoded data slices utilizing an error coding dispersed storage function of the read operation parameters to produce the content; and

sending the content to the requester; and

when one or more of the user access time-frame access rights and the user content access rights compare unfavorably:

determining whether the one or more of the user access time-frame access rights and the user content access rights are modifiable to provide a favorable comparison; and

when the one or more of the user access time-frame access rights and the user content access rights are modifiable, modifying the one or more of the user access time-frame access rights and the user content access rights to provide a favorable comparison.

2. The method of claim 1 , wherein the requester includes one or more of:

a set top box; a user device; a dispersed storage (DS) managing unit; a storage integrity processing unit; another DS processing unit; a DS unit; and another source.

3. The method of claim 1 further comprises the request including one or more of:

a user ID; a content type indicator; digital rights management (DRM) information; a DRM policy; and read operational parameters.

4. The method of claim 3 , wherein the determining of user content access rights is based on one or more of:

the user ID; a user access rights table lookup; a content timestamp table lookup; a content type indicator; the DRM information; the DRM policy; user information; system parameters; a vault lookup; and read operational parameters.

5. The method of claim 1 further comprises determining if the user had access rights at the time of storage of the content into the DSN memory and, if so, providing a favorable user access rights comparison.

6. The method of claim 1 further comprises determining if the user has access rights to the content at the time of the request and, if so, providing a favorable user access rights comparison.

7. The method of claim 1 , wherein the read operational parameters include one or more of:

pillar width; read threshold; pillars allowed to retrieve from; a decode method; a de-slice method; a decryption method; a decryption key; and pillar combinations for the requester.

8. The method of claim 1 , wherein the modifying the one or more of the user access time-frame access rights and the user content access rights comprises;

providing any of the following to the requester:

an error message;

capability to purchase the one or more of the user access time-frame access rights and the user content access rights; and

capability to pay a premium for unlimited lifetime access to the content.

9. The method of claim 1 further comprises, prior to receiving the request, an ingest dispersed storage (DS) processing unit receiving the content, determining the identity of sets of encoded data slices representing the content, determining a current timestamp and storing in a content ingestion table a content ID in a content ID field and further storing the current timestamp as the content timestamp in a content timestamp field.

10. The method of claim 9 further comprises a retrieval DS processing unit utilizing information from the content ingestion table to determine when the content was ingested into the DSN memory.

11. The method of claim 9 , wherein the current timestamp determination is based on one or more of:

a system clock; an ingest dispersed storage (DS) processing unit clock; a command; a message; and a query.

12. A dispersed storage (DS) module comprises:

a first DS processing module, when operable within a computing device, causes the computing device to:

receive, from a requester, a request for retrieval of a set of encoded content data slices from a dispersed storage network (DSN) memory, wherein the request includes at least the identity of the set of encoded content data slices;

determine user time-frame access rights based on a content timestamp;

determine user content access rights based on a comparison of the identity of the sets of encoded data slices and user subscribed content access information;

when the user time-frame and content access rights compare favorably:

determine read operation parameters regarding the sets of encoded data slices;

retrieve a threshold number of encoded data slices for each of the sets of encoded data slices from the DSN memory in accordance with the read operation parameters; and

decode the sets of the threshold number of encoded data slices utilizing an error coding dispersed storage function of the read operational parameters produce the content;

send the content and/or the encoded data slices to the requester; and

when one or more of the user access time-frame access rights and the user content access rights compare unfavorably:

determine whether the one or more of the user access time-frame access rights and the user content access rights are modifiable to provide a favorable comparison; and

when the one or more of the user access time-frame access rights and the user content access rights are modifiable, modify the one or more of the user access time-frame access rights and the user content access rights to provide a favorable comparison.

13. The dispersed storage (DS) module of claim 12 further comprises the first processing module modifying the one or more of the user access time-frame access rights and the user content access rights by:

providing any of the following to the requester:

an error message;

capability to purchase the one or more of the user access time-frame access rights and the user content access rights; and

capability to pay a premium for unlimited lifetime access to the content.

Assignments (4)
CORRECTIVE ASSIGNMENT TO CORRECT THE 9992063 AND 10334045 LISTED IN ERROR PREVIOUSLY RECORDED ON REEL 049556 FRAME 0012. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNOR HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 14, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 052205/0705 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 049556/0012 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2016
From: CLEVERSAFE, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 038629/0015 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2014
From: GRUBE, GARY W.; MARKISON, TIMOTHY W.
To: CLEVERSAFE, INC.
Reel/Frame 033202/0349 →