Composite encryption across cryptographic algorithms
AssigneeEntrust Corporation
InventorsMichael Ounsworth, John Robert Gray, Serge Jean Maurice Mister
Life of this patent
Estimating the term…
Abstract
Content, such as an encryption key, may be transmitted between computing systems that both use more than one encryption algorithm. Secrets may be used to encode the content. The different encryption algorithms may be used to separately encrypt the encoded content and the secrets prior to communicating the encrypted, encoded content and encrypted secrets between computing systems.
Claims21
A method of securing data for transmission between a first computing system and a second computing system, the method comprising:
- determining, at a first computing system, a number N of different, independent encryption algorithms used at the first computing system and at a second computing system, wherein N is an integer greater than or equal to two, the N encryption algorithms being associated with N encryption keys received in a certificate;
- generating a different secret associated with an associated encryption algorithm for each of N-1 of the N encryption algorithms, thereby forming N-1 secrets;
- performing an exclusive-or operation on a combination of a content and the N-1 secrets to form encoded content;
- encrypting each of the N-1 secrets with the associated encryption algorithm from among the N-1 encryption algorithms using N-1 encryption keys of the N encryption keys to form encrypted N-1 secrets;
- encrypting the encoded content with the Nth encryption algorithm using the Nth encryption key to form encrypted encoded content;
- and
- transmitting, to the second computing system, a composite encrypted key comprising each of the encrypted N-1 secrets and the encrypted encoded content.
A composite encryption system comprising:
- a first computing system including a processor communicatively coupled to a memory, the memory storing instructions which, when executed by the processor, cause the first computing system to:
- determine a number N of different, independent encryption algorithms used at the first computing system and at a second computing system, wherein N is an integer greater than or equal to two, the N encryption algorithms being associated with N encryption keys received in a certificate;
- generate a different secret associated with an associated encryption algorithm for each of N-1 of the N encryption algorithms, thereby forming N-1 secrets;
- perform an exclusive-or operation on a combination of a content and the N-1 secrets to form encoded content;
- encrypt each of the N-1 secrets with the associated encryption algorithm from among the N-1 encryption algorithms using N-1 encryption keys of the N encryption keys to form encrypted N-1 secrets;
- encrypt the encoded content with the Nth encryption algorithm using the Nth encryption key to form encrypted encoded content;
- and
- transmit, to the second computing system, a composite encrypted key comprising each of the encrypted N-1 secrets and the encrypted encoded content.
A method of securely transmitting content between a first computing system and a second computing system, the method comprising:
- receiving, at a second computing system from a first computing system, a composite encrypted key, the second computing system and the first computing system using a number N of different, independent encryption algorithms using N key pairs, each key pair of the N key pairs including an encryption key and a decryption key, the encryption key of all of the N key pairs being included in a certificate, wherein the composite encrypted key includes N-1 encrypted secrets and encrypted encoded content and N is an integer greater than or equal to two;
- decrypting, at the second computing system, each of the N-1 encrypted secrets with an associated one of N-1 associated encryption algorithms of the N encryption algorithms using N-1 of the N decryption keys to obtain N-1 secrets;
- decrypting, at the second computing system, the encrypted encoded content with a remaining Nth encryption algorithm and Nth decryption key of the N encryption algorithms to obtain encoded content;
- and
- performing, at the second computing system, an exclusive-or operation on the encoded content with each of the N-1 secrets to decode the content.
A system comprising:
- a recipient computing system including a processor communicatively coupled to a memory, the memory storing instructions which, when executed by the processor, cause the recipient computing system to:
- receive, from a remote computing system, a composite encrypted key, the recipient computing system and the remote computing system using a number N of different, independent encryption algorithms using N key pairs, each key pair of the N key pairs including an encryption key and a decryption key, the encryption key of all of the N key pairs being included in a certificate, wherein the composite encrypted key includes N-1 encrypted secrets and encrypted encoded content and N is an integer greater than or equal to two;
- decrypt, at the recipient computing system, each of the N-1 encrypted secrets with an associated one of N-1 associated encryption algorithms of the N encryption algorithms using N-1 of the N decryption keys to obtain N-1 secrets;
- decrypt, at the recipient computing system, the encrypted encoded content with a remaining Nth encryption algorithm and Nth decryption key of the N encryption algorithms to obtain encoded content;
- and
- perform, at the recipient computing system, an exclusive-or operation on the encoded content with each of the N-1 secrets to decode the content.
Dependencies are inferred from the claim text.