IP Library Granted Patent US 10,891,400
Granted Patent B2
US 10,891,400 · App. 16/201,878 · Granted Jan 12, 2021

Secure data transmission utilizing distributed storage

Inventors: S. Christopher Gladwin (Chicago, IL); Thomas F. Shirley, Jr. (Wauwatosa, WI); Gary W. Grube (Barrington Hills, IL)
Assignee: PURE STORAGE, INC.
G06F21/85G06F3/067G06F3/0619G06F3/0647G06F11/1076G06F21/72G06F21/80H04L9/3242H04L67/1097H04N21/222H04N21/2347H04N21/8456H04W12/0013G06F11/1008G06F2211/1028G06F2221/2107H04L65/604H04W12/02
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,891,400
App. No.
16/201,878
Granted
Jan 12, 2021
Kind
B2
Abstract

A method includes dispersed storage error encoding, by a computing device of a dispersed storage network (DSN), a plurality of data segments to produce a plurality of sets of encoded data slices. The method further includes obfuscating a first set of encoded data slices of the plurality of sets of encoded data slices using a first obfuscating method to produce a first set of obfuscated encoded data slices. The method further includes obfuscating a second set of encoded data slices of the plurality of sets of encoded data slices using a second obfuscating method to produce a second set of obfuscated encoded data slices. The method further includes outputting the first and second sets of obfuscated encoded data slices for storage.

Claims (79)

1. A method comprises:

dispersed storage error encoding, by a computing device of a storage network, a plurality of data segments to produce a plurality of sets of encoded data slices;

obfuscating, by the computing device, a first set of encoded data slices of the plurality of sets of encoded data slices using a first obfuscating method to produce a first set of obfuscated encoded data slices;

obfuscating, by the computing device, a second set of encoded data slices of the plurality of sets of encoded data slices using a second obfuscating method to produce a second set of obfuscated encoded data slices; and

outputting, by the computing device, the first and second sets of obfuscated encoded data slices for storage.

2. The method of claim 1 further comprises:

outputting, by the computing device, a third set of encoded data slices of the plurality of sets of encoded data slices without obfuscation.

3. The method of claim 1 , wherein the first obfuscating method includes:

dispersed storage error encoding, by the computing device, auxiliary data to produce a plurality of sets of encoded auxiliary data slices; and

interspersing, by the computing device, a first set of encoded auxiliary data slices of the plurality of sets of encoded auxiliary data slices within the first set of encoded data slices to produce the first set of obfuscated encoded data slices.

4. The method of claim 3 , wherein the auxiliary data is encrypted via an all or nothing transformation.

5. The method of claim 3 , wherein the interspersing of the first set of encoded auxiliary data slices within the first set of encoded data slices is in accordance with a pseudo random output sequencing order.

6. The method of claim 3 , wherein the auxiliary data comprises one or more of:

null data;

authentication information;

a next pseudo random output sequencing order;

a pseudo random output sequencing order identifier;

a next outputting threshold;

a random number generator output;

an encryption key;

a starting point for the pseudo random output sequencing order;

a device identifier;

a data identifier;

a data type;

a data size indictor;

a priority indicator;

a security indicator; and

a performance indicator.

7. The method of claim 1 further comprises:

encrypting, by the computing device, a first data segment of the plurality of data segments to produce an encrypted first data segment; and

dispersed storage error encoding, by the computing device, the encrypted first data segment to produce the first set of encoded data slices.

8. The method of claim 7 , wherein the first data segment is encrypted via an all or nothing transformation to produce the encrypted first data segment.

9. The method of claim 1 , wherein the first obfuscating method further includes:

obfuscating, by the computing device, a first data segment of the plurality of data segments to create a first obfuscated data segment by one or more of:

adding, by the computing device, random bits to the first data segment to create a new first data segment;

inverting, by the computing device, one or more bits of the first data segment; and

replacing, by the computing device, one or more bits of the first data segment with bits produced from an obfuscation calculation, wherein the obfuscation calculation is based on a portion of the first data segment bits; and

dispersed storage error encoding, by the computing device, the first obfuscated data segment to produce the first set of encoded data slices.

10. A computing device of a storage network, the computing device comprises:

an interface;

memory; and

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

dispersed storage error encode a plurality of data segments to produce a plurality of sets of encoded data slices;

obfuscate a first set of encoded data slices of the plurality of sets of encoded data slices using a first obfuscating method to produce a first set of obfuscated encoded data slices;

obfuscate a second set of encoded data slices of the plurality of sets of encoded data slices using a second obfuscating method to produce a second set of obfuscated encoded data slices; and

output the first and second sets of obfuscated encoded data slices for storage.

11. The computing device of claim 10 , wherein the processing module is further operable to:

output a third set of encoded data slices of the plurality of sets of encoded data slices without obfuscation.

12. The computing device of claim 10 , wherein the first obfuscating method includes:

dispersed storage error encoding auxiliary data to produce a plurality of sets of encoded auxiliary data slices; and

interspersing a first set of encoded auxiliary data slices of the plurality of sets of encoded auxiliary data slices within the first set of encoded data slices to produce the first set of obfuscated encoded data slices.

13. The computing device of claim 12 , wherein the auxiliary data is encrypted via an all or nothing transformation.

14. The computing device of claim 12 , wherein the interspersing of the first set of encoded auxiliary data slices within the first set of encoded data slices is in accordance with a pseudo random output sequencing order.

15. The computing device of claim 12 , wherein the auxiliary data comprises one or more of:

null data;

authentication information;

a next pseudo random output sequencing order;

a pseudo random output sequencing order identifier;

a next outputting threshold;

a random number generator output;

an encryption key;

a starting point for the pseudo random output sequencing order;

a device identifier;

a data identifier;

a data type;

a data size indictor;

a priority indicator;

a security indicator; and

a performance indicator.

16. The computing device of claim 10 , wherein the processing module is further operable to:

encrypt a first data segment of the plurality of data segments to produce an encrypted first data segment; and

dispersed storage error encode the encrypted first data segment to produce the first set of encoded data slices.

17. The computing device of claim 16 , wherein the first data segment is encrypted via an all or nothing transformation to produce the encrypted first data segment.

18. The computing device of claim 10 , wherein the first obfuscating method further includes:

obfuscating a first data segment of the plurality of data segments to create a first obfuscated data segment by one or more of:

adding random bits to the first data segment to create a new first data segment;

inverting one or more bits of the first data segment; and

replacing one or more bits of the first data segment with bits produced from an obfuscation calculation, wherein the obfuscation calculation is based on a portion of the first data segment bits; and

dispersed storage error encoding the first obfuscated data segment to produce the first set of encoded data slices.

Assignments (5)
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 27, 2018
From: GLADWIN, S. CHRISTOPHER; SHIRLEY, THOMAS F., JR.; GRUBE, GARY W.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 047596/0719 →
Cited By (1)
US 12,675,366