Cryptographic entropy tree
AssigneeApple Inc.
InventorsKumar Saurav, Jerrold V. Hauck, Yannick L. Sierra, Charles E. Gray, Roberto G. Yepez, Samuel Gosselin, Petr Kostka, Wade Benson
Life of this patent
Estimating the term…
Abstract
A device may include a secure processor and a secure memory coupled to the secure processor. The secure memory may be inaccessible to other device systems. The secure processor may store some keys and/or entropy values in the secure memory and other keys and/or entropy values outside the secure memory. The keys and/or entropy values stored outside the secure memory may be encrypted using information stored inside the secure memory.
Claims21
1-28. (canceled)
A computing device, comprising:
- a main processor;
- memory accessible to the main process;
- and
- a secure processor coupled to secure memory inaccessible to the main processor, and wherein the secure processor is configured to:
- store, in the secure memory, a first cryptographic key that encrypts a plurality of entropy values stored in the accessible memory and usable to derive cryptographic keys encrypting data stored in the accessible memory;
- receive, from the main processor, a request for a second cryptographic key;
- in response to the request:
- request an encrypted one of the plurality of entropy values associated with the second cryptographic key;
- decrypt the encrypted entropy value with the first cryptographic key in the secure memory;
- and
- apply a key derivation function (KDF) to the decrypted entropy value to produce the second cryptographic key for decrypting data in the accessible memory.
A non-transitory computer readable medium having program instructions stored therein that are executable by a computing device to cause the computing device to perform operations comprising:
- accessing, by a first processor of the computing device, a file system that includes encrypted data and a plurality of encrypted entropy values usable to derive cryptographic keys encrypting the data;
- and
- sending, by the first processor, one of the plurality of encrypted entropy values to a second secure processor of the computing device, wherein the secure processor is configured to decrypt the encrypted entropy value with a first cryptographic key stored in secure memory inaccessible to the first processor, and wherein the secure processor is configured to apply a key derivation function (KDF) to the decrypted entropy value to produce a second cryptographic key for decrypting data in the file system.
A method, comprising:
- maintaining, by a computing device, a file system that includes encrypted data and a plurality of encrypted entropy values usable to derive cryptographic keys encrypting the data;
- sending, by a main processor of the computing device, an access request to a secure processor of the computing device;
- in response to the access request:
- using, by the secure processor, a first cryptographic key stored in secure memory to decrypt one of the plurality of entropy values, wherein the secure memory is inaccessible to the main processor;
- and
- applying, by the secure processor, a key derivation function to the decrypted entropy value to derive a second cryptographic key that encrypts data stored in the file system.
Dependencies are inferred from the claim text.