IP Library Granted Patent US 12,170,717
Granted Patent B2
US 12,170,717 · App. 18/366,861 · Granted Dec 17, 2024

Managing brute force attacks in a distributed storage system

Inventors: Jason K. Resch (Warwick, RI); 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/535
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 12,170,717
App. No.
18/366,861
Granted
Dec 17, 2024
Kind
B2
Abstract

A method for execution in a storage network begins by performing a key derivation function on a password to produce a key and issuing a set of passwords based on the key to a set of storage units, where a data object is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices and the set of encoded data slices are stored in the set of storage units. The method continues, by receiving at least a decode threshold number of confidential information responses from the set of storage units and regenerating a set of keys for the confidential information responses. The method then continues by decrypting the confidential information responses 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.

Claims (44)

1. A method for execution in a storage network, the method comprises:

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

issuing a set of second passwords based on the key to a set of storage units, wherein a data object is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices and wherein the set of encoded data slices are stored in the set of storage units;

receiving a decode threshold number of confidential information responses from the set of storage units;

regenerating a set of keys for the decode threshold number of confidential information responses;

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

dispersed storage error decoding the set of encoded data slices to produce recovered data.

2. The method of claim 1 , wherein a confidential information response of the decode threshold number of confidential information responses includes an associated pass key.

3. The method of claim 2 , wherein the regenerating is based on the associated pass key.

4. The method of claim 1 , wherein at least some passwords of the set of second passwords are blinded passwords.

5. The method of claim 4 , wherein the blinded passwords are generated using a password generator.

6. The method of claim 5 , wherein a confidential information response is generated based on a blinded password.

7. The method of claim 1 wherein the decrypting the confidential information responses further comprises:

decrypting an encrypted data slice 1 using a first key 1 to produce an encoded data slice 1 of the set of encoded data slices.

8. The method of claim 1 , wherein the key derivation function is adapted to require a minimum iteration count for generating the key.

9. 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 to produce a key;

issue a set of passwords based on the key to a set of storage units, wherein a data object is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices and wherein the set of encoded data slices are stored in the set of storage units;

receive a decode threshold number of confidential information responses from the set of storage units;

regenerate a set of keys for the decode threshold number of confidential information responses;

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

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

10. The computing device of claim 9 , wherein a confidential information response of the decode threshold number of confidential information responses includes an associated pass key.

11. The computing device of claim 10 , wherein the set of keys for the decode threshold number of confidential information responses are regenerated based on the associated pass key.

12. The computing device of claim 9 , wherein at least some passwords of the set of passwords are blinded passwords.

13. The computing device of claim 12 , wherein the blinded passwords are generated using a password generator.

14. The computing device of claim 13 , wherein a confidential information response is generated based on a blinded password.

15. The computing device of claim 9 , wherein the processing module further functions to:

decrypt the confidential information responses by decrypting an encrypted data slice 1 using a first key 1 to produce an encoded data slice 1 of the set of encoded data slices.

16. The computing device of claim 9 , wherein the key derivation function is adapted to require a minimum iteration count for generating the key.

17. A method for execution in a storage network, the method comprises:

determining whether an iteration count threshold has been exceeded for generating a key;

in response to a determination that the iteration count threshold has been exceeded, performing a key derivation function on a first password to produce a key;

issuing a read threshold number of second passwords based on the key to a set of storage units, wherein a data object is dispersed error encoded in accordance with dispersed error encoding parameters to produce a set of encoded data slices and wherein the set of encoded data slices are stored in the set of storage units, wherein a read threshold number is number of encoded data slices per set to be read from storage for decoding a portion of the data object;

receiving a decode threshold number of confidential information responses from the set of storage units, wherein a confidential information response of the decode threshold number of confidential information responses includes an encrypted encoded data slice and an associated passkey;

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

decrypting the confidential information responses 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.

18. The method of claim 17 , wherein at least some passwords of the set of second passwords are blinded passwords.

19. The method of claim 18 , wherein the blinded passwords are generated using a password generator.

20. The method of claim 18 , wherein a confidential information response is generated based on a blinded password.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2023
From: RESCH, JASON K.; DHUSE, GREG R.; CILFONE, BART R.
To: PURE STORAGE, INC.
Reel/Frame 064524/0011 →
Continuity (7)
Continuation 17663566 · May 16, 2022
Continuation In Part 16855395 · Apr 22, 2020
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
Related Publication 20230388101A1 · Nov 30, 2023