Authenticated and encrypted archives
AssigneeApple Inc.
InventorsFrederic Jacobs, Eric Bainville, Yannick L. Sierra
Life of this patent
Estimating the term…
Abstract
Embodiments described herein provide a compressed container format that enables the container to be decrypted and decompressed in a streaming manner. One embodiment provides a container format for encrypted archives in which data is compressed and encrypted in a segmented manner. A segment of the archive can be decompressed, decrypted, and checked for integrity before the entire archive is received. Metadata for the encrypted archive is also encrypted to secure details of data stored within the archive.
Claims20
A method comprising:
- on a computing device having one or more processors:
- receiving a request to access data at a specified location within an archive, wherein the archive includes a signed and compressed container that is encrypted via authenticated encryption;
- retrieving stored cryptographic material used to unlock and authenticate the container;
- deriving a multi-level key hierarchy from the stored cryptographic material;
- and
- decrypting, decompressing, and authenticating data at the specified location within the archive without decrypting, decompressing, or authenticating the entire container.
A non-transitory machine-readable medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations comprising:
- receiving a request to access data at a specified location within an archive, wherein the archive includes a signed and compressed container that is encrypted via authenticated encryption;
- retrieving stored cryptographic material used to unlock and authenticate the container;
- deriving a multi-level key hierarchy from the stored cryptographic material;
- and
- decrypting, decompressing, and authenticating data at the specified location within the archive without decrypting, decompressing, or authenticating the entire container.
A data processing system comprising:
- a memory to store instructions;
- and
- one or more processors to execute instructions stored in memory, wherein the instructions cause the one or more processors to perform operations comprising:
- receiving a request to access data at a specified location within an archive, wherein the archive includes a signed and compressed container that is encrypted via authenticated encryption;
- retrieving stored cryptographic material used to unlock and authenticate the container;
- deriving a multi-level key hierarchy from the stored cryptographic material;
- and
- decrypting, decompressing, and authenticating data at the specified location within the archive without decrypting, decompressing or authenticating, the entire container.
Dependencies are inferred from the claim text.