IP Library Granted Patent US 9,641,490
Granted Patent B2
US 9,641,490 · App. 14/988,477 · Granted May 2, 2017

Trusted storage systems and methods

Inventors: Umesh Maheshwari (San Jose, CA); Radek Vingralek (Belmont, CA); W. Olin Sibert (Lexington, MA)
Assignee: Intertrust Technologies Corporation
H04L63/0428G06F21/6218G06F21/80G06F21/805H04L9/0643G06F2211/007
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 9,641,490
App. No.
14/988,477
Granted
May 2, 2017
Kind
B2
Abstract

Systems and methods are disclosed for providing a trusted database system that leverages a small amount of trusted storage to secure a larger amount of untrusted storage. Data are encrypted and validated to prevent unauthorized modification or access. Encryption and hashing are integrated with a low-level data model in which data and meta-data are secured uniformly. Synergies between data validation and log-structured storage are exploited.

Claims (48)

1. A method performed by a system comprising a processor and a non-transitory computer-readable storage medium storing instructions that, when executed by the processor, cause the processor to perform the method, the method comprising:

encrypting a first block of data with a first cryptographic key to generate a first encrypted block of data, the first block of data comprising a second cryptographic key;

encrypting a second block of data with the second cryptographic key to generate a second encrypted block of data, the second block of data comprising a third cryptographic key,

storing the first encrypted block of data and the second encrypted block of data on a non-volatile storage medium;

generating an index comprising the first cryptographic key and a first link associating the first encrypted block of data with the second encrypted block of data; and

storing the index in a secure storage medium.

2. The method of claim 1 , further comprising receiving the first block of data and the second block of data for storage on the non-volatile storage medium.

3. The method of claim 1 , further comprising:

retrieving the first cryptographic key from the index;

retrieving the first encrypted block of data from the non-volatile storage medium; and

decrypting the first encrypted block of data using the first cryptographic key.

4. The method of claim 3 , further comprising:

retrieving the second cryptographic key from the decrypted first block of data, and

retrieving the first link associating the first encrypted block of data with the second encrypted block of data from the index; and

decrypting the second encrypted block of data using the second cryptographic key based on the first link.

5. The method of claim 1 , wherein the first encrypted block of data and the second encrypted block of data are stored on the non-volatile storage medium in a log structured file.

6. The method of claim 1 , wherein the index further comprises a hierarchical location map comprising information for locating the first encrypted block of data and the second encrypted block of data on the non-volatile storage medium.

7. The method of claim 6 , wherein the hierarchical location map comprises one or more nodes, a first node of the one or more nodes comprising a first cryptographic hash of the first block of data and an indicator specifying a location of the first encrypted block of data on the non-volatile storage medium.

8. The method of claim 1 , wherein the method further comprises:

encrypting a third block of data with the third cryptographic key to generate a third encrypted block of data, the third block of data comprising a fourth cryptographic key; and

storing the third encrypted block of data on the non-volatile storage medium;

wherein the index further comprises a second link associating the second encrypted block of data with the third encrypted block of data.

9. The method of claim 1 , wherein the non-transitory computer-readable storage medium and the non-volatile storage medium comprise a single storage medium.

10. The method of claim 1 , wherein secure storage medium is associated with a protected processing environment of the system.

11. A non-transitory computer-readable storage medium storing executable instructions that, when executed by a processor of a system, cause the processor to perform a method comprising:

encrypting a first block of data with a first cryptographic key to generate a first encrypted block of data, the first block of data comprising a second cryptographic key;

encrypting a second block of data with the second cryptographic key to generate a second encrypted block of data, the second block of data comprising a third cryptographic key,

storing the first encrypted block of data and the second encrypted block of data on a non-volatile storage medium;

generating an index comprising the first cryptographic key and a first link associating the first encrypted block of data with the second encrypted block of data; and

storing the index in a secure storage medium.

12. The non-transitory computer-readable storage medium of claim 11 , further comprising receiving the first block of data and the second block of data for storage on the non-volatile storage medium.

13. The non-transitory computer-readable storage medium of claim 11 , further comprising:

retrieving the first cryptographic key from the index;

retrieving the first encrypted block of data from the non-volatile storage medium; and

decrypting the first encrypted block of data using the first cryptographic key.

14. The non-transitory computer-readable storage medium of claim 13 , further comprising:

retrieving the second cryptographic key from the decrypted first block of data, and

retrieving the first link associating the first encrypted block of data with the second encrypted block of data from the index; and

decrypting the second encrypted block of data using the second cryptographic key based on the first link.

15. The non-transitory computer-readable storage medium of claim 11 , wherein the first encrypted block of data and the second encrypted block of data are stored on the non-volatile storage medium in a log structured file.

16. The non-transitory computer-readable storage medium of claim 11 , wherein the index further comprises a hierarchical location map comprising information for locating the first encrypted block of data and the second encrypted block of data on the non-volatile storage medium.

17. The non-transitory computer-readable storage medium of claim 16 , wherein the hierarchical location map comprises one or more nodes, a first node of the one or more nodes comprising a first cryptographic hash of the first block of data and an indicator specifying a location of the first encrypted block of data on the non-volatile storage medium.

18. The non-transitory computer-readable storage medium of claim 11 , wherein the method further comprises:

encrypting a third block of data with the third cryptographic key to generate a third encrypted block of data, the third block of data comprising a fourth cryptographic key; and

storing the third encrypted block of data on the non-volatile storage medium;

wherein the index further comprises a second link associating the second encrypted block of data with the third encrypted block of data.

19. The non-transitory computer-readable storage medium of claim 11 , wherein the non-transitory computer-readable storage medium and the non-volatile storage medium comprise a single storage medium.

20. The non-transitory computer-readable storage medium of claim 11 , wherein secure storage medium is associated with a protected processing environment of the system.

Assignments (2)
RELEASE OF SECURITY INTEREST Recorded Feb 14, 2023
From: ORIGIN FUTURE ENERGY PTY LTD.
To: INTERTRUST TECHNOLOGIES CORPORATION
Reel/Frame 062747/0742 →
SECURITY INTEREST Recorded Mar 18, 2020
From: INTERTRUST TECHNOLOGIES CORPORATION
To: ORIGIN FUTURE ENERGY PTY LTD
Reel/Frame 052189/0343 →
Continuity (8)
Continuation 14532401 · Nov 4, 2014
Continuation 13914556 · Jun 10, 2013
Continuation 13531322 · Jun 22, 2012
Continuation 12785343 · May 21, 2010
Continuation 11340326 · Jan 25, 2006
Continuation 09617148 · Jul 17, 2000
Provisional Application 60144378 · Jul 16, 1999
Related Publication 20160234173A1 · Aug 11, 2016