Nova Patents
US11372993B2

Automatic key rotation

Summary by NHIP

Automatic Key Rotation Method

The method manages cryptographic keys by generating new keys when a usage count or time interval exceeds a specified retirement threshold. It automatically replaces old keys across a subset of computing devices based on policies tied to operation counts and time intervals.

Claim Score by NHIP

Read claim 13, the broadest

Abstract

Requests submitted to a computer system are evaluated for compliance with policy to ensure data security. Plaintext and associated data are used as inputs into a cipher to produce ciphertext. Whether a result of decrypting the ciphertext can be provided in response to a request is determined based at least in part on evaluation of a policy that itself is based at least in part on the associated data. Other policies include automatic rotation of keys to prevent keys from being used in enough operations to enable cryptographic attacks intended to determine the keys.

US11372993B2, drawing sheet 1
Sheet 1 of 30

Term

6.4 yearsleft in the term

Expires 12 February 2033.

  1. Priority
  2. Filed
  3. Granted
  4. Today
  5. Expires

20 claims: 3 independent, 17 dependent

  1. 1
    A computer-implemented method, comprising:obtaining, at a cryptography service that manages cryptographic keys for a plurality of customers of a computing resource service provider, calls to an application programming interface provided by the cryptography service to perform cryptographic operations;obtaining, at the cryptography service, information including at least a request to generate a cryptographic key, a time to retire to be associated with the cryptographic key, and a policy to cause an old cryptographic key to be retired after a specified number of cryptographic operations;generating the cryptographic key and associating, for the cryptographic key, the time to retire with the cryptographic key;as a result of the policy being satisfied, causing, at the cryptography service, at least a subset of a plurality of computing devices associated with the cryptography service to replace the old cryptographic key with the cryptographic key and monitoring a time interval related to an amount of time the cryptographic key has been in use by at least the subset of the plurality of computing devices associated with the cryptography service;in response to the time interval exceeding the time to retire, generating a new cryptographic key at the cryptography service based, at least in part, on the request;associating, for the new cryptographic key, the time to retire with the new cryptographic key;and as a result of the time interval reaching a length greater than the time to retire, causing at least the subset of the plurality of computing devices associated with the cryptography service to replace the cryptographic key with the new cryptographic key.
  2. 6
    A computer system, comprising:one or more processors;and memory including instructions that, when executed by the one or more processors, cause the computer system: provide an application programming interface, the application programming interface comprising calls to at least: create a cryptographic key;encrypt using the cryptographic key;decrypt using the cryptographic key;remove the cryptographic key;update the cryptographic key;and rotate the cryptographic key with a new cryptographic key;obtain, through the application programming interface provided by a cryptography service of a computing resource service provider, information comprising a key identifier, a time to retire associated with a cryptographic key identified by the key identifier, and an automatic rotation policy to cause an old cryptographic key to be retired after a specified number of cryptographic operations;update the time to retire for the cryptographic key identified by the key identifier;perform cryptographic operations using the cryptographic key;in response to the automatic rotation policy being satisfied, rotating the old cryptographic key with the cryptographic key and, monitor a time associated with the cryptographic key;create the new cryptographic key identified by a new key identifier;as a result of the time associated with the cryptographic key exceeding the time to retire, rotate the cryptographic key with the new cryptographic key;and use the new cryptographic key identified by the new key identifier for future operations of a particular type.
  3. 13
    Broadest claimClaim Score 58, broad(NHIP)One or more computer-readable storage media comprising collectively stored thereon instructions that, in response to execution by one or more processors of a computer system, cause the computer system to:track a time of retirement of a key repeatedly used in cryptographic operations involved in responding to requests specifying a key identifier that identifies the key, the time of retirement determined based at least in part on a cryptographic algorithm used to generate the key and a determination of whether an output of the cryptographic algorithm has been revealed;detect when one or more conditions related to the time of retirement require retirement of the key;and as a result of detecting the one or more conditions indicating that the key is to be retired, cause a different key to be used in cryptographic operations involved in responding to requests that specify the key identifier.