IP Library Granted Patent US 11,431,498
Granted Patent B2
US 11,431,498 · App. 16/789,304 · Granted Aug 30, 2022

Quantum-augmentable hybrid encryption system and method

Inventors: Brian Goncalves (Toronto, CA); Atefeh Mashatan (Toronto, CA); Jay Fallah (Toronto, CA); Kristopher Byrne (Toronto, CA); Prathap Siddavaatam (Toronto, CA)
Assignees: NXM Labs, Inc.; Reyerson University
H04L9/30H04L9/0825H04L9/0869H04L9/3236G06N10/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,431,498
App. No.
16/789,304
Granted
Aug 30, 2022
Kind
B2
Abstract

A hybrid encryption scheme links a first public key encryption (PKE) scheme with a second PKE scheme through a true random or pseudo-random element, which is used by a sender to encapsulate a symmetrically encrypted message and its associated symmetric key to generate a pair of ciphertexts for transmission to a recipient. The recipient decrypts and decapsulates the ciphertexts, retrieves the random element, and may conduct one or more verification steps to ensure that the ciphertexts were well-formed, and to detect any re-encryption or encapsulation attacks. To encrypt a message, the message and initial random value are encrypted with a symmetric key to provide an intermediate ciphertext. The symmetric key and the encrypted message-value are each encapsulated by distinct algorithms using distinct values derived from the initial random value, such as different hashes, and public keys to provide first and second ciphertexts.

Claims (78)

1. A method, comprising:

concatenating, by a processor system of a computing device, a message to be encrypted with a random value;

generating a symmetric key and a first ciphertext comprising an encapsulation of the symmetric key using a value derived from the random value using at least a first one-way function and a first public key of a first asymmetric key pair;

encrypting, by the processor system, the combination of the message to be encrypted and the random value with the symmetric key to provide an intermediate ciphertext;

encapsulating, by the processor system, the intermediate ciphertext using a different value derived from the random value and a second public key of a second asymmetric key pair to provide a second ciphertext, the different value being derived from the random value using at least a second one-way function; and

storing the first and second ciphertexts in memory of the computing device.

2. The method of claim 1 , wherein generating the symmetric key and the first ciphertext comprises providing the first public key and the value to a key encapsulation algorithm that generates the symmetric key and the encapsulation.

3. The method of claim 1 , wherein:

generating the symmetric key and the first ciphertext comprises:

generating the symmetric key using a key generating algorithm, and

encapsulating the symmetric key, comprising combining the value with the symmetric key, and encrypting the resultant combination with the first public key;

encapsulating the intermediate ciphertext comprises combining the different value with the intermediate ciphertext, and encrypting the resultant combination with the second public key; and

combining the message with the random value comprises concatenating the message with the random value.

4. The method of claim 1 , wherein the random value is a true random value.

5. The method of claim 1 , wherein generating the symmetric key and the first ciphertext comprises:

generating, by the processor system, the symmetric key using a key generating algorithm;

generating, by the processor system, a first symmetric key encapsulation hash value from the random value by applying a first hash function to the random value;

combining, by the processor system, the symmetric key with a second symmetric key encapsulation hash value generated by applying a second hash function to the first symmetric key encapsulation hash value to provide a first combined value;

combining, by the processor system, the first symmetric key encapsulation hash value with a result of applying a third hash function to the first combined value to provide a second combined value; and

encrypting, by the processor system, a concatenation of the first combined value and the second combined value using the first public key to produce the first ciphertext.

6. The method of claim 5 , wherein encapsulating the intermediate ciphertext comprises:

generating, by the processor system, a first intermediate ciphertext encapsulation hash value from the random value by applying a fourth hash function to the random value;

combining, by the processor system, the intermediate ciphertext with a second intermediate ciphertext encapsulation hash value generated by applying a fifth hash function to the first intermediate ciphertext encapsulation hash value to provide a third combined value;

combining, by the processor system, the first intermediate ciphertext encapsulation hash value with a result of applying a sixth hash function to the third combined value to provide a fourth combined value; and

encrypting, by the processor system, a concatenation of the third combined value and fourth combined value using the second public key to produce the second ciphertext.

7. The method of claim 6 , wherein the symmetric key and the intermediate ciphertext are padded prior to combining.

8. The method of claim 6 , wherein the set of the first, second, and third hash functions is different than the set of the fourth, fifth and sixth hash functions.

9. The method of claim 6 , further comprising transmitting the first and second ciphertexts to a recipient, wherein the first and second asymmetric key pairs are asymmetric key pairs associated with the recipient.

10. A computer system, comprising:

a memory;

at least one processor configured to implement:

concatenating a message to be encrypted with a random value;

generating a symmetric key and a first ciphertext comprising an encapsulation of the symmetric key using a value derived from the random value using at least a first one-way function and a first public key of a first asymmetric key pair;

encrypting the combination of the message to be encrypted and the random value with the symmetric key to provide an intermediate ciphertext;

encapsulating the intermediate ciphertext using a different value derived from the random value and a second public key of a second asymmetric key pair to provide a second ciphertext, the different value being derived from the random value using at least a second one-way function; and

storing the first and second ciphertexts in memory of the computer system.

11. The computer system of claim 10 , wherein generating the symmetric key and the first ciphertext comprises providing the first public key and the value to a key encapsulation algorithm that generates the symmetric key and the encapsulation.

12. The computer system of claim 11 , wherein:

generating the symmetric key and the first ciphertext comprises:

generating the symmetric key using a key generating algorithm, and

encapsulating the symmetric key, comprising combining the value with the symmetric key, and encrypting the resultant combination with the first public key;

encapsulating the intermediate ciphertext comprises combining the different value with the intermediate ciphertext, and encrypting the resultant combination with the second public key; and

combining the message with the random value comprises concatenating the message with the random value.

13. The computer system of claim 10 , wherein the random value is a true random value.

14. The computer system of claim 10 , wherein generating the symmetric key and the first ciphertext comprises:

generating, by the at least one processor, the symmetric key using a key generating algorithm;

generating a first symmetric key encapsulation hash value from the random value by applying a first hash function to the random value;

combining the symmetric key with a second symmetric key encapsulation hash value generated by applying a second hash function to the first symmetric key encapsulation hash value to provide a first combined value;

combining the first symmetric key encapsulation hash value with a result of applying a third hash function to the first combined value to provide a second combined value; and

encrypting a concatenation of the first combined value and the second combined value using the first public key to produce the first ciphertext.

15. The computer system of claim 14 , wherein encapsulating the intermediate ciphertext comprises:

generating a first intermediate ciphertext encapsulation hash value from the random value by applying a fourth hash function to the random value;

combining the intermediate ciphertext with a second intermediate ciphertext encapsulation hash value generated by applying a fifth hash function to the first intermediate ciphertext encapsulation hash value to provide a third combined value;

combining the first intermediate ciphertext encapsulation hash value with a result of applying a sixth hash function to the third combined value to provide a fourth combined value; and

encrypting a concatenation of the third combined value and fourth combined value using the second public key to produce the second ciphertext.

16. The computer system of claim 15 , wherein the symmetric key and the intermediate ciphertext are padded prior to combining.

17. The computer system of claim 15 , wherein the set of the first, second, and third hash functions is different than the set of the fourth, fifth and sixth hash functions.

18. The computer system of claim 15 , further comprising transmitting the first and second ciphertexts to a recipient, wherein the first and second asymmetric key pairs are asymmetric key pairs associated with the recipient.

19. A method, comprising:

obtaining, by a computing device comprising a processor system, a first ciphertext and a second ciphertext,

decrypting, by the processor system, the first ciphertext using a first private key of a first asymmetric key pair to obtain first decrypted content comprising a first portion and a second portion;

