IP Library Granted Patent US 11,336,428
Granted Patent B1
US 11,336,428 · App. 16/855,395 · Granted May 17, 2022

Blinded passwords for a distributed storage system

Inventors: Jason K. Resch (Chicago, IL); Greg R. Dhuse (Chicago, IL); Bart R. Cilfone (Marina del Rey, CA)
Assignee: PURE STORAGE, INC.
H04L9/002G06F21/31G06F21/602G06F21/6218H04L9/085H04L9/0863H04L9/0869H04L9/3226H04L63/04H04L63/06H04L67/1097H04L67/22
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,336,428
App. No.
16/855,395
Granted
May 17, 2022
Kind
B1
Abstract

A method for execution by one or more processing modules of one or more computing devices of a dispersed storage network (DSN), the method begins by performing a key derivation function on a password and issuing a set of blinded passwords to a set of storage units. The method continues by receiving at least a decode threshold number of confidential information responses, regenerating a set of keys using the associated passkeys of the confidential information, decrypting a set of encrypted slices of the confidential information using the set of keys to reproduce a set of encoded data slices, and dispersed storage error decoding a decode threshold number of the set of reproduced encoded data slices to produce recovered data.

Claims (45)

1. A method for execution by a storage network comprises:

performing a key derivation function on a password to produce a key;

generating a set of blinded passwords based on the key;

transmitting the set of blinded passwords to a set of storage units;

receiving at least a decode threshold number of confidential information responses, wherein each of the confidential information responses is based on at least one received blinded password;

regenerating a set of keys using the at least a decode threshold number of the confidential information responses;

decrypting a set of encrypted encoded data slices of the confidential information using the set of keys to reproduce a set of encoded data slices; and

dispersed storage error decoding a decode threshold number of the set of encoded data slices to produce recovered data.

2. The method of claim 1 , wherein the receiving at least a decode threshold number of confidential information responses includes each of the confidential information responses including an encrypted encoded data slice and an associated passkey.

3. The method of claim 2 , wherein the associated passkey includes at least a first passkey generated by a corresponding storage unit of the set of storage units in accordance with a formula of: passkey 1=bpass1={circumflex over ( )}e1 modulo p, where e1 is a recovered random number associated with the encrypted encoded data slice and a corresponding original random number.

4. The method of claim 1 , wherein the set of blinded passwords are generated based on a key and includes generating a first blinded password in accordance with a formula of: blinded password 1=[[MGF(KEY)]{circumflex over ( )}2]{circumflex over ( )}b1 modulo p, where b1 is a random number of a set of random numbers.

5. The method of claim 1 , wherein the regenerating a set of keys using passkeys of the confidential information includes generating a first key of the set of keys in accordance with a formula of key 1=passkey1{circumflex over ( )}v1 modulo p; where b1*v1=1 modulo q and where q=(p−1)/2.

6. The method of claim 1 further comprises decrypting an encrypted data slice 7 using the first key 1 to produce an encoded data slice 1 of the set of encoded data slices.

7. The method of claim 1 , wherein the key derivation function includes at least one algorithm requiring increased time or memory resources while attempting each of a plurality of candidate passwords.

8. A computing device of a group of computing devices of a storage network, the computing device comprises:

an interface;

a local memory; and

a processing module operably coupled to the interface and the local memory, wherein the processing module functions to:

perform a key derivation function on a password to produce a key;

generate a set of blinded passwords based on the key;

transmit the set of blinded passwords to a set of storage units;

receive at least a decode threshold number of confidential information responses, wherein each of the confidential information responses is based on at least one received blinded password;

regenerate a set of keys using the at least a decode threshold number of the confidential information responses;

decrypt a set of encrypted encoded data slices of the confidential information using the set of keys to reproduce a set of encoded data slices; and

disperse storage error decode a decode threshold number of the set of encoded data slices to produce recovered data.

9. The computing device of claim 8 , wherein the receive at least a decode threshold number of confidential information responses includes each of the confidential information responses including an encrypted encoded data slice and an associated passkey.

10. The computing device of claim 9 , wherein the associated passkey includes at least a first passkey generated by a corresponding storage unit of the set of storage units in accordance with a formula of: passkey 1=bpass1{circumflex over ( )}e1 modulo p, where e1 is a recovered random number associated with the encrypted encoded data slice and a corresponding original random number.

11. The computing device of claim 8 , wherein the set of blinded passwords are generated based on a key and includes generating a first blinded password in accordance with a formula of: blinded password 1=[[MGF(KEY)]{circumflex over ( )}2]{circumflex over ( )}b1 modulo p, where b1 is a random number of a set of random numbers.

12. The computing device of claim 8 , wherein the regenerate a set of keys using passkeys of the confidential information includes generating a first key of the set of keys in accordance with a formula of key 1=passkey1{circumflex over ( )}v1 modulo p; where b1*v1=1 modulo q and where q=(p−1)/2.

13. The computing device of claim 12 further comprises decrypting an encrypted data slice 1 using the first key 1 to produce an encoded data slice 1 of the set of encoded data slices.

14. The computing device of claim 8 , wherein the key derivation function includes at least one algorithm requiring increased time or memory resources while attempting each of a plurality of candidate passwords.

15. A distributed storage network (DSN) system comprises:

a plurality of DSN storage units;

a dispersed storage client module including:

an interface;

a local memory; and

a processing module operably coupled to the interface and the local memory, wherein the processing module functions to:

perform a key derivation function on a password to produce a key;

generate a set of blinded passwords based on the key;

transmit the set of blinded passwords to a set of storage units;

receive at least a decode threshold number of confidential information responses, wherein each of the confidential information responses is based on at least one received blinded password;

regenerate a set of keys using the at least a decode threshold number of the confidential information responses;

decrypt a set of encrypted encoded data slices of the confidential information using the set of keys to reproduce a set of encoded data slices; and

disperse storage error decode a decode threshold number of the set of encoded data slices to produce recovered data.

16. The distributed storage network (DSN) system of claim 15 , wherein the receive at least a decode threshold number of confidential information responses includes each of the confidential information responses including an encrypted encoded data slice and an associated passkey.

Assignments (4)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2020
From: RESCH, JASON K.; DHUSE, GREG R.; CILFONE, BART R.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 052473/0152 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2020
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: PURE STORAGE, INC.
Reel/Frame 052473/0193 →
Continuity (4)
Continuation 16053466 · Aug 2, 2018
Continuation In Part 15827073 · Nov 30, 2017
Continuation In Part 14721838 · May 26, 2015
Provisional Application 62031342 · Jul 31, 2014