Skip to main content

How to Construct CSIDH on Edwards Curves

  • Conference paper
  • First Online:
Topics in Cryptology – CT-RSA 2020 (CT-RSA 2020)

Part of the book series: Lecture Notes in Computer Science ((LNSC,volume 12006))

Included in the following conference series:

Abstract

CSIDH is an isogeny-based key exchange protocol proposed by Castryck, Lange, Martindale, Panny, and Renes in 2018. CSIDH is based on the ideal class group action on \(\mathbb {F}_p\)-isomorphism classes of Montgomery curves. In order to calculate the class group action, we need to take points defined over \(\mathbb {F}_{p^2}\). The original CSIDH algorithm requires a calculation over \(\mathbb {F}_p\) by representing points as x-coordinate over Montgomery curves. Meyer and Reith proposed a faster CSIDH algorithm in 2018 which calculates isogenies on Edwards curves by using a birational map between a Montgomery curve and an Edwards curve. There is a special coordinate on Edwards curves (the w-coordinate) to calculate group operations and isogenies. If we try to calculate the class group action on Edwards curves by using the w-coordinate in a similar way on Montgomery curves, we have to consider points defined over \(\mathbb {F}_{p^4}\). Therefore, it is not a trivial task to calculate the class group action on Edwards curves with w-coordinates over only \(\mathbb {F}_p\).

