Parallelized Software Implementation of Elliptic Curve Scalar Multiplication

  • Jean-Marc RobertEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8957)


Recent developments of multicore architectures over various platforms (desktop computers and servers as well as embedded systems) challenge the classical approaches of sequential computation algorithms, in particular elliptic curve cryptography protocols. In this work, we deploy different parallel software implementations of elliptic curve scalar multiplication of point, in order to improve the performances in comparison with the sequential counter parts, taking into account the multi-threading synchronization, scalar recoding and memory management issues. Two thread and four thread algorithms are tested on various curves over prime and binary fields, they provide improvement ratio of around 15 % in comparison with their sequential counterparts.


Elliptic curve cryptography Parallel algorithm Efficient software implementation 



We would like to thank Christophe Nègre for his valuable and helpful comments.

This work has been suported by a PHD grant from PAVOIS project (ANR 12 BS02 002 01).


  1. 1.
    Explicit formula database (2014).
  2. 2.
    Bernstein, D.J.: Curve25519: new Diffie-Hellman speed records. In: Yung, M., Dodis, Y., Kiayias, A., Malkin, T. (eds.) PKC 2006. LNCS, vol. 3958, pp. 207–228. Springer, Heidelberg (2006) CrossRefGoogle Scholar
  3. 3.
    Bernstein, D.J., Lange, T. (eds): eBACS: ECRYPT Benchmarking of Cryptograhic Systems (2012). Accessed 25 May 2014
  4. 4.
    Billet, O., Joye, M.: The Jacobi model of an elliptic curve and side-channel analysis. In: Fossorier, Marc P.C., Høholdt, Tom, Poli, Alain (eds.) AAECC 2003. LNCS, vol. 2643, pp. 34–42. Springer, Heidelberg (2003) CrossRefGoogle Scholar
  5. 5.
    Fong, K., Hankerson, D., López, J., Menezes, A.: Field inversion and point halving revisited. IEEE Trans. Comput. 53(8), 1047–1059 (2004)CrossRefGoogle Scholar
  6. 6.
    Granlund, T., The GMP Development Team: GNU MP: The GNU Multiple Precision Arithmetic Library, 5.0.5 edition (2012).
  7. 7.
    Hamburg, M.: Fast and compact elliptic-curve cryptography. Technical report, Cryptology ePrint Archive, Report 2012/309 (2012).
  8. 8.
    Hankerson, D., Hernandez, J.L., Menezes, A.: Software implementation of elliptic curve cryptography over binary fields. In: Paar, C., Koç, Ç.K. (eds.) CHES 2000. LNCS, vol. 1965, pp. 1–24. Springer, Heidelberg (2000) CrossRefGoogle Scholar
  9. 9.
    Hankerson, D., Menezes, A., Vanstone, S.: Guide to Elliptic Curve Cryptography. Springer, New York (2004)zbMATHGoogle Scholar
  10. 10.
    Itoh, T., Tsujii, S.: A fast algorithm for computing multiplicative inverses in GF(\(2^m\)) using normal bases. Inf. Comput. 78(3), 171–177 (1988)CrossRefzbMATHMathSciNetGoogle Scholar
  11. 11.
    Kim, K.H., Kim, S.I.: A new method for speeding up arithmetic on elliptic curves over binary fields. D.P.R. of Korea, Technical report, National Academy of Science, Pyongyang(2007)Google Scholar
  12. 12.
    Knudsen, E.W.: Elliptic scalar multiplication using point halving. In: Lam, K.-Y., Okamoto, E., Xing, C. (eds.) ASIACRYPT 1999. LNCS, vol. 1716, pp. 135–149. Springer, Heidelberg (1999) CrossRefGoogle Scholar
  13. 13.
    Langley, A.: C25519 code (2008).
  14. 14.
    Longa, P., Gebotys, C.: Efficient techniques for high-speed elliptic curve cryptography. In: Mangard, S., Standaert, F.-X. (eds.) CHES 2010. LNCS, vol. 6225, pp. 80–94. Springer, Heidelberg (2010) CrossRefGoogle Scholar
  15. 15.
    Moreno, C., Hasan, M.A.: SPA-resistant binary exponentiation with optimal execution time. J. Cryptographic Eng. 1(2), 87–99 (2011)CrossRefGoogle Scholar
  16. 16.
    Mueller, F.: A library implementation of POSIX threads under UNIX. In: USENIX Winter, pp. 29–42 (1993)Google Scholar
  17. 17.
    Nègre, C., Robert, J.-M.: Impact of optimized field operations AB, AC and AB + CD in scalar multiplication over binary elliptic curve. Technical report hal-00724785, HAL, July 2014Google Scholar
  18. 18.
    Gallagher, P., Furlani, C.: Digital Signature Standard (DSS). In: FIPS Publications, vol. FIPS 186-3, p. 93. NIST (2009)Google Scholar
  19. 19.
    Tannenbaum, A.S.: Modern Operating Systems (2009).
  20. 20.
    Taverne, J., Faz-Hernández, A., Aranha, D.F., Rodríguez-Henríquez, F., Hankerson, D., López, J.: Speeding scalar multiplication over binary elliptic curves using the new carry-less multiplication instruction. J. Cryptographic Eng. 1(3), 187–199 (2011)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.Team DALIUniversité de PerpignanPerpignanFrance
  2. 2.LIRMM, UMR 5506Université Montpellier 2 and CNRSMontpellierFrance

Personalised recommendations