IP Library Granted Patent US 11,641,347
Granted Patent B2
US 11,641,347 · App. 17/691,295 · Granted May 2, 2023

Quantum-safe cryptographic methods and systems

Inventors: Randy Kuang (Ottawa, CA); Maria Perepechaenko (Ottawa, CA)
Assignee: Quantropi Inc.
H04L63/0442H04L9/0618H04L9/0825H04L9/3026H04L9/3218H04L9/3247H04L2209/08
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,641,347
App. No.
17/691,295
Granted
May 2, 2023
Kind
B2
Abstract

Cryptographic methods and systems for key exchange, digital signature and zero-knowledge proof. In the digital signature scenario, there is provided a method of signing a digital document, comprising: obtaining a private cryptographic key associated with the signer; obtaining a digital asset from the digital document; selecting a base data element; computing a plurality of signature data elements from (i) the digital asset, (ii) the base data element and (iii) the private cryptographic key; and transmitting the digital document and the plurality of signature data elements to a recipient over a data network. Provenance of the digital document is confirmable by the recipient carrying out a predefined computation involving the digital document, the signature data elements, a plurality of noise variables and a public cryptographic key corresponding to the private cryptographic key associated with the signer. In the zero-knowledge proof scenario, the digital asset plays the role of a challenge data element.

Claims (52)

1. A method of operating a computing apparatus to confirm provenance of a received message purportedly sent by a given sender, the message comprising a digital signature, the digital signature comprising a plurality of data elements, the method comprising:

obtaining a digital asset from the message;

obtaining a public cryptographic key of the given sender;

selecting a plurality of noise variables;

computing a plurality of data elements based on the digital asset, the noise variables and the public cryptographic key of the given sender;

evaluating whether the computed data elements and the data elements of the digital signature obey a predetermined relationship, the predetermined relationship being that A Q′ is equal to a product of B P′ , C N 0 , D N n and E, wherein A, B, C, D and E represent the data elements of the digital signature and wherein Q′, P′, N 0 and N n represent parts of the public cryptographic key;

in case the computed data elements and the data elements of the digital signature obey the predetermined relationship, generating a signal indicative of the message having been sent by the given sender, otherwise, generating a signal indicative of the message not having been sent by the given sender.

2. The method defined in claim 1 , wherein obtaining the digital asset from the message comprises carrying out a cryptographic hash function.

3. The method defined in claim 1 , wherein computing the plurality of data elements comprises:

computing a first data element as a first noise function of the noise variables, the first noise function defined by a first set of noise function coefficients comprising a first part of the public cryptographic key;

computing a second data element as a second noise function of the noise variables and of the digital asset, the second noise function defined by a second set of noise function coefficients comprising a second part of the public cryptographic key;

computing a third data element as a third function of the digital asset, the third function defined by a third set of coefficients derived from (i) the noise variables; and (ii) a third part of the public cryptographic key; and

computing a fourth data element as a fourth function of the digital asset, the fourth function defined by a fourth set of coefficients derived from (i) the noise variables; and (ii) a fourth part of the public cryptographic key.

4. The method defined in claim 3 , wherein the first noise function is a first multivariate polynomial function and wherein the first set of noise function coefficients are coefficients of the first multivariate polynomial function.

5. The method defined in claim 4 , wherein the second noise function is a second multivariate polynomial function and wherein the second set of noise function coefficients are coefficients of the second multivariate polynomial function.

6. The method defined in claim 5 , wherein the third function is a third polynomial function and wherein the coefficients in the third set of coefficients are defined by respective polynomial functions of the noise variables, coefficients of the respective polynomial functions comprising the third part of the public cryptographic key.

7. The method defined in claim 6 , wherein each of the respective polynomial functions of the noise variables is a multivariate polynomial function of the noise variables.

8. The method defined in claim 6 , wherein the fourth function is a fourth polynomial function and wherein the coefficients in the fourth set of coefficients are defined by additional respective polynomial functions of the noise variables, coefficients of the additional respective polynomial functions comprising the fourth part of the public cryptographic key.

9. The method defined in claim 8 , wherein each of the additional respective polynomial functions of the noise variables is a multivariate polynomial function of the noise variables.

10. The method defined in claim 8 , wherein the coefficients of a given one of the respective polynomial functions are the coefficients of the terms resulting from cross-multiplication of a base polynomial and a first polynomial, and wherein the coefficients of a given one of the additional respective polynomial functions are the coefficients of the terms resulting from cross-multiplication of said base polynomial and a second polynomial.

11. The method defined in claim 10 , wherein the first and second polynomials are of order greater than one.

12. The method defined in claim 1 , further comprising outputting the signal via a graphical user interface or encoding the signal in a non-transitory storage medium.

13. The method defined in claim 1 , wherein selecting the plurality of noise variables comprises obtaining the noise variables from a pseudo-random number generator.

14. The method defined in claim 1 , wherein the computed data elements and the data elements of the digital signature obey the predetermined relationship when the data elements of the digital signature are derived from (i) the digital asset, (ii) a base data element and (iii) a private cryptographic key corresponding to the public key of the given sender.

15. The method defined in claim 1 , wherein the predetermined relationship is obeyed by the computed data elements and the data elements of the digital signature when the data elements of the digital signature include:

a first signature data element obtained by (i) computing a first quantity from the digital asset and a private cryptographic key corresponding to the public cryptographic key; and (ii) setting the first signature data element to equal a chosen base data element to the power of said first quantity;

a second signature data element obtained by (i) computing a second quantity from the digital asset and the private cryptographic key; and (ii) setting the second signature data element to equal the base data element to the power of said second quantity;

a third signature data element obtained by (i) computing a third quantity from the digital asset and the private cryptographic key; and (ii) setting the third signature data element to equal the base data element to the power of said third quantity;

a fourth signature data element obtained by (i) computing a fourth quantity from the digital asset and the private cryptographic key; and (ii) setting the fourth signature data element to equal the base data element to the power of said fourth quantity; and

a fifth signature data element obtained by (i) computing a fifth quantity from the digital asset and the private cryptographic key; and (ii) setting the fifth signature data element to equal the base data element to the power of said fifth quantity.

16. A non-transitory computer-readable storage medium comprising computer-readable instructions which, when executed by a processing entity of a computing apparatus, cause the computing apparatus to carry out operations to confirm provenance a received message purportedly sent by a given sender, the message comprising a digital asset and a digital signature, the digital signature comprising a plurality of data elements, the operations including:

obtaining a digital asset from the message;

obtaining a public cryptographic key of the given sender;

selecting a plurality of noise variables;

computing a plurality of data elements based on the digital asset, the noise variables and the public cryptographic key of the given sender;

evaluating whether the computed data elements and the data elements of the digital signature obey a predetermined relationship, the predetermined relationship being that A Q′ is equal to the product of B P′ , C N 0 , D N n and E, wherein A, B, C, D and E represent the data elements of the digital signature and wherein Q′, P′, N 0 and N n represent parts of the public cryptographic key;

in case the computed data elements and the data elements of the digital signature obey the predetermined relationship, generating a signal indicative of the message having been sent by the given sender, otherwise, generating a signal indicative of the message not having been sent by the given sender.

17. The non-transitory computer-readable storage medium defined in claim 16 , wherein obtaining the digital asset from the message comprises carrying out a cryptographic hash function.

18. The non-transitory computer-readable storage medium defined in claim 16 , wherein computing the plurality of data elements comprises:

computing a first data element as a first noise function of the noise variables, the first noise function defined by a first set of noise function coefficients comprising a first part of the public cryptographic key;

computing a second data element as a second noise function of the noise variables and of the digital asset, the second noise function defined by a second set of noise function coefficients comprising a second part of the public cryptographic key;

computing a third data element as a third function of the digital asset, the third function defined by a third set of coefficients derived from (i) the noise variables; and (ii) a third part of the public cryptographic key; and

computing a fourth data element as a fourth function of the digital asset, the fourth function defined by a fourth set of coefficients derived from (i) the noise variables; and (ii) a fourth part of the public cryptographic key.

19. The non-transitory computer-readable storage medium defined in claim 16 , the operations further comprising outputting the signal via a graphical user interface or encoding the signal in a non-transitory storage medium.

20. The non-transitory computer-readable storage medium defined in claim 16 , wherein selecting the plurality of noise variables comprises obtaining the noise variables from a pseudo-random number generator.

21. The non-transitory computer-readable storage medium defined in claim 16 , wherein the computed data elements and the data elements of the digital signature obey the predetermined relationship when the data elements of the digital signature are derived from (i) the digital asset, (ii) a base data element and (iii) a private cryptographic key corresponding to the public key of the given sender.

22. The non-transitory computer-readable storage medium defined in claim 16 , wherein the predetermined relationship is obeyed by the computed data elements and the data elements of the digital signature when the data elements of the digital signature include:

a first signature data element obtained by (i) computing a first quantity from the digital asset and a private cryptographic key corresponding to the public cryptographic key; and (ii) setting the first signature data element to equal a chosen base data element to the power of said first quantity;

a second signature data element obtained by (i) computing a second quantity from the digital asset and the private cryptographic key; and (ii) setting the second signature data element to equal the base data element to the power of said second quantity;

a third signature data element obtained by (i) computing a third quantity from the digital asset and the private cryptographic key; and (ii) setting the third signature data element to equal the base data element to the power of said third quantity;

a fourth signature data element obtained by (i) computing a fourth quantity from the digital asset and the private cryptographic key; and (ii) setting the fourth signature data element to equal the base data element to the power of said fourth quantity; and

a fifth signature data element obtained by (i) computing a fifth quantity from the digital asset and the private cryptographic key; and (ii) setting the fifth signature data element to equal the base data element to the power of said fifth quantity.

Assignments (3)
SECURITY INTEREST Recorded Nov 4, 2025
From: QUANTROPI INC.
To: DUNA TRANSPORTATION AND TOURISM DEVELOPMENT KORLATOLT FELELOSSEGU TARSASAG
Reel/Frame 072772/0517 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2022
From: KUANG, RANDY
To: QUANTROPI INC.
Reel/Frame 059675/0308 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2022
From: PEREPECHAENKO, MARIA
To: QUANTROPI INC.
Reel/Frame 059675/0312 →
Continuity (6)
Continuation In Part PCTCA2021050319 · Mar 10, 2021
Provisional Application 63286195 · Dec 6, 2021
Provisional Application 63252292 · Oct 5, 2021
Provisional Application 63235457 · Aug 20, 2021
Provisional Application 63214511 · Jun 24, 2021
Related Publication 20220311752A1 · Sep 29, 2022
Cited By (3)
US 12,192,318 US 12,627,480 US 12,712,724