Annual International Conference on the Theory and Applications of Cryptographic Techniques

EUROCRYPT 2009: Advances in Cryptology - EUROCRYPT 2009 pp 483-501

ECM on Graphics Cards

  • Daniel J. Bernstein
  • Tien-Ren Chen
  • Chen-Mou Cheng
  • Tanja Lange
  • Bo-Yin Yang
Conference paper

DOI: 10.1007/978-3-642-01001-9_28

Volume 5479 of the book series Lecture Notes in Computer Science (LNCS)
Cite this paper as:
Bernstein D.J., Chen TR., Cheng CM., Lange T., Yang BY. (2009) ECM on Graphics Cards. In: Joux A. (eds) Advances in Cryptology - EUROCRYPT 2009. EUROCRYPT 2009. Lecture Notes in Computer Science, vol 5479. Springer, Berlin, Heidelberg

Abstract

This paper reports record-setting performance for the elliptic-curve method of integer factorization: for example, 926.11 curves/second for ECM stage 1 with B1 = 8192 for 280-bit integers on a single PC. The state-of-the-art GMP-ECM software handles 124.71 curves/second for ECM stage 1 with B1 = 8192 for 280-bit integers using all four cores of a 2.4 GHz Core 2 Quad Q6600.

The extra speed takes advantage of extra hardware, specifically two NVIDIA GTX 295 graphics cards, using a new ECM implementation introduced in this paper. Our implementation uses Edwards curves, relies on new parallel addition formulas, and is carefully tuned for the highly parallel GPU architecture. On a single GTX 295 the implementation performs 41.88 million modular multiplications per second for a general 280-bit modulus. GMP-ECM, using all four cores of a Q6600, performs 13.03 million modular multiplications per second.

This paper also reports speeds on other graphics processors: for example, 2414 280-bit elliptic-curve scalar multiplications per second on an older NVIDIA 8800 GTS (G80), again for a general 280-bit modulus. For comparison, the CHES 2008 paper “Exploiting the Power of GPUs for Asymmetric Cryptography” reported 1412 elliptic-curve scalar multiplications per second on the same graphics processor despite having fewer bits in the scalar (224 instead of 280), fewer bits in the modulus (224 instead of 280), and a special modulus (2224 − 296 + 1).

Keywords

Factorizationgraphics processing unitmodular arithmeticelliptic curveselliptic-curve method of factorizationEdwards curves
Download to read the full conference paper text

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Daniel J. Bernstein
    • 1
  • Tien-Ren Chen
    • 2
  • Chen-Mou Cheng
    • 3
  • Tanja Lange
    • 4
  • Bo-Yin Yang
    • 2
  1. 1.Department of Computer ScienceUniversity of Illinois at ChicagoChicagoUSA
  2. 2.Institute of Information ScienceAcademia SinicaTaipeiTaiwan
  3. 3.Department of Electrical EngineeringNational Taiwan UniversityTaipeiTaiwan
  4. 4.Department of Mathematics and Computer ScienceTechnische Universiteit EindhovenEindhovenNetherlands