combining, by the processor system, the second portion with a first hash value generated by applying the first portion as input to a first hash function to provide a first result;

combining, by the processor system, the first portion with a second hash value generated by applying the first result as input to a second hash function to provide a second result, and obtaining a symmetric key from the second result;

decrypting, by the processor system, the second ciphertext using a second private key of a second asymmetric key pair to obtain second decrypted content comprising a third portion and a fourth portion;

combining, by the processor system, the fourth portion with a third hash value generated by applying the third portion as input to a third hash function to provide a third result;

combining, by the processor system, the third portion with a fourth hash value generated by applying the third result as input to a fourth hash function to provide a fourth result, and obtaining an intermediate ciphertext from the fourth result;

decrypting, by the processor system, the obtained intermediate ciphertext using the obtained symmetric key to obtain a message and an appended value.

20. A computer system, comprising:

a memory;

at least one processor configured to implement:

obtaining a first ciphertext and a second ciphertext,

decrypting the first ciphertext using a first private key of a first asymmetric key pair to obtain first decrypted content comprising a first portion and a second portion;

combining the second portion with a first hash value generated by applying the first portion as input to a first hash function to provide a first result;

combining the first portion with a second hash value generated by applying the first result as input to a second hash function to provide a second result, and obtaining a symmetric key from the second result;

decrypting the second ciphertext using a second private key of a second asymmetric key pair to obtain second decrypted content comprising a third portion and a fourth portion;

combining the fourth portion with a third hash value generated by applying the third portion as input to a third hash function to provide a third result;

combining, by the at least one processor, the third portion with a fourth hash value generated by applying the third result as input to a fourth hash function to provide a fourth result, and obtaining an intermediate ciphertext from the fourth result;

decrypting, by the at least one processor, the obtained intermediate ciphertext using the obtained symmetric key to obtain a message and an appended value.

