Nova Patents
CA2899008C

Federated key management

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.

CA2899008C, drawing sheet 1
Sheet 1 of 35

Term

7.4 yearsleft in the term

Expires 7 February 2034.

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

23 claims: 14 independent, 9 dependent

  1. 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 Date Reçue/Date Received 2022-02-10 second information satisfies foe one or more second conditions, using the fourth key to perform one or more cryptographic operations to fulfill the second request.
  2. 4
    The computer-implemented method of any one of claims 1 to 3, wherein foe one or more conditions for fulfilling the request are defined by one or more policies corresponding to the second key.
  3. 5
    The computer-implemented method of any one of claims 1 to 4, wherein the second key is inaccessible in plaintext form to the one or more computer systems.
  4. 6
    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 foe 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 foe holder of foe second key to fulfill foe request;receiving a second request including second information and a second electronic Date Reçue/Date Received 2022-02-10 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.
  5. 9
    The computer-implemented method of any one of claims 6 to 8, wherein the one or more computer systems lack access to the second key in plaintext form.
  6. 10
    The computer-implemented method of any one of claims 6 to 9, wherein:the first information includes one or more values;the method further comprises determining whether the one or more values satisfy one or more conditions;and fulfilling the request is dependent on determining that the one or more values satisfy the one or more conditions.
  7. 11
    The computer-implemented method of any one of claims 6 to 10, wherein the holder of the second key is the one or more computer systems. Date Reçue/Date Received 2022-02-10
  8. 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 infonnation 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 infonnation, the electronic signature verifiable with a third key of a second set of one or more keys corresponding to a fourth key;Date Reçue/Date Received 2022-02-10 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.
  9. 16
    The computer-implemented method of any one of claims 13 to 15, wherein the one or more conditions for fulfilling the request are defined by one or more policies corresponding to the second key.
  10. 17
    The computer-implemented method of any one of claims 13 to 16, wherein the second key is inaccessible in plaintext form to the one or more computer systems.
  11. 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: Date Reçue/Date Received 2022-02-10 determine, based at least in part on the portion of the fust 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.
  12. 21
    The computer-implemented method of any one of claims 18 to 20, wherein the one or more computer systems lack access to the second key in plaintext form.
  13. 22
    The computer-implemented method of any one of claims 18 to 21, wherein:the first information includes one or more values;the method further comprises determining whether the one of more values satisfy Date Reçue/Date Received 2022-02-10 one or more conditions;and fulfilling the request is dependent on determining that the one or more values satisfy the one or more conditions.
  14. 23
    The computer-implemented method of any one of claims 18 to 22, wherein the holder of the second key is the one or more computer systems.