In this paper, we prove a number of theorems on the properties of Edwards curves. By using these theorems, we extend the CSIDH algorithm to that on Edwards curves with w-coordinates over \(\mathbb {F}_p\). This algorithm is as fast as (or a little bit faster than) the algorithm proposed by Meyer and Reith.

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. Azarderakhsh, R., et al.: Supersingular isogeny key encapsulation. Submission to the NIST Post-Quantum Standardization Project (2017)

    Google Scholar 

  2. Bernstein, D.J., Birkner, P., Joye, M., Lange, T., Peters, C.: Twisted edwards curves. In: Vaudenay, S. (ed.) AFRICACRYPT 2008. LNCS, vol. 5023, pp. 389–405. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-68164-9_26

    Chapter  Google Scholar 

  3. Bernstein, D.J., Lange, T.: Faster addition and doubling on elliptic curves. In: Kurosawa, K. (ed.) ASIACRYPT 2007. LNCS, vol. 4833, pp. 29–50. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-76900-2_3

    Chapter  Google Scholar 

  4. Castryck, W., Lange, T., Martindale, C., Panny, L., Renes, J.: CSIDH: an efficient post-quantum commutative group action. In: Peyrin, T., Galbraith, S. (eds.) ASIACRYPT 2018. LNCS, vol. 11274, pp. 395–427. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-03332-3_15

    Chapter  Google Scholar 

  5. Cervantes-Vázquez, D., Chenu, M., Chi-Domínguez, J.-J., De Feo, L., Rodríguez-Henríquez, F., Smith, B.: Stronger and faster side-channel protections for CSIDH. In: Schwabe, P., Thériault, N. (eds.) LATINCRYPT 2019. LNCS, vol. 11774, pp. 173–193. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-30530-7_9

    Chapter  Google Scholar 

  6. Costello, C., Hisil, H.: A simple and compact algorithm for sidh with arbitrary degree isogenies. In: Takagi, T., Peyrin, T. (eds.) ASIACRYPT 2017. LNCS, vol. 10625, pp. 303–329. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-70697-9_11

    Chapter  Google Scholar 

  7. Costello, C., Smith, B.: Montgomery curves and their arithmetic: the case of large characteristic fields. IACR Cryptology ePrint Archive, 2017:212 (2017). https://ia.cr/2017/212

  8. Delfs, C., Galbraith, S.D.: Computing isogenies between supersingular elliptic curves over \(\mathbb{F}_p\). Designs Codes Cryptogr. 78, 425–440 (2016)

    Article  MathSciNet  Google Scholar 

  9. Edwards, H.: A normal form for elliptic curves. Bull. Am. Math. Soc. 44, 393–422 (2007)

    Article  MathSciNet  Google Scholar 

  10. Farashahi, R.R., Hosseini, S.G.: Differential addition on twisted edwards curves. In: Pieprzyk, J., Suriadi, S. (eds.) ACISP 2017. LNCS, vol. 10343, pp. 366–378. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-59870-3_21

    Chapter  Google Scholar 

  11. Hisil, H., Wong, K.K.-H., Carter, G., Dawson, E.: Twisted Edwards curves revisited. In: Pieprzyk, J. (ed.) ASIACRYPT 2008. LNCS, vol. 5350, pp. 326–343. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-89255-7_20

    Chapter  Google Scholar 

  12. Jao, D., De Feo, L.: Towards quantum-resistant cryptosystems from supersingular elliptic curve isogenies. In: Yang, B.-Y. (ed.) PQCrypto 2011. LNCS, vol. 7071, pp. 19–34. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-25405-5_2

    Chapter  MATH  Google Scholar 

  13. Kim, S., Yoon, K., Park, Y.-H., Hong, S.: Optimized method for computing odd-degree isogenies on Edwards curves. IACR Cryptology ePrint Archive, 2019:110 (2019). https://ia.cr/2019/110. (to appear at ASIACRYPT 2019)

  14. Koblitz, N.: Elliptic curve cryptosystems. Math. Comput. 48, 203–209 (1987)

    Article  MathSciNet  Google Scholar 

  15. Meyer, M., Campos, F., Reith, S.: On lions and elligators: an efficient constant-time implementation of CSIDH. In: Ding, J., Steinwandt, R. (eds.) PQCrypto 2019. LNCS, vol. 11505, pp. 307–325. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-25510-7_17

    Chapter  Google Scholar 

  16. Meyer, M., Reith, S.: A faster way to the CSIDH. In: Chakraborty, D., Iwata, T. (eds.) INDOCRYPT 2018. LNCS, vol. 11356, pp. 137–152. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-05378-9_8

    Chapter  Google Scholar 

  17. Miller, V.S.: Use of elliptic curves in cryptography. In: Williams, H.C. (ed.) CRYPTO 1985. LNCS, vol. 218, pp. 417–426. Springer, Heidelberg (1986). https://doi.org/10.1007/3-540-39799-X_31

    Chapter  Google Scholar 

  18. Montgomery, P.L.: Speeding the pollard and elliptic curve methods of factorization. Math. Comput. 48, 243–264 (1987)

    Article  MathSciNet  Google Scholar 

  19. Moody, D., Shumow, D.: Analogues of Vélu’s formulas for isogenies on alternate models of elliptic curves. Math. Comput. 85, 1929–1951 (2016)

    Article  Google Scholar 

  20. Moriya, T., Onuki, H., Takagi, T.: How to construct CSIDH on Edwards curves. IACR Cryptology ePrint Archive, 2019:843 (2019). https://ia.cr/2019/843

  21. National Institute of Standards and Technology. Post-quantum cryptography standardization, December 2016. https://csrc.nist.gov/Projects/Post-Quantum-Cryptography/Post-Quantum-Cryptography-Standardization

  22. Onuki, H., Aikawa, Y., Yamazaki, T., Takagi, T.: (Short Paper) A faster constant-time algorithm of CSIDH keeping two points. In: Attrapadung, N., Yagi, T. (eds.) IWSEC 2019. LNCS, vol. 11689, pp. 23–33. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-26834-3_2

    Chapter  Google Scholar 

  23. Rivest, R.L., Shamir, A., Adleman, L.: A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM 21, 120–126 (1978)

    Article  MathSciNet  Google Scholar 

  24. Shor, P.W.: Algorithms for quantum computation: discrete logarithms and factoring. In: Proceedings 35th Annual Symposium on Foundations of Computer Science, pp. 124–134. IEEE (1994)

    Google Scholar 

  25. Shor, P.W.: Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM Rev. 41, 303–332 (1999)

    Article  MathSciNet  Google Scholar 

  26. Silverman, J.H.: The Arithmetic of Elliptic Curves, vol. 106. Springer, Heidelberg (2009). https://doi.org/10.1007/978-0-387-09494-6

    Book  MATH  Google Scholar 

  27. Vélu, J.: Isogénies entre courbes elliptiques. CR Acad. Sci. Paris Sér. A 305–347 (1971)

    Google Scholar 

  28. Waterhouse, W.C.: Abelian varieties over finite fields. In: Annales scientifiques de l’École Normale Supérieure, pp. 521–560 (1969)

    Google Scholar 

Download references

Acknowlegements

This work was supported by JST CREST Grant Number JPMJCR14D6, Japan.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Tomoki Moriya .

Editor information

Editors and Affiliations

A Compute group operations and isogenies

A Compute group operations and isogenies

Here, we explain how to compute group operations and isogenies on Montgomery curves and Edwards curves.

1.1 A.1 Montgomery curves

The doublings formula (1) can be computed as

$$ t_1\leftarrow X+Z,\quad t_2\leftarrow X-Z,\quad t_1\leftarrow t_1^2,\quad t_2 \leftarrow t_2^2,\quad s\leftarrow t_1-t_2,\quad t_2\leftarrow t_2\cdot (4C), $$
$$ X' \leftarrow t_1 \cdot t_2,\quad t_1 \leftarrow (A+2C)\cdot s,\quad t_1 \leftarrow t_1+t_2, \quad Z'\leftarrow s\cdot t_1. $$

If \(Z=1\), the doublings formula (1) can be computed as

$$ t_1\leftarrow X+1,\quad t_1\leftarrow t_1^2,\quad s \leftarrow 2\cdot X,\quad s \leftarrow 2\cdot s,\quad t_2 \leftarrow t_1-s,\quad t_2\leftarrow t_2\cdot (4C), $$
$$ X' \leftarrow t_1 \cdot t_2,\quad t_1 \leftarrow (A+2C)\cdot s,\quad t_1 \leftarrow t_1+t_2, \quad Z'\leftarrow s\cdot t_1. $$

The addition formula (2) can be computed as

$$ t_1\leftarrow X_1+Z_1,\quad s_1 \leftarrow X_2+Z_2,\quad t_2 \leftarrow X_1-Z_1,\quad s_2 \leftarrow X_2-Z_2,\quad t\leftarrow t_1\cdot s_2, $$
$$ s \leftarrow t_2\cdot s_1,\quad X_3\leftarrow t+s,\quad Z_3 \leftarrow t-s,\quad X_3\leftarrow X_3^2\cdot Z_0,\quad Z_3\leftarrow Z_3^2\cdot X_0. $$

The formula for calculating \(\phi (P)\) (3) can be computed as

$$ t_i\leftarrow X_i+Z_i,\quad s_i\leftarrow X_i-Z_i,\quad t_i\leftarrow t_i\cdot (X-Z),\quad s_i\leftarrow s_i\cdot (X+Z), $$
$$ X'\leftarrow \prod _{i=1}^s(t_i-s_i),\quad Z'\leftarrow \prod _{i=1}^s(t_i+s_i),\quad X'\leftarrow X\cdot (X')^2,\quad Z'\leftarrow Z\cdot (Z')^2. $$

