IP Library Granted Patent US 10,705,923
Granted Patent B2
US 10,705,923 · App. 16/185,573 · Granted Jul 7, 2020

Dispersed storage network with customized security and methods for use therewith

Inventors: Jason K. Resch (Chicago, IL); Wesley Leggette (Chicago, IL)
Assignee: PURE STORAGE, INC.
G06F11/1464G06F3/065G06F3/067G06F3/0617G06F3/0619G06F3/0635G06F16/172G06F16/9535H04L63/10H04L67/1097G06F11/0709G06F11/0751G06F11/1076G06F11/2038G06F11/2048G06F11/2094G06F2201/80G06F2211/1028
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 10,705,923
App. No.
16/185,573
Granted
Jul 7, 2020
Kind
B2
Abstract

A method begins with a processing module selecting one of a plurality of dispersed storage (DS) processing modules for facilitating access to a dispersed storage network (DSN) memory. The method continues with the processing module sending a DSN memory access request to the one of the plurality of DS processing modules. The method continues with the processing module selecting another one of the plurality of DS processing modules when no response is received within a given time frame or when the response to the access request does not include an access indication. The method continues with the processing module sending the DSN memory access request to the another one of the plurality of DS processing modules.

Claims (57)

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

receiving an access request corresponding to a data segment of a data object stored in the DSN, wherein the data segment is dispersed storage error encoded into a set of encoded data slices, wherein a decode threshold number of encoded data slices of the set of encoded data slices is required to decode the data segment, wherein the decoded threshold number is greater than one, and wherein the set of encoded data slices is stored or is to be stored in a plurality of dispersed storage units of the DSN;

determining connection security requirements corresponding to the access request;

determining a subset of the plurality of dispersed storage units based on the connection security requirements, wherein the subset includes at least the decode threshold number of dispersed storage units of the plurality of dispersed storage units;

determining, based on the connection security requirements, a connection security level for communicating with the subset of the plurality of dispersed storage units regarding the access request, wherein determining the connection security level includes determining a corresponding one of a plurality of connection security levels for each of the subset of the plurality of dispersed storage units based on a corresponding proximity of each of the subset of the plurality of dispersed storage units from the one or more computing devices; and

communicating respective portions of the access request to each of the subset of the plurality of dispersed storage units in accordance with the corresponding one of the plurality of connection security levels.

2. The method of claim 1 wherein one of the plurality of connection security levels includes a first key employed for one of the subset of the plurality of dispersed storage units.

3. The method of claim 2 wherein another one of the plurality of connection security levels includes a second key employed for another one of the subset of the plurality of dispersed storage units.

4. The method of claim 1 wherein the plurality of connection security levels includes a first cipher employed for one of the subset of the plurality of dispersed storage units and a second cipher employed for another of the subset of the plurality of dispersed storage units.

5. The method of claim 1 wherein the plurality of connection security levels includes at least one of:

a transmission control protocol connection that is based on a user identifier and security credentials;

a transport layer security null cipher connection that is based on the user identifier and the security credentials; or

a transport layer security cipher connection that is based on the user identifier and the security credentials.

6. The method of claim 1 wherein the plurality of connection security levels includes one of:

a first level with no tampering protection and with no eavesdropping protection;

a second level with the tampering protection and with the no eavesdropping protection; and

a third level with the tampering protection and with the eavesdropping protection.

7. The method of claim 1 wherein the plurality of connection security levels is determined for the subset of the plurality of dispersed storage units further based on security capabilities of the subset of the plurality of dispersed storage units.

8. A dispersed storage (DS) processing unit for use in a dispersed storage network (DSN) comprises:

an interface;

memory; and

a processing module operably coupled to the interface and the memory, wherein the processing module is operable to perform operations including:

receiving, via the interface, an access request corresponding to a data segment of a data object stored in the DSN, wherein the data segment is dispersed storage error encoded into a set of encoded data slices, wherein a decode threshold number of encoded data slices of the set of encoded data slices is required to decode the data segment, wherein the decoded threshold number is greater than one, and wherein the set of encoded data slices is stored or is to be stored in a plurality of dispersed storage units of the DSN;

determining connection security requirements corresponding to the access request;

determining a subset of the plurality of dispersed storage units based on the connection security requirements, wherein the subset includes at least the decode threshold number of dispersed storage units of the plurality of dispersed storage units;

determining, based on the connection security requirements, a connection security level for communicating with the subset of the plurality of dispersed storage units regarding the access request, wherein determining the connection security level includes determining a corresponding one of a plurality of connection security levels for each of the subset of the plurality of dispersed storage units based on a corresponding proximity of each of the subset of the plurality of dispersed storage units from the one or more computing devices; and

communicating, via the interface, respective portions of the access request to each of the subset of the plurality of dispersed storage units in accordance with the corresponding one of the plurality of connection security levels.

9. The DS processing unit of claim 8 wherein one of the plurality of connection security levels includes a first key employed for one of the subset of the plurality of dispersed storage units.

10. The DS processing unit of claim 9 wherein another one of the plurality of connection security levels includes a second key employed for another one of the subset of the plurality of dispersed storage units.

11. The DS processing unit of claim 8 wherein the plurality of connection security levels includes a first cipher employed for one of the subset of the plurality of dispersed storage units and a second cipher employed for another of the subset of the plurality of dispersed storage units.

12. The DS processing unit of claim 8 wherein the plurality of connection security levels includes at least one of:

a transmission control protocol connection that is based on a user identifier and security credentials;

a transport layer security null cipher connection that is based on the user identifier and the security credentials; or

a transport layer security cipher connection that is based on the user identifier and the security credentials.

13. The DS processing unit of claim 8 wherein the plurality of connection security levels includes one of:

a first level with no tampering protection and with no eavesdropping protection;

a second level with the tampering protection and with the no eavesdropping protection; and

a third level with the tampering protection and with the eavesdropping protection.

14. The DS processing unit of claim 8 wherein the plurality of connection security levels is determined for the subset of the plurality of dispersed storage units further based on security capabilities of the subset of the plurality of dispersed storage units.

15. A non-transitory computer readable storage medium comprises:

at least one memory section that stores operational instructions that, when executed by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), causes the one or more computing devices to perform operations including:

receiving an access request corresponding to a data segment of a data object stored in the DSN, wherein the data segment is dispersed storage error encoded into a set of encoded data slices, wherein a decode threshold number of encoded data slices of the set of encoded data slices is required to decode the data segment, wherein the decoded threshold number is greater than one, and wherein the set of encoded data slices is stored or is to be stored in a plurality of dispersed storage units of the DSN;

determining connection security requirements corresponding to the access request;

determining a subset of the plurality of dispersed storage units based on the connection security requirements, wherein the subset includes at least the decode threshold number of dispersed storage units of the plurality of dispersed storage units;

determining, based on the connection security requirements, a connection security level for communicating with the subset of the plurality of dispersed storage units regarding the access request, wherein determining the connection security level includes determining a corresponding one of a plurality of connection security levels for each of the subset of the plurality of dispersed storage units based on a corresponding proximity of each of the subset of the plurality of dispersed storage units from the one or more computing devices; and

communicating respective portions of the access request to each of the subset of the plurality of dispersed storage units in accordance with the corresponding one of the plurality of connection security levels.

16. The non-transitory computer readable storage medium of claim 15 wherein one of the plurality of connection security levels includes a first key employed for one of the subset of the plurality of dispersed storage units.

17. The non-transitory computer readable storage medium of claim 16 wherein another one of the plurality of connection security levels includes a second key employed for another one of the subset of the plurality of dispersed storage units.

18. The non-transitory computer readable storage medium of claim 15 wherein the plurality of connection security levels includes a first cipher employed for one of the subset of the plurality of dispersed storage units and a second cipher employed for another of the subset of the plurality of dispersed storage units.

19. The non-transitory computer readable storage medium of claim 15 wherein the plurality of connection security levels includes at least one of:

a transmission control protocol connection that is based on a user identifier and security credentials;

a transport layer security null cipher connection that is based on the user identifier and the security credentials; or

a transport layer security cipher connection that is based on the user identifier and the security credentials.

20. The non-transitory computer readable storage medium of claim 15 wherein the plurality of connection security levels includes one of:

a first level with no tampering protection and with no eavesdropping protection;

a second level with the tampering protection and with the no eavesdropping protection; and

a third level with the tampering protection and with the eavesdropping protection.

Assignments (6)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 11, 2025
From: BARCLAYS BANK PLC, AS ADMINISTRATIVE AGENT
To: PURE STORAGE, INC.
Reel/Frame 071558/0523 →
SECURITY INTEREST Recorded Aug 26, 2020
From: PURE STORAGE, INC.
To: BARCLAYS BANK PLC AS ADMINISTRATIVE AGENT
Reel/Frame 053867/0581 →
CORRECTIVE ASSIGNMENT TO CORRECT THE DELETE 15/174/279 AND 15/174/596 PROPERTY NUMBERS PREVIOUSLY RECORDED AT REEL: 49555 FRAME: 530. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 7, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 051495/0831 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 049555/0530 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2018
From: RESCH, JASON K.; LEGGETTE, WESLEY
To: CLEVERSAFE, INC.
Reel/Frame 047462/0963 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2018
From: CLEVERSAFE, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 048101/0208 →