Secure key exchange electronic transactions
AssigneeWells Fargo Bank, N.A.
InventorsPhillip H. Griffin, Jeffrey J. Stapleton
Life of this patent
Estimating the term…
Abstract
A unique transaction key (Tk) is established amongst multiple entities using a common hardware security module (HSM) with a common HMAC key (HK) and transaction scheme name (T). The transaction key (Tk) can be used for various cryptographic functions (e.g. encryption, MAC, HMAC, key management) with one or more messages at the transaction or session level.
Claims20
A method for managing secure key exchange electronic transactions without transmitting cleartext keys, the method comprising:
- storing, by a first entity computing system, a hash-based message authentication code (HMAC) key cryptogram in a non-volatile storage of the first entity computing system, the HMAC key cryptogram previously generated by a database encryption key management system associated with a hardware security module (HSM) and received by the first entity computing system from the HSM;
- generating, by the first entity computing system, an asymmetric key pair comprising a public key and a private key;
- storing, by the first entity computing system, the public key in the non-volatile storage;
- generating, by the first entity computing system, a transaction scheme, wherein the transaction scheme is one of a unilateral transaction scheme and a bilaterally negotiated transaction scheme;
- and
- transmitting, by first entity computing system, an electronic message to a second entity computing system, the electronic message cryptographically protected using a transaction key (Tk) of the transaction scheme.
A first entity computing system comprising at least one processor and a memory storing computer-executable instructions thereon, the computer-executable instructions, when executed by the at least one processor, causing the first entity computing system to:
- store a hash-based message authentication code (HMAC) key cryptogram in a non-volatile storage of the first entity computing system, the HMAC key cryptogram previously generated by a database encryption key management system associated with a hardware security module (HSM) and received by the first entity computing system from the HSM;
- generate an asymmetric key pair comprising a public key and a private key;
- store the public key in the non-volatile storage;
- generate a transaction scheme, wherein the transaction scheme is one of a unilateral transaction scheme and a bilaterally negotiated transaction scheme;
- and
- transmit an electronic message to a second entity computing system, the electronic message cryptographically protected using a transaction key (Tk) of the transaction scheme.
A non-transitory computer readable media having computer-executable instructions embodied therein that, when executed by a processor of a computing system, cause the computing system to perform operations comprising:
- storing a hash-based message authentication code (HMAC) key cryptogram in a non-volatile storage of the computing system, the HMAC key cryptogram previously generated by a database encryption key management system associated with a hardware security module (HSM), the computing system communicatively coupled to the database encryption key management system via a secured connection;
- generating an asymmetric key pair comprising a public key and a private key;
- storing the public key in the non-volatile storage;
- generating a transaction scheme, wherein the transaction scheme is one of a unilateral transaction scheme and a bilaterally negotiated transaction scheme;
- transmitting the HMAC key cryptogram, the transaction scheme, and the public key to the database encryption key management system;
- deriving a transaction key (Tk) based on seed received from the database encryption key management system via the secured connection, the seed generated based in part on the transaction scheme and the HMAC key cryptogram;
- and
- transmitting an electronic message to a remote computing system, the electronic message cryptographically protected using the Tk.
Dependencies are inferred from the claim text.