The formula for calculating \(E'\) (4) can be computed as

$$ c\leftarrow 2\cdot C,\quad a\leftarrow A+c, \quad d\leftarrow A-c, \quad a'\leftarrow \prod _{i=1}^s(X_i+Z_i), $$
$$ d'\leftarrow \prod _{i=1}^s(X_i-Z_i),\quad a'\leftarrow (a')^4, \quad d'\leftarrow (d')^4, \quad a'\leftarrow a^s\cdot a',\quad d'\leftarrow d^s \cdot d', $$
$$ \quad a'\leftarrow a \cdot (a')^2,\quad d'\leftarrow d \cdot (d')^2, \quad A'\leftarrow 2\cdot (a'+d'),\quad C'\leftarrow a'-d'. $$

1.2 A.2 Edwards curves

The doublings formula (6) can be computed as

$$ t_1\leftarrow Y^2,\quad t_2\leftarrow Z^2,\quad t_3\leftarrow C-D,\quad t_4 \leftarrow t_2-t_1,\quad t_1\leftarrow t_3\cdot t_1,\quad t_5\leftarrow C\cdot t_4, $$
$$ t_6 \leftarrow t_1+t_5, \quad t_6 \leftarrow t_4\cdot t_6,\quad t_1 \leftarrow t_1\cdot t_2, \quad Y'\leftarrow t_1-t_6, \quad Z'\leftarrow t_1+t_6. $$

If \(Z=1\), the doublings formula (6) can be computed as

$$ t_1\leftarrow Y^2,\quad t_3\leftarrow C-D,\quad t_4 \leftarrow 1-t_1,\quad t_1\leftarrow t_3\cdot t_1,\quad t_5\leftarrow C\cdot t_4, $$
$$ t_6 \leftarrow t_1+t_5, \quad t_6 \leftarrow t_4\cdot t_6, \quad Y'\leftarrow t_1-t_6, \quad Z'\leftarrow t_1+t_6. $$

The addition formula (7) can be computed as

$$ t_1\leftarrow Y_1\cdot Z_2,\quad t_2 \leftarrow Y_2 \cdot Z_1,\quad s_1 \leftarrow t_1+t_2,\quad s_2 \leftarrow t_1-t_2,\quad s_1 \leftarrow s_1^2,\quad s_2\leftarrow s_2^2, $$
$$ s_1 \leftarrow (Z_0-Y_0)\cdot s_1,\quad s_2\leftarrow (Z_0+Y_0)\cdot s_2, \quad Y_3 \leftarrow s_1-s_2,\quad Z_3 \leftarrow s_1+s_2. $$

The formula for calculating \(\phi (P)\) (8) can be computed as

$$ t_i\leftarrow Z\cdot Y_i,\quad t'_i\leftarrow Z_i\cdot Y,\quad s_1\leftarrow \prod _{i=1}^s(t_i+t'_i),\quad s_2\leftarrow \prod _{i=1}^s(t_i-t'_i),\quad s_1\leftarrow s_1^2, $$
$$ s_2\leftarrow s_2^2,\quad s_1 \leftarrow (Z+Y)\cdot s_1, \quad s_2 \leftarrow (Z-Y)\cdot s_2, \quad Y'\leftarrow s_1-s_2,\quad Z'\leftarrow s_1+s_2. $$

The formula for calculating \(E'\) (9) can be computed as

$$ D'\leftarrow \prod _{i=1}^sY_i,\quad C'\leftarrow \prod _{i=1}^sZ_i,\quad D'\leftarrow (D')^4, \quad C'\leftarrow (C')^4, $$
$$ D'\leftarrow D^s\cdot D',\quad C'\leftarrow C^s \cdot C',\quad D'\leftarrow D \cdot (D')^2,\quad C'\leftarrow C \cdot (C')^2. $$

The formulas (10, 11, 12) can be computed similarly as the formulas on Montgomery curves. The formula for calculating \(E'\) (13) can be computed as

$$ D'\leftarrow \prod _{i=1}^s(W_i+Z_i),\quad C'\leftarrow \prod _{i=1}^sZ_i,\quad D'\leftarrow (D')^4, \quad C'\leftarrow (C')^4, $$
$$ D'\leftarrow D^s\cdot D',\quad C'\leftarrow (2\cdot 2 \cdot 2 \cdot 2\cdot C)^s \cdot C',\quad D'\leftarrow D \cdot (D')^2,\quad C'\leftarrow C \cdot (C')^2. $$

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Moriya, T., Onuki, H., Takagi, T. (2020). How to Construct CSIDH on Edwards Curves. In: Jarecki, S. (eds) Topics in Cryptology – CT-RSA 2020. CT-RSA 2020. Lecture Notes in Computer Science(), vol 12006. Springer, Cham. https://doi.org/10.1007/978-3-030-40186-3_22

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-40186-3_22

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-40185-6

  • Online ISBN: 978-3-030-40186-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics