Patent ID: 7636441

Claim:
A method of secure key exchange between a first entity and a second entity using a trusted platform module (TPM) separate from the first and second entity and having a public/private key pair, the method comprising: generating, by the first entity, a first key, encrypting the first key with a public key of a TPM, the TPM having at least three registers, the TPM separate from the first and second entities and having a public/private key pair, and storing the encrypted first key in a first register of the TPM; generating, by the second entity, a second key, encrypting the second key with the public key of the TPM, and storing the encrypted second key in a second register of the TPM; decrypting, by the TPM, the encrypted first key stored in the first register and the encrypted second key stored in the second register, using the TPM's private key to obtain the first key and the second key; encrypting, by the TPM, the first key using the second key, and storing the first key encrypted by the second key in a third register of the TPM; obtaining, by the second entity from the third register of the TPM, the first key encrypted by the second key, and decrypting, by the second entity using the second key and a corresponding decryption algorithm, the first key encrypted by the second key.