skip to main content
research-article

Implementing Curve25519 for Side-Channel--Protected Elliptic Curve Cryptography

Authors Info & Claims
Published:04 November 2015Publication History
Skip Abstract Section

Abstract

For security-critical embedded applications Elliptic Curve Cryptography (ECC) has become the predominant cryptographic system for efficient key agreement and digital signatures. However, ECC still involves complex modular arithmetic that is a particular burden for small processors. In this context, Bernstein proposed the highly efficient ECC instance Curve25519 that particularly enables efficient software implementations at a security level comparable to AES-128 with inherent resistance to simple power analysis (SPA) and timing attacks. In this work, we show that Curve25519 is likewise competitive on FPGAs even when countermeasures to thwart side-channel power analysis are included. Our basic multicore DSP-based architectures achieves a maximal performance of more than 32,000 point multiplications per second on a Xilinx Zynq 7020 FPGA. Including a mix of side-channel countermeasures to impede simple and differential power analysis, we still achieve more than 27,500 point multiplications per second with a moderate increase in logic resources.

References

  1. ANSI X9.62-2005. 2005. American National Standard X9.62: The Elliptic Curve Digital Signature Algorithm (ECDSA). Technical Report. Accredited Standards Committee X9. Retrieved from http://www.x9.org.Google ScholarGoogle Scholar
  2. Daniel J. Bernstein. 2006. Curve25519: New Diffie-Hellman speed records. In Public Key Cryptography (Lecture Notes in Computer Science), Moti Yung, Yevgeniy Dodis, Aggelos Kiayias, and Tal Malkin (Eds.), Vol. 3958. Springer, 207--228. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Jean-Sébastien Coron. 1999. Resistance against differential power analysis for elliptic curve cryptosystems. In Cryptographic Hardware and Embedded Systems. Springer, 292--302. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Guerric Meurice de Dormale and Jean-Jacques Quisquater. 2007. High-speed hardware implementations of Elliptic curve cryptography: A survey. J. Syst. Archit. 53, 2--3 (2007), 72--84. DOI:http://dx.doi.org/10.1016/j.sysarc.2006.09.002 Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Elke De Mulder, Siddika Berna Örs, Bart Preneel, and Ingrid Verbauwhede. 2007. Differential power and electromagnetic attacks on a FPGA implementation of elliptic curve cryptosystems. Comput. Electr. Eng. 33, 5 (2007), 367--382. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. W. Diffie and M. Hellman. 1976. New directions in cryptography. IEEE Trans. Inf. Theory 22 (1976), 644--654. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. ECRYPT. 2007. eBATS: ECRYPT Benchmarking of Asymmetric Systems. Technical Report. Retrieved from http://www.ecrypt.eu.org/ebats/.Google ScholarGoogle Scholar
  8. T. ElGamal. 1985. A public key cryptosystem and a signature scheme based on discrete logarithms. IEEE Trans. Inf. Theory 31 (1985), 469--472. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Junfeng Fan and Ingrid Verbauwhede. 2012. An updated survey on secure ECC implementations: Attacks, countermeasures and cost. In Cryptography and Security: From Theory to Applications. Springer, 265--282. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Tim Güneysu and Christof Paar. 2008. Ultra high performance ECC over NIST primes on commercial FPGAs. In Proceedings of the Workshop on Cryptographic Hardware and Embedded Systems -- CHES 2008 (Lecture Notes in Computer Science), Vol. 5154. Springer-Verlag, 62--78. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. N. Koblitz. 1987. Elliptic curve cryptosystems. Math. Comp. 48 (1987), 203--209.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Paul Kocher, Joshua Jaffe, and Benjamin Jun. 1999. Differential power analysis. In Advances in Cryptology CRYPTO99. Springer, 388--397. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. A. K. Lenstra and E. R. Verheul. 2001. Selecting cryptographic key sizes. J. Cryptology 14, 4 (2001), 255--293. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Yuan Ma, Zongbin Liu, Wuqiong Pan, and Jiwu Jing. 2013. A High-speed elliptic curve cryptographic processor for generic curves over mathrm p. In Selected Areas in Cryptography. 421--437.Google ScholarGoogle Scholar
  15. Stefan Mangard, Elisabeth Oswald, and Thomas Popp. 2008. Power Analysis Attacks: Revealing the Secrets of Smart Cards. Vol. 31. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. C. McIvor, M. McLoone, and J. McCanny. 2004. An FPGA elliptic curve cryptographic accelerator over GF(p). In Irish Signals and Systems Conference (ISSC). 589--594.Google ScholarGoogle Scholar
  17. V. Miller. 1986. Uses of elliptic curves in cryptography. In Advances in Cryptology — CRYPTO'85, H. C. Williams (Ed.), Vol. LNCS 218. Springer-Verlag, Berlin, 417--426. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Peter L. Montgomery. 1987. Speeding the pollard and elliptic curve methods of factorization. Math. Comp. 48, 177 (1987), 243--264. DOI:http://dx.doi.org/10.2307/2007888Google ScholarGoogle ScholarCross RefCross Ref
  19. G. Orlando and C. Paar. 2001. A scalable GF(p) elliptic curve processor architecture for programmable hardware. In Cryptographic Hardware and Embedded Systems (CHES), Vol. LNCS 2162. 356--371. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Sıddıka Berna Ors, Lejla Batina, Bart Preneel, and Joos Vandewalle. 2003. Hardware implementation of an elliptic curve processor over GF (p). In Proceedings of the 2003 International Conference on Application-Specific Systems, Architectures, and Processors. IEEE, 433--443.Google ScholarGoogle ScholarCross RefCross Ref
  21. Kazuo Sakiyama, Nele Mentens, Lejla Batina, Bart Preneel, and Ingrid Verbauwhede. 2006. Reconfigurable modular arithmetic logic unit for high-performance public-key cryptosystems. In ARC (Lecture Notes in Computer Science), Koen Bertels, João M. P. Cardoso, and Stamatis Vassiliadis (Eds.), Vol. 3985. Springer, 347--357.Google ScholarGoogle Scholar
  22. Pascal Sasdrich and Tim Güneysu. 2014. Efficient elliptic-curve cryptography using Curve25519 on reconfigurable devices. In Reconfigurable Computing: Architectures, Tools, and Applications, Diana Goehringer, MarcoDomenico Santambrogio, JooM.P. Cardoso, and Koen Bertels (Eds.). Lecture Notes in Computer Science, Vol. 8405. Springer International Publishing, 25--36. DOI:http://dx.doi.org/10.1007/978-3-319-05960-0_3Google ScholarGoogle Scholar

Index Terms

  1. Implementing Curve25519 for Side-Channel--Protected Elliptic Curve Cryptography

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          • Published in

            cover image ACM Transactions on Reconfigurable Technology and Systems
            ACM Transactions on Reconfigurable Technology and Systems  Volume 9, Issue 1
            Special Section on the 2014 International Symposium on Applied Reconfigurable Computing
            November 2015
            121 pages
            ISSN:1936-7406
            EISSN:1936-7414
            DOI:10.1145/2839314
            • Editor:
            • Steve Wilton
            Issue’s Table of Contents

            Copyright © 2015 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 4 November 2015
            • Accepted: 1 December 2014
            • Revised: 1 October 2014
            • Received: 1 July 2014
            Published in trets Volume 9, Issue 1

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article
            • Research
            • Refereed

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader