Skip to main content

Efficient Finite Field Multiplication for Isogeny Based Post Quantum Cryptography

  • Conference paper
  • First Online:
Arithmetic of Finite Fields (WAIFI 2016)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10064))

Included in the following conference series:

Abstract

Isogeny based post-quantum cryptography is one of the most recent addition to the family of quantum resistant cryptosystems. In this paper we propose an efficient modular multiplication algorithm for primes of the form \(p=2\cdot {2^a}3^b-1\) with b even, typically used in such cryptosystem. Our modular multiplication algorithm exploits the special structure present in such primes. We compare the efficiency of our technique with Barrett reduction and Montgomery multiplication. Our C implementation shows that our algorithm is approximately 3 times faster than the normal Barrett reduction.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. De Feo, L., Jao, D., Plût, J.: Towards quantum-resistant cryptosystems from supersingular elliptic curve isogenies. https://eprint.iacr.org/2011/506.pdf

  2. Shor, P.W.: Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM J. Comput. 26(5), 1484–1509 (1997). arXiv:quant-ph/9508027v2

    Article  MathSciNet  MATH  Google Scholar 

  3. Montgomery, P.: Modular multiplication without trial division 44, 519–521 (1985) http://www.ams.org/journals/mcom/1985-44-170/S0025-5718-1985-0777282-X/home.html

  4. Solinas, J.A.: Generalized Mersenne prime. In: van Tilborg, H.C.A., Jajodia, S. (eds.) Encyclopedia of Cryptography and Security, pp. 509–510. Springer US, New York City (2011)

    Google Scholar 

  5. Solinas, J.A.: Mersenne prime. In: van Tilborg, H.C.A. (ed.) Encyclopedia of Cryptography and Security, pp. 774–775. Springer, US, New York City (2011)

    Google Scholar 

  6. Solinas, J.A.: Pseudo-Mersenne prime. In: van Tilborg, H.C.A., Jajodia, S. (eds.) Encyclopedia of Cryptography and Security, pp. 992–992. Springer US, New York City (2011)

    Google Scholar 

  7. Barrett, P.: Implementing the rivest shamir and adleman public key encryption algorithm on a standard digital signal processor. In: Odlyzko, A.M. (ed.) CRYPTO 1986. LNCS, vol. 263, pp. 311–323. Springer, Heidelberg (1987). doi:10.1007/3-540-47721-7_24

    Google Scholar 

  8. Childs, A., Jao, D., Soukharev, V.: Constructing elliptic curve isogenies in quantum subexponential time (2010). http://arxiv.org/abs/1012.4019/

  9. Dinechin, F., Didier, L.-S.: Table-based division by small integer constants. In: Choy, O.C.S., Cheung, R.C.C., Athanas, P., Sano, K. (eds.) ARC 2012. LNCS, vol. 7199, pp. 53–63. Springer, Heidelberg (2012). doi:10.1007/978-3-642-28365-9_5

    Chapter  Google Scholar 

  10. Donald, K.: The Art of Computer Programming, vol. 2. Addison-Wesley, Boston. Chapter 4

    Google Scholar 

  11. Galbraith, S., Stolbunov, A.: Improved algorithm for the isogeny problem for ordinary elliptic curves. Appl. Algebra Eng. Commun. Comput. 24(2), 107–137 (2013)

    Article  MathSciNet  MATH  Google Scholar 

  12. Silverman, J.H.: The Arithmetic of Elliptic Curves. Graduate Texts in Mathematics, vol. 106. Springer, New York (2009)

    MATH  Google Scholar 

  13. Stolbunov, A.: Constructing public-key cryptographic schemes based on class group action on a set of isogenous elliptic curves. Adv. Math. Commun. 4(2), 215–235 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  14. Jao, D., Soukharev, V.: Isogeny-based quantum-resistant undeniable signatures. In: Mosca, M. (ed.) PQCrypto 2014. LNCS, vol. 8772, pp. 160–179. Springer, Heidelberg (2014). doi:10.1007/978-3-319-11659-4_10

    Google Scholar 

  15. Charles, D.X., Lauter, K.E., Goren, E.Z.: Cryptographic hash functions from expander graphs. J. Cryptol. 22(1), 93–113 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  16. Tani, S.: Claw Finding Algorithms Using Quantum Walk, March 2008. http://arxiv.org/abs/0708.2584

  17. Microsoft predicts practical quantum computers within 10 years. http://www.ibtimes.co.uk/microsoft-predicts-practical-quantum-computers-within-10-years-1524268

  18. McEliece, R.J.: A public-key cryptosystem based on algebraic coding theory. DSN Prog. Rep. 44, 114–116 (1978)

    Google Scholar 

  19. Ding, J., Schmidt, D.: Rainbow, a new multivariable polynomial signature scheme. In: Ioannidis, J., Keromytis, A., Yung, M. (eds.) ACNS 2005. LNCS, vol. 3531, pp. 164–175. Springer, Heidelberg (2005). doi:10.1007/11496137_12

    Chapter  Google Scholar 

  20. Recommended elliptic curves for federal government use. http://csrc.nist.gov/groups/ST/toolkit/documents/dss/NISTReCur.pdf

  21. The GNU multiple precision arithmetic library. https://gmplib.org/

  22. The PARI/GP computer algebra system. http://pari.math.u-bordeaux.fr/

Download references

