Method and apparatus for cryptographic key storage wherein key servers are authenticated by possession and secure distribution of stored keys
First Claim
1. A method of accessing encrypted data, wherein the encrypted data is stored on a first secured system and a key usable for decrypting the encrypted data is stored on a second secured system and wherein the first secured system maintains a private key of a first secured system key pair, the method comprising:
- obtaining a one-time key pair at the first secured system;
generating a request for the key including at least a public key of the one-time key pair;
signing the request with a private key of the first secured system;
sending the request to the second secured system;
responding to the request with a response, wherein the response includes at least the key requested by the first secured system, encrypted using the one-time public key provided in the request;
decrypting at least a part of the response using the one-time private key, so as to obtain the key; and
using at least the key provided as part of the response to decrypt the encrypted data.
10 Assignments
0 Petitions
Accused Products
Abstract
A key management system includes secured data stored on a first system secured by a control key stored securely on a key server. The secured data is secured against attacks such as unauthorized use, modification or access, where authorization to access the secured data is determined by knowledge of an access private key of an access key pair. When an authorized user is to access the secured data, the first system generates a request to the key server, signed with the access private key, wherein the request is for a decryption control key and the request includes a one-time public key of a key pair generated by the first system for the request. The first system can decrypt the decryption control key from the response, using a one-time private key. The first system can then decrypt the secured data with the decryption control key remaining secured in transport.
129 Citations
7 Claims
-
1. A method of accessing encrypted data, wherein the encrypted data is stored on a first secured system and a key usable for decrypting the encrypted data is stored on a second secured system and wherein the first secured system maintains a private key of a first secured system key pair, the method comprising:
-
obtaining a one-time key pair at the first secured system;
generating a request for the key including at least a public key of the one-time key pair;
signing the request with a private key of the first secured system;
sending the request to the second secured system;
responding to the request with a response, wherein the response includes at least the key requested by the first secured system, encrypted using the one-time public key provided in the request;
decrypting at least a part of the response using the one-time private key, so as to obtain the key; and
using at least the key provided as part of the response to decrypt the encrypted data. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A secured system on which encrypted data is maintained and decryptable using a key stored on a remote system, the secured system comprising:
-
storage for a private key of a secured system key pair;
logic for generating or obtaining a one-time key pair;
logic for generating a request for the key including at least a public key of the one-time key pair;
logic for signing the request with the private key of the secured system key pair;
logic for processing a response from the remote system to the request, including logic to obtain the key from the request using the private key of the one-time key pair; and
a decryptor that decrypts the encrypted data using key provided by the remote system, whereby the remote system is authenticated based on whether the key provided by the remote system results in a correct decryption of the encrypted data.
-
-
7. A secured key server, wherein keys for a plurality of key clients are maintained, the secured key server comprising:
-
a database of keys, wherein each key is associated with a key client;
a communications module for receiving key requests that include one-time public keys and that are signed by a key client;
logic for authenticating the key client based on a public key of the key client;
logic for encrypting a response that includes the requested key and that is encrypted using the one-time public key; and
logic for sending the response to the requesting key client.
-
Specification