IP Library Granted Patent US 10,756,888
Granted Patent B2
US 10,756,888 · App. 15/817,719 · Granted Aug 25, 2020

Managing key encryption keys using a key wrapping tree

Inventor: Seungyeop Han (Sunnyvale, CA)
Assignee: Rubrik, Inc.
H04L9/0836G06F3/0652G06F9/45558G06F16/128G06F16/188G06F21/6209H04L9/0822H04L9/0897G06F2201/84
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,756,888
App. No.
15/817,719
Granted
Aug 25, 2020
Kind
B2
Abstract

Methods and systems for securely deleting electronic files and other data stored within a data storage system are described. Each file or separately deletable portion of data stored within the data storage system may be encrypted using a distinct data encryption key. When the file is selected for deletion, both the file and the corresponding data encryption key may be deleted. The data encryption key used for encrypting the file may be encrypted using a key encryption key. If the file and the corresponding data encryption key are both stored using an SSD, then the key encryption key may be stored using a HDD. The ability to physically delete or directly overwrite the key encryption key stored within the HDD may ensure that the file and the data encryption key stored using the SSD are no longer cryptographically recoverable.

Claims (70)

1. A method for operating a data management system, comprising:

identifying an electronic file to be deleted from a solid-state drive;

identifying a first data encryption key used to wrap the electronic file stored using the solid-state drive;

identifying a first key encryption key used to wrap the first data encryption key;

acquiring the first key encryption key from a hard disk drive;

acquiring a second key encryption key;

unwrapping a second data encryption key used to wrap a second electronic file stored using the solid-state drive using the first key encryption key;

wrapping the second data encryption key using the second key encryption key;

deleting the first key encryption key from the hard disk drive;

deleting the first data encryption key; and

deleting the electronic file from the solid-state drive.

2. The method of claim 1 , wherein:

the unwrapping the second data encryption key includes decrypting the second data encryption key that encrypted the second electronic file using the first key encryption key; and

the wrapping the second data encryption key includes encrypting the second data encryption key using the second key encryption key.

3. The method of claim 2 , wherein:

the deleting the first key encryption key from the hard disk drive includes overwriting the first key encryption key with the second key encryption key.

4. The method of claim 2 , further comprising:

identifying a set of files to be stored using the solid-state drive;

detecting that a new key encryption key should be generated;

generating the new key encryption key; and

storing the new key encryption key using the hard disk drive.

5. The method of claim 4 , further comprising:

generating a second data encryption key;

encrypting the set of files using the second data encryption key;

encrypting the second data encryption key using the new key encryption key;

storing the encrypted set of files using the solid-state drive; and

storing the encrypted second data encryption key using the solid-state drive.

6. The method of claim 4 , wherein:

the detecting that the new key encryption key should be generated includes detecting that the second key encryption key supports a threshold number of data encryption keys.

7. The method of claim 4 , wherein:

the detecting that the new key encryption key should be generated includes detecting that each of the key encryption keys within a key wrapping tree structure supports at least a threshold number of data encryption keys.

8. The method of claim 2 , further comprising:

storing the second key encryption key using the hard disk drive prior to deleting the first key encryption key from the hard disk drive.

9. The method of claim 2 , wherein:

the encrypting the second data encryption key includes encrypting the second data encryption key using a symmetric-key algorithm.

10. The method of claim 2 , wherein:

the second electronic file and the electronic file comprise files in a shared folder.

11. The method of claim 2 , wherein:

the second electronic file and the electronic file comprise snapshot files of a virtual machine.

12. A data management system, comprising:

a memory configured to store a second key encryption key; and

one or more processors configured to identify an electronic file to be deleted from a first drive and identify a first data encryption key used to encrypt the electronic file stored using the first drive, the one or more processors configured to identify a first key encryption key used to encrypt the first data encryption key and acquire the first key encryption key from a hard disk drive, the one or more processors configured to decrypt a second data encryption key used to encrypt a second electronic file stored using the first drive using the first key encryption key and encrypt the second data encryption key using the second key encryption key, the one or more processors configured to delete the first key encryption key from the hard disk drive and delete the electronic file from the first drive.

13. The data management system of claim 12 , wherein:

the first drive comprises one of a first solid-state drive or a first hard disk drive; and

the one or more processors configured to overwrite the first key encryption key with the second key encryption key.

14. The data management system of claim 12 , wherein:

the first drive comprises a solid-state drive; and

the one or more processors configured to identify a set of files to be stored using the solid-state drive and generate a new key encryption key, the one or more processors configured to generate a second data encryption key and encrypt the set of files using the second data encryption key, the one or more processors configured to encrypt the second data encryption key using the new key encryption key and store the encrypted second data encryption key using the solid-state drive.

15. The data management system of claim 14 , wherein:

the one or more processors configured to generate the new key encryption key in response to detection that the second key encryption key supports a threshold number of data encryption keys.

16. The data management system of claim 14 , wherein:

the one or more processors configured to generate the new key encryption key in response to detection that each of the key encryption keys within a key wrapping tree structure supports at least a threshold number of data encryption keys.

17. The data management system of claim 12 , wherein:

the one or more processors configured to encrypt the second data encryption key via application of a symmetric encryption algorithm.

18. The data management system of claim 12 , wherein:

the second electronic file and the electronic file both comprise electronic files in a shared file folder.

19. The data management system of claim 12 , wherein:

the second electronic file and the electronic file comprise reverse incremental files associated with different point in time versions of a virtual machine.

20. A non-transitory machine-readable medium comprising instructions which, when read by a machine, because the machine to perform operations in a method for operating a data management system, the operations comprising, at least:

identify an electronic file to be deleted from a solid-state drive;

identify a first data encryption key used to encrypt the electronic file stored using the solid-state drive;

identify a first key encryption key used to encrypt the first data encryption key;

acquire the first key encryption key from a hard disk drive;

generate a second key encryption key;

decrypt a second data encryption key used to encrypt a second electronic file stored using the solid-state drive using the first key encryption key;

encrypt the second data encryption key using the second key encryption key;

store the second key encryption key using the hard disk drive;

delete the first key encryption key from the hard disk drive;

delete the first data encryption key from the solid-state drive; and

delete the electronic file from the solid-state drive.

Assignments (3)
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 60333/0323 Recorded Jun 13, 2025
From: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT
To: RUBRIK, INC.
Reel/Frame 071565/0602 →
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 10, 2022
From: RUBRIK, INC.
To: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT
Reel/Frame 060333/0323 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 20, 2017
From: HAN, SEUNGYEOP
To: RUBRIK, INC.
Reel/Frame 044750/0987 →
Continuity (1)
Related Publication 20190158281A1 · May 23, 2019
Cited By (16)
US 12,197,790 US 12,306,801 US 12,306,802 US 12,306,804 US 12,309,271 US 12,341,887 US 12,368,588 US 12,445,283 US 12,455,861 US 12,487,972 US 12,530,262 US 12,572,513 US 12,579,109 US 12,608,401 US 12,693,993 US 12,717,755