Acknowlegments

A. Karmakar and S. Sinha Roy were supported by Erasmus Mundus PhD Scholarship. This work was supported in part by the Research Council KU Leuven: C16/15/058. In addition, this work was supported in part by iMinds, the Flemish Government, FWO G.0550.12N, G.00130.13N and FWO G.0876.14N, by the Hercules Foundation AKUL/11/19, and by the European Commission through the Horizon 2020 research and innovation programme under contract No. H2020-ICT-2014-644371 WITDOM, and H2020-ICT-2014-644209 HEAT, and H2020-ICT-2014-645622 PQCRYPTO.

We would also like to thank Carl Bootland for his help in proof checking the manuscript.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Angshuman Karmakar .

Editor information

Editors and Affiliations

Appendices

A An Example

In this section we provide a small example of the method described in the paper.

Let \(a=22\),and \(b=16\) so that the prime is \(p=2\cdot 2^a\cdot 3^b-1=361102068154367\), \(n=2^a\cdot 3^b=180551034077184\), \(\sqrt{n}=13436928\)

\(A=128965951662196\ =0*n\ +\ 9597874*\sqrt{n}\ +\ 971124\), and

\(B=230338429880123\ =1*n\ +\ 3705266*\sqrt{n}\ +\ 334009\)

After executing the first stage of the multiplication algorithm, we reached \(A\times B = C=C_1n+C_2\sqrt{n}+C_3\) with \(C_1=0,\ C_2= 68262390904455,\ C_3=50417786320088 \). We have to reduce \(C_2\) and \(C_3\) further by dividing them using \(\sqrt{n}\). Using our Barrett division algorithm we found \(C_3=3752181*\sqrt{n}+ 380120\), we set the remainder 380120 to \(C_3\) and add the quotient with \(C_2\). We again divide \(C_2\) with \(\sqrt{n}\)

\(C_2=68262390904455+3752181= 68262394656636\)

\(C_2=5080208*\sqrt{n}+ 5535612\), we set the remainder to \(C_2\) and add the quotient with \(C_1\) to get \(C_1=5080208\).

As \(C_1\pmod {2}=0\), we add \(C_1/2=2540104\) to \(C_3\) to get \(C_3=380120+2540104=2920224\).

Here \(C_3\) is smaller than \(\sqrt{n}\) and there is no overflow. So we stop our algorithm here. Finally, we get the result as \(C=0*n+5535612*\sqrt{n}+2920224=74381622800160\), which is indeed \(A\times B\pmod {p}\).

B Application in Isogeny Based Post-quantum Key Exchange Protocol

The isogeny based post-quantum protocol, described in Sect. 3 works by computing and applying isogenies over supersingular elliptic curve groups. These operations are fundamentally field arithmetic operations over the field \(\mathbb {F}_{p^2}\), where the curve is defined.

Here we want to mention that modular addition and subtraction is also easy in our representation. Let’s say we want to add two numbers \(A, B\in \mathbb {F}_p\) to get the sum \(C=(a_1+b_1)\cdot {n}+(a_2+b_2)\cdot \sqrt{n}+(a_3+b_3)=C_1\cdot {n}+ C_2\cdot {\sqrt{n}+c_3}\) for convenience we have assumed \(n=2^a3^b\). Here again, similar to multiplication algorithm, \(C_1, C_2\) and \(C_3\) may not be consistent with our representation as given in Eq. (1). To make C consistent with our representation we follow steps 23 to 36 of Algorithm 4. But here we do not have to use the division Algorithm 3, only a subtraction by \(2^{a/2}3^{b/2}\) will suffice. For subtraction we first negate a number \(B\in \mathbb {F}_p\) as \(-B=p-b=(1-b_1)\cdot {n}+(\sqrt{n}-1-b_1)\cdot {\sqrt{n}+(\sqrt{n}-1-b_3)}\) followed by an addition.

To apply our method to the isogeny based key exchange algorithm as mentioned in Sect. 3.1, we changed the representation of the public parameters in the beginning of the algorithm and executed the algorithm. In the last step we changed the representation back to the original form and matched both Alice and Bob’s j-invariant.

To further test the correctness of the algorithm we ran an instance of the unmodified algorithm with same parameter set and numbers m and n. We verified that both executions produce identical results.

C List of Primes

In this section we list values for a and b for security level of around 256 bit and 512 bit. We found these values by a simple brute-force search using a C implementation. As mentioned before the prime is \(p=2\cdot {2^a3^b}+k\), with the value of \(\log _2(3^b)\) close to a. The primality has been tested using GMP [21] and PARI/GP [22]. Also we should mention that this list is not exhaustive (Tables 2 and 3).

Table 2. Table for primes with around 256 bit PQ security
Table 3. Table for primes with around 512 bit PQ security

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing AG

About this paper

Cite this paper

Karmakar, A., Roy, S.S., Vercauteren, F., Verbauwhede, I. (2016). Efficient Finite Field Multiplication for Isogeny Based Post Quantum Cryptography. In: Duquesne, S., Petkova-Nikova, S. (eds) Arithmetic of Finite Fields. WAIFI 2016. Lecture Notes in Computer Science(), vol 10064. Springer, Cham. https://doi.org/10.1007/978-3-319-55227-9_14

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-55227-9_14

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-55226-2

  • Online ISBN: 978-3-319-55227-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics