Efficient use of keystreams
AssigneeAmazon Technologies, Inc.
InventorMatthew John Campagna
Life of this patent
Estimating the term…
Abstract
Performing cryptographic operations such as encryption and decryption may be computationally expensive. In some contexts, initialization vectors and keystreams operable to perform encryption operations are generated and stored in a repository, and later retrieved for use in performing encryption operations. Multiple devices in a distributed system can each generate and store a subset of a larger set of keystreams.
Claims20
A system comprising memory to store instructions that, as a result of execution by one or more processors, cause the system to:
- provide a key to a plurality of devices;
- cause the plurality of devices to collectively generate a set of keystreams using the key and a plurality of initialization vectors, a first portion of the plurality of initialization vectors being reserved for use by a first device of the plurality of devices and a second portion of the plurality of initialization vectors being reserved for use by a second device of the plurality of devices;
- identify a keystream of the set of keystreams that is unused for performance of cryptographic operations;
- and
- cause the keystream to be used to perform a cryptographic operation.
A computer-implemented method, comprising:
- providing a key to a plurality of devices;
- causing the plurality of devices to collectively generate a set of keystreams using the key and a plurality of initialization vectors, a first portion of the plurality of initialization vectors being reserved for use by a first device of the plurality of devices and a second portion of the plurality of initialization vectors being reserved for use by a second device of the plurality of devices;
- identifying a keystream of the set of keystreams that is unused for performance of cryptographic operations;
- and
- causing the keystream to be used to perform a cryptographic operation.
A non-transitory computer-readable storage medium comprising executable instructions that, if executed by one or more processors of a computer system, cause the computer system to at least:
- provide a key to a plurality of devices;
- cause the plurality of devices to collectively generate a set of keystreams using the key and a plurality of initialization vectors, a first portion of the plurality of initialization vectors being reserved for use by a first device of the plurality of devices and a second portion of the plurality of initialization vectors being reserved for use by a second device of the plurality of devices;
- and
- cause a keystream of the set of keystreams that is unused for performance of cryptographic operations to be used to perform a cryptographic operation.
Dependencies are inferred from the claim text.