Efficient Techniques for High-Speed Elliptic Curve Cryptography

  • Patrick Longa
  • Catherine Gebotys
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6225)

Abstract

In this paper, a thorough bottom-up optimization process (field, point and scalar arithmetic) is used to speed up the computation of elliptic curve point multiplication and report new speed records on modern x86-64 based processors. Our different implementations include elliptic curves using Jacobian coordinates, extended Twisted Edwards coordinates and the recently proposed Galbraith-Lin-Scott (GLS) method. Compared to state-of-the-art implementations on identical platforms the proposed techniques provide up to 30% speed improvements. Additionally, compared to the best previous published results on similar platforms improvements up to 31% are observed. This research is crucial for advancing high speed cryptography on new emerging processor architectures.

Keywords

Elliptic curve cryptosystem point multiplication point operation field arithmetic incomplete reduction software implementation 

References

  1. 1.
    Avanzi, R.: A Note on the Signed Sliding Window Integer Recoding and its Left-to-Right Analogue. In: Handschuh, H., Hasan, M.A. (eds.) SAC 2004. LNCS, vol. 3357, pp. 130–143. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  2. 2.
    Bernstein, D., 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)CrossRefGoogle Scholar
  3. 3.
    Edwards, H.: A Normal Form for Elliptic Curves. Bulletin of the American Mathematical Society 44, 393–422 (2007)MATHCrossRefGoogle Scholar
  4. 4.
    Erdem, S.S., Yanik, T., Koç, Ç.K.: Fast Finite Field Multiplication. In: Koç, Ç.K. (ed.) Cryptographic Engineering, ch. 5. Springer, Heidelberg (2009)Google Scholar
  5. 5.
    Fog, A.: Instruction Tables: Lists of Instruction Latencies, Throughputs and Micro-operation Breakdowns for Intel, AMD and VIA CPUs (2009), http://www.agner.org/optimize/#manuals (accessed, January 2010)
  6. 6.
    Fog, A.: The Microarchitecture of Intel, AMD and VIA CPUs (2009), http://www.agner.org/optimize/#manuals (accessed, January 2010)
  7. 7.
    Galbraith, S., Lin, X., Scott, M.: Endomorphisms for Faster Elliptic Curve Cryptography on a Large Class of Curves. Cryptology ePrint Archive, Report 2008/194 (2008)Google Scholar
  8. 8.
    Galbraith, S., Lin, X., Scott, M.: Endomorphisms for Faster Elliptic Curve Cryptography on a Large Class of Curves. In: Joux, A. (ed.) EUROCRYPT 2009. LNCS, vol. 5479, pp. 518–535. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  9. 9.
    Gallant, R., Lambert, R., Vanstone, S.: Faster Point Multiplication on Elliptic Curves with Efficient Endomorphisms. In: Kilian, J. (ed.) CRYPTO 2001. LNCS, vol. 2139, pp. 190–200. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  10. 10.
    Gaudry, P., Thomé, E.: The mpFq Library and Implementing Curve-Based Key Exchanges. In: SPEED 2007, pp. 49–64 (2007)Google Scholar
  11. 11.
    Hankerson, D., Menezes, A., Scott, M.: Software Implementation of Pairings. In: Joye, M., Neven, G. (eds.) Identity-Based Cryptography, ch. 12. IOS Press, Amsterdam (2009)Google Scholar
  12. 12.
    Hankerson, D., Menezes, A., Vanstone, S.: Guide to Elliptic Curve Cryptography. Springer, Heidelberg (2004)MATHGoogle Scholar
  13. 13.
    Hisil, H., Wong, K., Carter, G., Dawson, E.: Twisted Edwards Curves Revisited. In: Pieprzyk, J. (ed.) ASIACRYPT 2008. LNCS, vol. 5350, pp. 326–343. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  14. 14.
    Hisil, H., Wong, K., Carter, G., Dawson, E.: Jacobi Quartic Curves Revisited. Cryptology ePrint Archive, Report 2009/312 (2009)Google Scholar
  15. 15.
    Longa, P.: Accelerating the Scalar Multiplication on Elliptic Curve Cryptosystems over Prime Fields. Master’s Thesis, University of Ottawa (2007), http://patricklonga.bravehost.com/publications.html#thesis
  16. 16.
    Longa, P.: ECC Point Arithmetic Formulae, EPAF (2008), http://patricklonga.bravehost.com/jacobian.html
  17. 17.
    Longa, P., Gebotys, C.: Setting Speed Records with the (Fractional) Multibase Non-Adjacent Form Method for Efficient Elliptic Curve Scalar Multiplication. CACR technical report, CACR 2008-06 (2008)Google Scholar
  18. 18.
    Longa, P., Gebotys, C.: Analysis of Efficient Techniques for Fast Elliptic Curve Cryptography on x86-64 based Processors (2010), http://patricklonga.bravehost.com/publications.html
  19. 19.
    Longa, P., Miri, A.: New Composite Operations and Precomputation Scheme for Elliptic Curve Cryptosystems over Prime Fields. In: Cramer, R. (ed.) PKC 2008. LNCS, vol. 4939, pp. 229–247. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  20. 20.
    Scott, M.: MIRACL - Multiprecision Integer and Rational Arithmetic C/C++ Library (1988-2007), ftp://ftp.computing.dcu.ie/pub/crypto/miracl.zip
  21. 21.
    Yanik, T., Savaş, E., Koç, Ç.K.: Incomplete Reduction in Modular Arithmetic. IEE Proc. of Computers and Digital Techniques 149(2), 46–52 (2002)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Patrick Longa
    • 1
  • Catherine Gebotys
    • 1
  1. 1.Department of Electrical and Computer EngineeringUniversity of WaterlooCanada

Personalised recommendations