Skip to main content
Log in

E\({^2}\)CSM: efficient FPGA implementation of elliptic curve scalar multiplication over generic prime field GF(p)

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Elliptic curve scalar multiplication (ECSM) is the primitive operation that is also the main computational hurdle in almost all protocols based on elliptic curve cryptography (ECC). This work proposes a novel ECSM hardware architecture by adopting several optimization strategies at circuit and system levels. On the circuit level, it is based on an efficient finite field multiplier that takes fewer clock cycles, produces low latency, and consumes fewer hardware resources. On the system level, Jacobian coordinates with the Montgomery laddering algorithm and a fast scheduling mechanism to execute group operations are adopted. The proposed ECSM design is synthesized and implemented targeting different FPGAs using Xilinx ISE Design Suite. It takes 1.01 ms on the Virtex-7 FPGA to compute a single ECSM operation, occupies 7.1K slices, and achieves 187 MHz frequency. This provides a 30% improvement in computational time with a significantly lower area-time product with better efficiency. Therefore, the proposed ECSM design is better optimized in terms of speed, area-time product, and throughput per slice and hence is suitable for many ECC applications.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

Availability of data and materials

It will be provided on request.

References

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

    Article  MathSciNet  Google Scholar 

  2. Koblitz N, Menezes A, Vanstone S (2000) The state of elliptic curve cryptography. Des Codes Cryptogr 19(2–3):173–193

    Article  MathSciNet  Google Scholar 

  3. Bos JW, Halderman JA, Heninger N, Moore J, Naehrig M, Wustrow E (2014) Elliptic curve cryptography in practice. In: International Conference on Financial Cryptography and Data Security. Springer, pp 157–175

  4. Miller VS (1985) Use of elliptic curves in cryptography. In: Conference on the Theory and Application of Cryptographic Techniques. Springer, pp 417–426

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

    Article  MathSciNet  Google Scholar 

  6. Diffie W, Hellman M (1976) New directions in cryptography. IEEE Trans Inf Theory 22(6):644–654

    Article  MathSciNet  Google Scholar 

  7. Barker E, Dang Q (2016) NIST special publication 800–57 part 1, revision 4. NIST Tech Rep

  8. Hankerson D, Menezes AJ, Vanstone S (2006) Guide to elliptic curve cryptography. Springer

    Google Scholar 

  9. Cohen H, Frey G, Avanzi R, Doche C, Lange T, Nguyen K, Vercauteren F (2005) Handbook of elliptic and hyperelliptic curve cryptography. CRC Press

    Book  Google Scholar 

  10. Bernstein DJ, Lange T (2007) Faster addition and doubling on elliptic curves. In: International Conference on the Theory and Application of Cryptology and Information Security. Springer, pp 29–50

  11. Montgomery PL (1985) Modular multiplication without trial division. Math Comput 44(170):519–521

    Article  MathSciNet  Google Scholar 

  12. Blakely GR (1983) A computer algorithm for calculating the product ab modulo m. IEEE Trans Comput 100(5):497–500

    Article  Google Scholar 

  13. Nejatollahi H, Dutt N, Ray S, Regazzoni F, Banerjee I, Cammarota R (2019) Post-quantum lattice-based cryptography implementations: a survey. ACM Comput Surv (CSUR) 51(6):1–41

    Article  Google Scholar 

  14. Jao D, Azarderakhsh R, Campagna M, Costello C, De Feo L, Hess B, Jalali A, Koziel B, LaMacchia B, Longa P et al (2017) Supersingular isogeny key encapsulation. Submission to the NIST Post-Quantum Standardization Project 154–155

  15. Anastasova M, Azarderakhsh R, Kermani MM (2021) Fast strategies for the implementation of SIKE round 3 on arm cortex-M4. IEEE Trans Circuits Syst I Regul Pap 68(10):4129–4141

    Article  Google Scholar 

  16. Ricci S, Malina L, Jedlicka P, Smékal D, Hajny J, Cibik P, Dzurenda P, Dobias P (2021) Implementing crystals-dilithium signature scheme on FPGAs. In: Proceedings of the 16th International Conference on Availability, Reliability and Security. pp 1–11

  17. Rezvani B, Coleman F, Sachin S, Diehl W (2019) Hardware implementations of NIST lightweight cryptographic candidates: a first look. Cryptology ePrint Archive

  18. Islam MM, Hossain MS, Hasan MK, Shahjalal M, Jang YM (2019) FPGA implementation of high-speed area-efficient processor for elliptic curve point multiplication over prime field. IEEE Access 7:178811–178826

    Article  Google Scholar 

  19. Asif S, Hossain MS, Kong Y (2017) High-throughput multi-key elliptic curve cryptosystem based on residue number system. IET Comput Digit Tech 11(5):165–172

    Article  Google Scholar 

  20. Shah YA, Javeed K, Azmat S, Wang X (2018) A high-speed RSD-based flexible ECC processor for arbitrary curves over general prime field. Int J Circuit Theory Appl 46(10):1858–1878

    Article  Google Scholar 

  21. Javeed K, Wang X (2017) Low latency flexible FPGA implementation of point multiplication on elliptic curves over GF(p). Int J Circuit Theory Appl 45(2):214–228

    Article  Google Scholar 

  22. Javeed K, Wang X, Scott M (2017) High-performance hardware support for elliptic curve cryptography over general prime field. Microprocess Microsyst 51:331–342

    Article  Google Scholar 

  23. Islam MM, Hossain MS, Hasan MK, Shahjalal M, Jang YM (2020) Design and implementation of high-performance ECC processor with unified point addition on twisted Edwards curve. Sensors 20(18):5148

    Article  Google Scholar 

  24. Hossain MS, Kong Y, Saeedi E, Vayalil NC (2016) High-performance elliptic curve cryptography processor over NIST prime fields. IET Comput Dig Tech 11(1):33–42

    Article  Google Scholar 

  25. Kudithi T (2020) An efficient hardware implementation of the elliptic curve cryptographic processor over prime field. Int J Circuit Theory Appl 48:1256

    Article  Google Scholar 

  26. Kudithi T, Sakthivel R (2019) High-performance ECC processor architecture design for IoT security applications. J Supercomput 75(1):447–474

    Article  Google Scholar 

  27. Javeed K (2016) Efficient hardware architecture for scalar multiplications on elliptic curves over prime field. PhD thesis, Dublin City University

  28. Ghosh S, Mukhopadhyay D, Roychowdhury D (2011) Petrel: power and timing attack resistant elliptic curve scalar multiplier based on programmable \({GF}\)(p) arithmetic unit. IEEE Trans Circuits Syst I Regul Pap 58(8):1798–1812

    Article  MathSciNet  Google Scholar 

  29. Hu X, Zheng X, Zhang S, Cai S, Xiong X (2018) A low hardware consumption elliptic curve cryptographic architecture over GF(p) in embedded application. Electronics 7(7):104

    Article  Google Scholar 

  30. Hu X, Zheng X, Zhang S, Li W, Cai S, Xiong X (2019) A high-performance elliptic curve cryptographic processor of SM2 over GF(p). Electronics 8(4):431

    Article  Google Scholar 

  31. Marzouqi H, Al-Qutayri M., Salah K, Schinianakis D, Stouraitis T (2015) A high-speed FPGA implementation of an RSD-based ECC processor. IEEE Trans Very Large Scale Integr (VLSI) Syst 24(1):151–164

    Article  Google Scholar 

  32. Marzouqi H, Al-Qutayri M, Salah K (2015) Review of elliptic curve cryptography processor designs. Microprocess Microsyst 39(2):97–112

    Article  Google Scholar 

  33. Javeed K, Wang X(2016) FPGA based high speed SPA resistant elliptic curve scalar multiplier architecture. Int J Reconfig Comput 2016:1–10

  34. Rashid M, Imran M, Jafri AR, Al-Somani TF (2019) Flexible architectures for cryptographic algorithms-a systematic literature review. J Circuits Syst Comput 28(03):1930003

    Article  Google Scholar 

  35. Bernstein DJ, Lange T et al (2013) Safecurves: choosing safe curves for elliptic-curve cryptography. Available online at http://safecurves.cr.yp.to

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

    Article  MathSciNet  Google Scholar 

  37. Bernstein DJ, Birkner P, Joye M, Lange T, Peters C (2008) Twisted Edwards curves. In: International Conference on Cryptology in Africa. Springer, pp 389–405

  38. Costello C, Smith B (2018) Montgomery curves and their arithmetic. J Cryptogr Eng 8(3):227–240

    Article  Google Scholar 

  39. Koç ÇK (2009) About cryptographic engineering. In: Cryptographic engineering. pp 1–4, Springer

  40. Kocher PC (1996) Timing attacks on implementations of Diffie-Hellman, RSA, DSS, and other systems. In: Annual International Cryptology Conference. Springer, pp 104–113

  41. Montgomery PL (1987) Speeding the pollard and elliptic curve methods of factorization. Math Comput 48(177):243–264

    Article  MathSciNet  Google Scholar 

  42. Ghosh S, Mukhopadhyay D, Roychowdhury D (2012) Secure dual-core cryptoprocessor for pairings over Barreto-Naehrig curves on FPGA platform. IEEE Trans Very Large Scale Integr (VLSI) Syst 21(3):434–442

    Article  Google Scholar 

  43. Ghosh S, Mukhopadhyay D, Chowdhury DR (2010) High-speed f p multipliers and adders on FPGA platform. In: 2010 Conference on Design and Architectures for Signal and Image Processing (DASIP). pp 21–26, IEEE

  44. Islam MM, Hossain MS, Shahjalal M, Hasan MK, Jang YM (2020) Area-time efficient hardware implementation of modular multiplication for elliptic curve cryptography. IEEE Access 8:73898–73906

    Article  Google Scholar 

  45. Javeed K, Saeed K, Gregg D (2022) High-speed parallel reconfigurable f p multipliers for elliptic curve cryptography applications. Int J Circuit Theory Appl 50(4):1160–1173

    Article  Google Scholar 

  46. Javeed K, Wang X (2014) Radix-4 and radix-8 booth encoded interleaved modular multipliers over general Fp. In: 2014 24th International Conference on Field Programmable Logic and Applications (FPL). pp 1–6, IEEE

  47. Javeed K, Wang X, Scott M (2015) Serial and parallel interleaved modular multipliers on FPGA platform. In: 2015 25th International Conference on Field Programmable Logic and Applications (FPL). pp 1–4, IEEE

  48. Hu X, Huang H, Zheng X, Liu Y, Xiong X (2021) Low-power reconfigurable architecture of elliptic curve cryptography for IoT. IEICE Trans Electron 104(11):643–650

    Article  Google Scholar 

  49. Awaludin AM, Larasati HT, Kim H (2021) High-speed and unified ECC processor for generic Weierstrass curves over GF (p) on FPGA. Sensors 21(4):1451

    Article  Google Scholar 

  50. Ding J, Li S (2017) Broken-karatsuba multiplication and its application to Montgomery modular multiplication. In: 2017 27th International Conference on Field Programmable Logic and Applications (FPL). pp 1–4, IEEE

  51. Schindler W, Wiemers A (2015) Efficient side-channel attacks on scalar blinding on elliptic curves with special structure. In: NIST Workshop on ECC standards

  52. Javeed K, El-Moursy A, Gregg D (2023) EC-Crypto:Highly Efficient Area-Delay Optimized Elliptic Curve Cryptography Processor, in IEEE Access. 11:56649–56662. https://doi.org/10.1109/ACCESS.2023.3282781

Download references

Funding

This work was supported by Science Foundation Ireland under Grant No. 13/RC/2094_P2, co-funded under the European Regional Development Fund through the Southern & Eastern Regional Operational Programme to Lero (Science Foundation Ireland Research Centre for Software), and has received funding from the European Union’s Horizon 2020 research and innovation program under the Marie Skłodowska-Curie Grant Agreement No 754489.

Author information

Authors and Affiliations

Authors

Contributions

KJ was responsible for implementation and manuscript preparation, AM helped in manuscript preparation and implementation, while DG pointed out several optimization strategies along with manuscript writing and proofreading.

Corresponding author

Correspondence to Khalid Javeed.

Ethics declarations

Conflict of interest

Financial interests are disclosed in funding. The authors declare no other competing interests for this work.

Ethical approval

Not applicable.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Javeed, K., El-Moursy, A. & Gregg, D. E\({^2}\)CSM: efficient FPGA implementation of elliptic curve scalar multiplication over generic prime field GF(p). J Supercomput 80, 50–74 (2024). https://doi.org/10.1007/s11227-023-05428-4

Download citation

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-023-05428-4

Keywords

Navigation