IP Library Patent Application 18915761
Patent Application
App. No. 18/915,761

Encryption of Encoded Data in a Storage Network

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 None
App. No.
18/915,761
Abstract

A storage network operates by: receiving a encoded data slice for storage by the storage network, wherein the encoded data slice is associated with a vault; generating a encryption key corresponding to the encoded data slice associated with the vault; utilizing the encryption key to generate a encrypted data slice and that corresponds to, and is based on, the encoded data slice; storing the encrypted data slice in a storage unit of the storage network; receiving a request to retrieve the encoded data slice; retrieving the encrypted data slice corresponding to the encoded data slice from the storage unit of the storage network; generating a decryption key corresponding to the encoded data slice, wherein the decryption key is different from the encryption key; and regenerating the encoded data slice using the decryption key.

Claims (70)

1 . A method for execution by a processing system of a storage network that includes a processor, the method comprising:

receiving a first encoded data slice for storage by the storage network, wherein the first encoded data slice is associated with a first vault;

generating a first encryption key corresponding to the first encoded data slice associated with the first vault;

utilizing the first encryption key to generate a first encrypted data slice and that corresponds) to, and is based on, the first encoded data slice;

storing the first encrypted data slice in a first storage unit of the storage network;

receiving a request to retrieve the first encoded data slice;

retrieving the first encrypted data slice corresponding to the first encoded data slice from the first storage unit of the storage network;

generating a first decryption key corresponding to the first encoded data slice, wherein the first decryption key is different from the first encryption key; and

regenerating the first encoded data slice using the first decryption key.

2 . The method of claim 1 , further comprising:

receiving a second encoded data slice for storage by the storage network, wherein the second encoded data slice is associated with a second vault;

generating a second encryption key corresponding the second encoded data slice associated with the second vault;

generating a second encrypted data slice using the second encryption key; and

storing the second encrypted data slice in a second storage unit of the storage network.

3 . The method of claim 2 , further comprising:

receiving a third encoded data slice for storage by the storage network, wherein the third encoded data slice is associated with the first vault;

generating a third encrypted data slice by utilizing the first encryption key; and

storing the third encrypted data slice in the first storage unit of the storage network.

4 . The method of claim 2 , wherein the first encryption key is generated by performing a deterministic function on a first vault identifier.

5 . The method of claim 4 , wherein the first encryption key is generated by performing the deterministic function further on a slice identifier of the first encoded data slice.

6 . The method of claim 4 , wherein the second encryption key is generated by performing the deterministic function on a second vault identifier.

7 . The method of claim 1 , further comprising:

re-encrypting the first encoded data slice with a new encryption key in response to a transfer of the first encoded data slice from the first storage unit to another storage unit.

8 . A processing system of a storage network comprises:

an interface; and

processing circuitry, coupled to the interface, configured by operational instructions to perform operations that include:

receiving a first encoded data slice for storage by the storage network, wherein the first encoded data slice is associated with a first vault;

generating a first encryption key corresponding to the first encoded data slice associated with the first vault;

utilizing the first encryption key to generate a first encrypted data slice and that corresponds to, and is based on, the first encoded data slice;

storing the first encrypted data slice in a first storage unit of the storage network;

receiving a request to retrieve the first encoded data slice;

retrieving the first encrypted data slice corresponding to the first encoded data slice from the first storage unit of the storage network;

generating a first decryption key corresponding to the first encoded data slice, wherein the first decryption key is different from the first encryption key; and

regenerating the first encoded data slice using the first decryption key.

9 . The processing system of claim 8 , wherein the operations further include:

receiving a second encoded data slice for storage by the storage network, wherein the second encoded data slice is associated with a second vault;

generating a second encryption key corresponding the second encoded data associated with the second vault;

generating a second encrypted data slice using the second encryption key; and

storing the second encrypted data slice in a second storage unit of the storage network.

10 . The processing system of claim 9 , wherein the operations further include:

receiving a third encoded data slice for storage by the storage network, wherein the third encoded data slice is associated with the first vault;

generating a third encrypted data slice by utilizing the first encryption key; and

storing the third encrypted data slice in the first storage unit of the storage network.

11 . The processing system of claim 9 , wherein the first encryption key is generated by performing a deterministic function on a first vault identifier.

12 . The processing system of claim 11 , wherein the first encryption key is generated by performing the deterministic function further on a slice identifier of the first encoded data slice.

13 . The processing system of claim 11 , wherein the second encryption key is generated by performing the deterministic function on a second vault identifier.

14 . The processing system of claim 8 , wherein the operations further include:

re-encrypting the first encoded data slice with a new encryption key in response to a transfer of the first encoded data slice from the first storage unit to another storage unit.

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

at least one memory that stores operational instructions that, when executed by a processing system of a storage network having a processor, causes the processing system to perform operations including:

receiving a first encoded data slice for storage by the storage network, wherein the first encoded data slice is associated with a first vault;

generating a first encryption key corresponding to the first encoded data slice associated with the first vault;

utilizing the first encryption key to generate a first encrypted data slice and that corresponds to and is based on the first encoded data slice;

storing the first encrypted data slice in a first storage unit of the storage network;

receiving a request to retrieve the first encoded data slice;

retrieving the first encrypted data slice corresponding to the first encoded data slice from the first storage unit of the storage network;

generating a first decryption key corresponding to the first encoded data slice, wherein the first decryption key is different from the first encryption key; and

regenerating the first encoded data slice using the first decryption key.

16 . The non-transitory computer readable storage medium of claim 15 , wherein the operations further include:

receiving a second encoded data slice for storage by the storage network, wherein the second encoded data slice is associated with a second vault;

generating a second encryption key corresponding the second encoded data slice associated with the second vault;

generating a second encrypted data slice using the second encryption key; and

storing the second encrypted data slice in a second storage unit of the storage network.

17 . The non-transitory computer readable storage medium of claim 16 , wherein the operations further include:

receiving a third encoded data slice for storage by the storage network, wherein the third encoded data slice is associated with the first vault;

generating a third encrypted data slice by utilizing the first encryption key; and

storing the third encrypted data slice in the first storage unit of the storage network.

18 . The non-transitory computer readable storage medium of claim 16 , wherein the first encryption key is generated by performing a deterministic function on a first vault identifier.

19 . The non-transitory computer readable storage medium of claim 18 , wherein the first encryption key is generated by performing the deterministic function further on a slice identifier of the first encoded data slice.

20 . The non-transitory computer readable storage medium of claim 18 , wherein the second encryption key is generated by performing the deterministic function on a second vault identifier.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2024
From: HORAN, SCOTT M.; LEGGETTE, WESLEY B.; RESCH, JASON K.
To: PURE STORAGE, INC.
Reel/Frame 068911/0472 →