# US 11,909,893 B2 · Composite encryption across cryptographic algorithms

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,909,893 B2
- Document ID: US11909893B2
- Status: Granted
- Kind: B2
- Application number: 17/850,712
- Filed: 2022-06-27
- Published: 2022-12-29
- Granted: 2024-02-20
- Earliest claimed: 2021-06-25
- Assignees: Entrust Corporation
- Applicants: Entrust Corporation
- Inventors: Michael Ounsworth; John Robert Gray; Serge Jean Maurice Mister
- Web page: https://patentgrep.com/patent/US11909893B2

## CPC

- H04L 9/14: using a plurality of keys or algorithms
- H04L 9/3268: {using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]}
- H04L 9/0822: {using key encryption key}
- H04L 9/321: {involving a third party or a trusted authority}
- H04L 9/302: {involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes}
- H04L 9/3093: {involving Lattices or polynomial equations, e.g. NTRU scheme}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## 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.

## Claims

### Claim 1

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.

### Claim 2 (depends on 1)

The method of claim 1, wherein the content comprises a content encryption key.

### Claim 3 (depends on 1)

The method of claim 1, wherein encrypting each of the N-1 secrets with the associated encryption algorithm includes encrypting each of the N-1 secrets using a public key of a public-private key pair used in the associated encryption algorithm.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
receiving, at the second computing system, the composite encrypted key;
decrypting, at the second computing system, each of the N-1 secrets with the associated encryption algorithm associated with the respective one of the N-1 secrets, wherein decrypting each of the N-1 secrets includes use of N-1 decryption keys;
decrypting, at the second computing system, the encoded content with the Nth encryption algorithm using an Nth decryption key; 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.

### Claim 5 (depends on 4)

The method of claim 4, wherein decrypting each of the N-1 secrets with the associated encryption algorithm includes decrypting each of the N-1 secrets using a private key of a public-private key pair used in the associated encryption algorithm.

### Claim 6 (depends on 4)

The method of claim 4, wherein receiving the composite encrypted key comprises receiving the composite encrypted key from the first computing system via a public network.

### Claim 7 (depends on 1)

The method of claim 1, wherein N is greater than or equal to three, and each of the N-1 secrets has a size equal to a size of the content.

### Claim 8 (depends on 7)

The method of claim 7, wherein the size is greater than or equal to 128 bits and less than or equal to 512 bits.

### Claim 9 (depends on 1)

The method of claim 1, wherein the certificate comprises an X.509 certificate that is certified by a third party.

### Claim 10 (depends on 1)

The method of claim 1, wherein the N encryption algorithms include one or more post-quantum encryption algorithms selected from a group comprising: a lattice-based encryption algorithm; a code-based encryption algorithm; or the RSA algorithm.

### Claim 11

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.

### Claim 12 (depends on 11)

The composite encryption system of claim 11, further comprising the second computing system communicatively coupled to the first computing system via a public network.

### Claim 13 (depends on 12)

The composite encryption system of claim 12, wherein the second computing system includes a second processor communicatively coupled to a second memory storing instructions which, when executed by the second processor, cause the second computing system to:
receive, at the second computing system, the composite encrypted key;
decrypt, at the second computing system, each of the N-1 secrets with the associated encryption algorithm associated with the respective one of the N-1 secrets, wherein decrypting each of the N-1 secrets includes use of N-1 decryption keys;
decrypt, at the second computing system, the encoded content with the Nth encryption algorithm using an Nth decryption key; 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.

### Claim 14 (depends on 11)

The composite encryption system of claim 11, wherein the content comprises a content encoding key, the content encoding key being a symmetric key used to encrypt content transmitted between the first computing system and the second computing system.

### Claim 15

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.

### Claim 16 (depends on 15)

The method of claim 15, wherein decrypting each of the N-1 secrets with the associated encryption algorithm and decryption key includes decrypting each of the N-1 secrets using a private key of a public-private key pair used in the associated encryption algorithm.

### Claim 17 (depends on 15)

The method of claim 15, wherein the content comprises a content encryption key and each of the N-1 secrets has a size equal to a size of the content encryption key.

### Claim 18 (depends on 15)

The method of claim 15, wherein each of the N-1 encrypted secrets is encrypted with a different one of the N-1 associated encryption algorithms, and the encrypted encoded content is encrypted with an encryption algorithm from among the N encryption algorithms other than the N-1 encryption algorithms.

### Claim 19 (depends on 15)

The method of claim 15, wherein decrypting each of the N-1 secrets with the associated encryption algorithm and decryption key includes decrypting each of the N-1 secrets using a private key of a public-private key pair used in the associated encryption algorithm.

### Claim 20

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.

### Claim 21 (depends on 20)

The system of claim 20, further comprising the remote computing system, wherein the recipient computing system and the remote computing system are communicatively connected via a public network.
