IP Library › Granted Patent US 11,146,396
Granted Patent B1
US 11,146,396 · App. 16/701,852 · Granted Oct 12, 2021

Data re-encryption in a storage system

Inventors: Andrew Bernat (Mountain View, CA); Ethan Miller (Santa Cruz, CA)
Assignee: Pure Storage, Inc.
H04L9/0891H04L9/0894
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,146,396
App. No.
16/701,852
Granted
Oct 12, 2021
Kind
B1
Abstract

Periodically re-encrypting user data stored on a storage device, including: detecting that a data encryption key should be decommissioned; and for user data stored on the storage device that is encrypted with the data encryption key: reading the user data that is encrypted with the data encryption key from the storage device; re-encrypting the user data utilizing a current data encryption key; and writing the user data that is encrypted utilizing the current data encryption key to the storage device.

Claims (47)

1. A method comprising:

detecting that a data encryption key should be decommissioned; and

determining, by a garbage collection process, that user data stored in a first location of a storage device is encrypted with the data encryption key:

reading the user data that is encrypted with the data encryption key from the first location of the storage device;

re-encrypting the user data utilizing a current data encryption key; and

writing the user data that is encrypted utilizing the current data encryption key to a second location of the storage device.

2. The method of claim 1 wherein:

the user data that is encrypted utilizing the data encryption key is stored at a first location of the storage device; and

the user data that is encrypted utilizing the current data encryption key is stored at a second location of the storage device.

3. The method of claim 2 further comprising reporting the first location of the storage device to a garbage collection process.

4. The method of claim 1 further comprising decrypting the user data that is encrypted with the data encryption key.

5. The method of claim 1 wherein detecting that the data encryption key should be decommissioned further comprises detecting that the data encryption key has been utilized for a predetermined period of time.

6. The method of claim 1 wherein detecting that the data encryption key should be decommissioned further comprises detecting that the data encryption key has been utilized to encrypt a predetermined amount of data.

7. The method of claim 1 wherein each data encryption key is encrypted with a key encryption key.

8. The method of claim 7 further comprising:

detecting that the key encryption key should be decommissioned; and

re-encrypting one or more data encryption keys with a new key encryption key.

9. A storage device that includes a computer processor and a computer memory, the computer memory including computer program instructions that, when executed by the computer processor, cause the storage device to carry out the steps of:

detecting that a data encryption key should be decommissioned; and

determining, by a garbage collection process, that user data stored in a first location of the storage device is encrypted with the data encryption key:

reading the user data that is encrypted with the data encryption key from the first location of the storage device;

re-encrypting the user data utilizing a current data encryption key; and

writing the user data that is encrypted utilizing the current data encryption key to a second location of the storage device.

10. The storage device of claim 9 wherein:

the user data that is encrypted utilizing the data encryption key is stored at a first location of the storage device; and

the user data that is encrypted utilizing the current data encryption key is stored at a second location of the storage device.

11. The storage device of claim 10 further comprising computer program instructions that, when executed by the computer processor, cause the storage device to carry out the step of reporting the first location of the storage device to a garbage collection process.

12. The storage device of claim 9 further comprising computer program instructions that, when executed by the computer processor, cause the storage device to carry out the steps of decrypting the user data that is encrypted with the data encryption key.

13. The storage device of claim 9 wherein each data encryption key is encrypted with a key encryption key.

14. The storage device of claim 9 further comprising computer program instructions that, when executed by the computer processor, cause the storage device to carry out the steps of:

detecting that the key encryption key should be decommissioned; and

re-encrypting one or more data encryption keys with a new key encryption key.

15. A storage system that includes a plurality of storage devices, the storage system including a computer processor and a computer memory, the computer memory including computer program instructions that, when executed by the computer processor, cause the computer processor to carry out the steps of:

detecting that a data encryption key should be decommissioned; and

determining, by a garbage collection process, that user data stored in a first location of the storage system is encrypted with the data encryption key:

reading the user data that is encrypted with the data encryption key from the first location of the storage system;

re-encrypting the user data utilizing a current data encryption key; and

writing the user data that is encrypted utilizing the current data encryption key to a second location of the storage system.

16. The storage system of claim 15 further comprising computer program instructions that, when executed by the computer processor, cause the computer processor to carry out the steps of:

the user data that is encrypted utilizing the data encryption key is stored at a first location in the storage system; and

the user data that is encrypted utilizing the current data encryption key is stored at a second location in the storage system.

17. The storage system of claim 15 further comprising computer program instructions that, when executed by the computer processor, cause the computer processor to carry out the step of reporting the first location to a garbage collection process.

18. The storage system of claim 15 further comprising computer program instructions that, when executed by the computer processor, cause the computer processor to carry out the step of decrypting the user data that is encrypted with the data encryption key.

19. The storage system of claim 15 wherein each data encryption key is encrypted with a key encryption key.

20. The storage system of claim 19 further comprising computer program instructions that, when executed by the computer processor, cause the computer processor to carry out the steps of:

detecting that the key encryption key should be decommissioned; and

re-encrypting one or more data encryption keys with a new key encryption key.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 3, 2019
From: BERNAT, ANDREW; MILLER, ETHAN
To: PURE STORAGE, INC.
Reel/Frame 051164/0031 →
Continuity (2)
Continuation 15402954 · Jan 10, 2017
Continuation 15399539 · Jan 5, 2017
Cited By (1)
US 12,282,436