Federated key management
First Claim
1. A computer-implemented method, comprising:
- under the control of one or more computer systems configured with executable instructions,receiving, from a requestor, a request to perform a cryptographic operation, the request including first information and an electronic signature generated based at least in part on a portion of the first information, the electronic signature verifiable with a first key of a set of one or more keys corresponding to a second key;
detecting whether the request specifies a key holder of a plurality of key holders;
as a result of detecting that the request specifies a particular key holder of the plurality of key holders, causing the particular key holder to at least;
determine, based at least in part on the first information and the first key, whether the electronic signature is valid; and
determine, based at least in part on the first information, whether the first information satisfies one or more conditions for fulfilling the request;
as a result of the particular key holder determining that the electronic signature is valid and that the first information satisfies the one or more conditions, obtaining, from the particular key holder, first response information necessary for fulfilling the request, the first response information having been generated based at least in part on one or more cryptographic operations performed using the second key;
using the obtained first response information to provide, to the requestor, a response to the request;
receiving a second request to perform a cryptographic operation, the second request including second information and a second electronic signature based at least in part on a portion of the second information, the electronic signature verifiable with a third key of a second set of one or more keys corresponding to a fourth key;
determining, based at least in part on the second information and the third key, whether the second electronic signature is valid;
determining, based at least in part on the second information, whether the second information satisfies one or more second conditions for fulfilling the second request; and
as a result of determining that the second electronic signature is valid and that the second information satisfies the one or more second conditions, using the fourth key to perform one or more cryptographic operations to fulfill the second request.
1 Assignment
0 Petitions
Accused Products
Abstract
A system uses information submitted in connection with a request to determine if and how to process the request. The information may be electronically signed by a requestor using a key such that the system processing the request can verify that the requestor has the key and that the information is authentic. The information may include information that identifies a holder of a key needed for processing the request, where the holder of the key can be the system or another, possibly third party, system. Requests to decrypt data may be processed to ensure that a certain amount of time passes before access to the decrypted data is provided, thereby providing an opportunity to cancel such requests and/or otherwise mitigate potential security breaches.
-
Citations
23 Claims
-
1. A computer-implemented method, comprising:
under the control of one or more computer systems configured with executable instructions, receiving, from a requestor, a request to perform a cryptographic operation, the request including first information and an electronic signature generated based at least in part on a portion of the first information, the electronic signature verifiable with a first key of a set of one or more keys corresponding to a second key; detecting whether the request specifies a key holder of a plurality of key holders; as a result of detecting that the request specifies a particular key holder of the plurality of key holders, causing the particular key holder to at least; determine, based at least in part on the first information and the first key, whether the electronic signature is valid; and determine, based at least in part on the first information, whether the first information satisfies one or more conditions for fulfilling the request; as a result of the particular key holder determining that the electronic signature is valid and that the first information satisfies the one or more conditions, obtaining, from the particular key holder, first response information necessary for fulfilling the request, the first response information having been generated based at least in part on one or more cryptographic operations performed using the second key; using the obtained first response information to provide, to the requestor, a response to the request; receiving a second request to perform a cryptographic operation, the second request including second information and a second electronic signature based at least in part on a portion of the second information, the electronic signature verifiable with a third key of a second set of one or more keys corresponding to a fourth key; determining, based at least in part on the second information and the third key, whether the second electronic signature is valid; determining, based at least in part on the second information, whether the second information satisfies one or more second conditions for fulfilling the second request; and as a result of determining that the second electronic signature is valid and that the second information satisfies the one or more second conditions, using the fourth key to perform one or more cryptographic operations to fulfill the second request. - View Dependent Claims (2, 3, 4, 5, 6)
-
7. A computer-implemented method, comprising:
under the control of one or more computer systems configured with executable instructions, receiving, in connection with a request, first information and an electronic signature based at least in part on at least a portion of the first information; detecting a holder of a second key, from a plurality of key holders, being specified in the first information; as a result of detecting the holder of the second key, causing the holder of the second key to; determine, based at least in part on the portion of the first information and a first key that is associated with a second key, whether the electronic signature is valid; and as a result of determining that the signature is valid, perform one or more cryptographic operations using the second key; using one or more results of the one or more cryptographic operations obtained from the holder of the second key to fulfill the request; receiving a second request including second information and a second electronic signature based at least in part on at least a portion of the second information, the electronic signature verifiable with a third key of a second set of one or more keys corresponding to a fourth key; determining, based at least in part on the second information and the third key, whether the second electronic signature is valid; determining, based at least in part on the second information, whether the second information satisfies one or more second conditions for fulfilling the second request; and as a result of determining that the second electronic signature is valid and that the second information satisfies the one or more second conditions, using the fourth key to perform one or more cryptographic operations to fulfill the second request. - View Dependent Claims (8, 9, 10, 11, 12)
-
13. A computer-implemented method, comprising:
under the control of one or more computer systems configured with executable instructions, receiving, from a first computer system requestor, a request to perform a cryptographic operation, the request including first information and an electronic signature generated based at least in part on a portion of the first information, the electronic signature verifiable with a first key of a set of one or more keys corresponding to a second key; detecting whether the request specifies a key holder of a plurality of key holders, the particular key holder being a second computer system different from the first computer system requestor and having access to a plaintext copy of the second key; as a result of detecting that the request specifies a particular key holder of the plurality of key holders, causing the particular key holder to at least; determine, based at least in part on the first information and the first key, whether the electronic signature is valid; and determine, based at least in part on the first information, whether the first information satisfies one or more conditions for fulfilling the request; as a result of the particular key holder determining that the electronic signature is valid and that the first information satisfies the one or more conditions, obtaining, from the particular key holder, first response information necessary for fulfilling the request, the first response information having been generated based at least in part on one or more cryptographic operations performed using the second key; using the obtained first response information to provide, to the requestor, a response to the request; receiving a second request to perform a cryptographic operation, the second request including second information and a second electronic signature based on the second information, the electronic signature verifiable with a third key of a second set of one or more keys corresponding to a fourth key; determining, based on the second information and the third key, whether the second electronic signature is valid; determining, based on the second information, whether the second information satisfies a condition for fulfilling the second request; and as a result of determining that the second electronic signature is valid and that the second information satisfies the condition, using the fourth key to perform a cryptographic operation to fulfill the second request. - View Dependent Claims (14, 15, 16, 17)
-
18. A computer-implemented method, comprising:
under the control of one or more computer systems configured with executable instructions, receiving from a first computer system, in connection with a request, first information and an electronic signature based at least in part on at least a portion of the first information; detecting a holder of a second key, from a plurality of key holders, being specified in the first information, the particular holder of the second key being a second computer system different from the first computer system and having access to a plaintext copy of the second key; as a result of detecting the holder of the second key, causing the holder of the second key to; determine, based at least in part on the portion of the first information and a first key that is associated with a second key, whether the electronic signature is valid; and as a result of determining that the signature is valid, perform one or more cryptographic operations using the second key; using one or more results of the one or more cryptographic operations obtained from the holder of the second key to fulfill the request; receiving a second request including second information and a second electronic signature based at least in part on at least a portion of the second information, the electronic signature verifiable with a third key of a second set of one or more keys corresponding to a fourth key; determining, based at least in part on the second information and the third key, whether the second electronic signature is valid; determining, based at least in part on the second information, whether the second information satisfies one or more second conditions for fulfilling the second request; and as a result of determining that the second electronic signature is valid and that the second information satisfies the one or more second conditions, using the fourth key to perform one or more cryptographic operations to fulfill the second request. - View Dependent Claims (19, 20, 21, 22, 23)
Specification