Assignments (6)
CHANGE OF NAME Recorded Jun 27, 2023
From: NXM TECHNOLOGIES INC.
To: NXM LABS CANADA INC.
Reel/Frame 064126/0170 →
SECURITY INTEREST Recorded Mar 3, 2023
From: NXM LABS, INC.
To: A&L INVESTMENTS INC.; OPALA, ANDREW; ASL PROPERTIES LTD.; ZAGDANSKI, BARRY; SHARPE, BILL; FARB, BRIAN; DIAMOND, COLE; POSLUNS, DAVID; EHRLICH REAL ESTATE ADVISORS INC.; SALSBERG, ERIC; SALSBERG, LYNNE; GREEN LANTERN CONSULTANTS INC.; HAMI CORPORATION; RADUEGE, HARRY; LICHTMAN, HOWARD; DIAMOND, JANETTE; JAZSE HOLDINGS INC.; JESCOLARI INVESTMENT; JTA ASSOCIATES INC.; KEY BANK NA CUSTODIAN FBO ERIC D. FRIEDMAN IRA; M. SHIER & ASSOCIATES LIMITED; MASELLA HOLDINGS INC.; DIAMOND, MICHAEL; RONEN, MOSHE; ONTARIO 1513514 INC.; FINK, PETER B; POST ROAD INVESTMENTS; RADONNA INVESTMENTS LIMITED; RB SEAN HOLDINGS INC.; HINAMAN, ROBERT; RICHARDS, ROBERT; ROCKPORT CAPITAL INC.; ROCKY COAST SECURITY, LLC; WALL, NAOMI; THE MARR FAMILY CORPORATION; TREAD LIGHTLY, LLC.; WEIS VINEYARDS INC.; WIFLEUR INC.; WYBROWN HOLDINGS INC.; VYNER, BRIAN
Reel/Frame 062867/0179 →
AMENDED AND RESTATED SHORT-FORM INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Mar 3, 2023
From: NXM LABS, INC.
To: SALSBERG, ERIC; SALSBERG, LYNNE; WEIS VINEYARDS INC.; WALL, NAOMI; POST ROAD INVESTMENTS LTD.; A&L INVESTMENTS INC.; ASL PROPERTIES LTD.; OPALA, ANDREW; SHARPE, BILL; ZAGDANSKI, BARRY; ZAGDANSKI, IAN; MASELLA HOLDINGS INC.; FINK, PETER; RADONNA INVESTMENTS LIMITED; RB SEAN HOLDINGS; THE MARR FAMILY CORPORATION; HIGHFIELD DEVELOPMENT LTD.; LIBIN, TERRY; GREEN LANTERN CONSULTANTS INC.; FARB, BRIAN; JESCOLARI INVESTMENT; ROCKY COAST SECURITY, LLC; TREAD LIGHTLY, LLC; ROCKPORT CAPITAL INC.; 2716455 ONTARIO LIMITED; DIAMOND, COLE; HINGEPOINT CAPITAL CORP.; M. SHIER & ASSOCIATES LIMITED; ZORON INC.; ROBERT T. AND ANNETTE J. HINAMAN LIVING TRUST; RICHARDS, ROBERT; HAMI CORPORATION; EHRLICH REAL ESTATE ADVISORS INC.; LITCHMAN, HOWARD; RONEN, MOSHE; JAZSE HOLDINGS INC.; WIFLEUR INC.; WYBROWN HOLDINGS INC.; POSLUNS, DAVID; THE RADUEGE GROUP; KEY BANK NA CUSTODIAN FBO ERIC D. FRIEDMAN IRA; WALMAN, NADINE; VYNER, BRIAN; LIVINGSTON, JOHN
Reel/Frame 062946/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2022
From: GONCALVES, BRIAN; MASHATAN, ATEFEH
To: RYERSON UNIVERSITY
Reel/Frame 060568/0265 →
SECURITY INTEREST Recorded Mar 10, 2022
From: NXM LABS, INC.
To: SALSBERG, ERIC; WEIS VINEYARDS INC.; POST ROAD INVESTMENTS LTD.; A&L INVESTMENTS INC.; ASL PROPERTIES LTD.; OPALA, ANDREW; SHARPE, BILL; ZAGDANSKI, BARRY; ZAGDANSKI, IAN; MASELLA HOLDINGS INC.; FINK, PETER; RADONNA INVESTMENTS LIMITED; RB SEAN HOLDINGS; THE MARR FAMILY CORPORATION; HIGHFIELD DEVELOPMENT LTD.; WALL, NAOMI; SALSBERG, LYNNE; LIBIN, TERRY; GREEN LANTERN CONSULTANTS INC.; FARB, BRIAN; JESCOLARI INVESTMENT; ROCKY COAST SECURITY, LLC; TREAD LIGHTLY, LLC; ROCKPORT CAPITAL INC.; 2716455 ONTARIO LIMITED; DIAMOND, COLE; HINGEPOINT CAPITAL CORP.; M. SHIER & ASSOCIATES LIMITED; ZORON INC.; ROBERT T. AND ANNETTE J. HINAMAN LIVING TRUST; RICHARDS, ROBERT; EHRLICH REAL ESTATE ADVISORS INC.; LITCHMAN, HOWARD; RONEN, MOSHE; JAZSE HOLDINGS INC.; WIFLEUR INC.; WYBROWN HOLDINGS INC.; POSLUNS, DAVID; THE RADUEGE GROUP; KEY BANK NA CUSTODIAN FBO ERIC D. FRIEDMAN IRA; WALMAN, NADINE; VYNER, BRIAN; LIVINGSTON, JOHN; HAMI CORPORATION
Reel/Frame 059227/0163 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 26, 2021
From: NXM LABS CANADA INC.
To: NXM LABS, INC.
Reel/Frame 056358/0513 →
Continuity (2)
Provisional Application 62804621 · Feb 12, 2019
Related Publication 20200259647A1 · Aug 13, 2020
Cited By (2)
US 12,592,913 US 12,665,768