High-performance ECC processor architecture design for IoT security applications

  • Thirumalesu Kudithi
  • R. SakthivelEmail author


In recent years, the usage of elliptic curve cryptography (ECC) in IoT applications is steadily increasing. The end nodes in IoT applications demand optimized device performance in terms of reduced power consumption and improved computing speed while not compromising on the security of the connected devices. ECC provides better security standards compared with many conventional cryptographic algorithms providing further scope to optimize the performance parameters. This work focuses on improving the key parameters like computing speed, area required for hardware implementation of ECC and demonstrates an efficient way of using the hardware resource sharing and scheduling mechanisms in elliptic curve group operations in affine coordinates which is crucial for implementation of scalar multiplication over prime field \(\mathbb {F}_{p}\). With the proposed scalar multiplication hardware architecture, we have achieved a good area-delay product and a significant reduction in cycle count when compared with other reported designs using the same affine coordinates. The proposed architecture has been implemented with 256 bits in both Xilinx Kintex-7 and Virtex-7 FPGA devices. The FPGA synthesis results show that a throughput of 68.52 kbps at a clock frequency of 124.2 MHz is achieved for \(\mathbb {F}_{256}\) and the computation time is reduced around 1 ms without using any DSP slices.


Elliptic curve cryptography (ECC) Elliptic curve scalar multiplication (ECSM) Field programmable gate arrays (FPGA) Internet of Things (IoT) 


  1. 1.
    Liu Z, Seo H (2019) IoT-NUMS: evaluating NUMS elliptic curve cryptography for IoT platforms. IEEE Trans Inf Forensics Secur 14(3):720CrossRefGoogle Scholar
  2. 2.
    Kumari S, Karuppiah M, Das AK, Li X, Wu F, Kumar N (2017) A secure authentication scheme based on elliptic curve cryptography for IoT and cloud servers. J Supercomput.
  3. 3.
    Marin L, Pawlowski MP, Jara A (2015) Optimized ECC implementation for secure communication between heterogeneous IoT devices. Sensors 15(9):21478CrossRefGoogle Scholar
  4. 4.
    Suárez-Albela M, Fernández-Caramés TM, Fraga-Lamas P, Castedo L (2017) A practical evaluation of a high-security energy-efficient gateway for IoT fog computing applications. Sensors 17(9):1CrossRefGoogle Scholar
  5. 5.
    Sklavos N, Zhang X (2000) Wireless security and cryptography specifications and implementations. CRC Press, Boca RatonzbMATHGoogle Scholar
  6. 6.
    Lenstra HW (1987) Factoring integers with elliptic curves. Ann Math 126(3):649MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    Koblitz N (1987) Elliptic curve cryptosystems. Math Comput 48(177):203MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Miller VS (1985) Use of elliptic curves in cryptography. in Conference on the Theory and Application of Cryptographic Techniques (Springer), pp 417–426Google Scholar
  9. 9.
    Hazmi IH, Zhou F, Gebali F, Al-Somani TF (2015) Review of elliptic curve processor architectures. In: 2015 IEEE Pacific Rim Conference on Communications, Computers and Signal Processing (PACRIM), (IEEE), pp 192–200Google Scholar
  10. 10.
    Marzouqi H, Al-Qutayri M, Salah K (2015) Review of elliptic curve cryptography processor designs. Microprocess Microsyst 39(2):97CrossRefGoogle Scholar
  11. 11.
    Afreen R, Mehrotra S (2011) A review on elliptic curve cryptography for embedded systems. arXiv preprint arXiv:1107.3631
  12. 12.
    Karthikeyan E (2012) Survey of elliptic curve scalar multiplication algorithms. Int J Adv Netw Appl 4(2):1581Google Scholar
  13. 13.
    Kerry M (2016) RSA vs ECC comparison for embedded systems, white paper. RSA vs ECC comparison for embedded systems, white paper. White paper, Atmel, Accessed 12 June 2016
  14. 14.
    Azarderakhsh R, Järvinen KU, Mozaffari-Kermani M (2014) Efficient algorithm and architecture for elliptic curve cryptography for extremely constrained secure applications. IEEE Trans Circuits Syst I Regul Papers 61(4):1144CrossRefGoogle Scholar
  15. 15.
    Hossain MS, Kong Y, Saeedi E, Vayalil NC (2016) High-performance elliptic curve cryptography processor over NIST prime fields. IET Comput Digital Tech 11(1):33CrossRefGoogle Scholar
  16. 16.
    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 Papers 58(8):1798MathSciNetCrossRefGoogle Scholar
  17. 17.
    Javeed K, Wang X (2016) FPGA based high speed SPA resistant elliptic curve scalar multiplier architecture. Int J Reconfig Comput 2016:2CrossRefGoogle Scholar
  18. 18.
    Varchola M, Guneysu T, Mischke O (2011) MicroECC: a lightweight reconfigurable elliptic curve crypto-processor. In: 2011 International Conference on Reconfigurable Computing and FPGAs (ReConFig), (IEEE), pp 204–210Google Scholar
  19. 19.
    Loi KCC, Ko SB (2015) Scalable elliptic curve cryptosystem FPGA processor for NIST prime curves. IEEE Trans Very Large Scale Integr (VLSI) Syst 23(11):2753Google Scholar
  20. 20.
    Ananyi K, Alrimeih H, Rakhmatov D (2009) Flexible hardware processor for elliptic curve cryptography over NIST prime fields. IEEE Trans Very Large Scale Integr (VLSI) Syst 17(8):1099Google Scholar
  21. 21.
    Marzouqi H, Al-Qutayri M, Salah K (2013) An FPGA implementation of NIST 256 prime field ECC processor. In: 2013 IEEE 20th International Conference on Electronics, Circuits, and Systems (ICECS), IEEE, pp 493–496Google Scholar
  22. 22.
    Marzouqi H, Al-Qutayri M, Salah K, Saleh H (2016) A 65nm ASIC based 256 NIST prime field ECC processor. In: 2016 IEEE 59th International Midwest Symposium on Circuits and Systems (MWSCAS), IEEE, pp 1–4Google Scholar
  23. 23.
    Vliegen J, Mentens N, Genoe J, Braeken A, Kubera S, Touhafi A, Verbauwhede I (2010) A compact FPGA-based architecture for elliptic curve cryptography over prime fields. In: 2010 21st IEEE International Conference on Application-Specific Systems Architectures and Processors (ASAP), IEEE, pp 313–316Google Scholar
  24. 24.
    Mentens N, Sakiyama K, Batina L, Preneel B, Verbauwhede I (2007) A side-channel attack resistant programmable PKC coprocessor for embedded applications. In: IC-SAMOS 2007, International Conference on Embedded Computer Systems: Architectures, Modeling and Simulation, 2007, (IEEE), pp 194–200Google Scholar
  25. 25.
    Sakiyama K, Mentens N, Batina L, Preneel B, Verbauwhede I (2006) Reconfigurable modular arithmetic logic unit for high-performance public-key cryptosystems. In: International Workshop on Applied Reconfigurable Computing, Springer, pp 347–357Google Scholar
  26. 26.
    McIvor CJ, McLoone M, McCanny JV (2006) Hardware elliptic curve cryptographic processor over \( rm\,GF (p) \). IEEE Trans Circuits Syst I: Regul Papers 53(9):1946Google Scholar
  27. 27.
    Loi KC, Ko SB (2018) Flexible elliptic curve cryptography coprocessor using scalable finite field arithmetic blocks on FPGAs. Microprocess Microsyst 63:182CrossRefGoogle Scholar
  28. 28.
    Fan J, Sakiyama K, Verbauwhede I (2008) Elliptic curve cryptography on embedded multicore systems. Des Autom Embed Syst 12(3):231CrossRefGoogle Scholar
  29. 29.
    Sec 2 ( 2010) Recommended elliptic curve domain parameters, standards for efficient cryptography, certicom research. Technical report. Accessed 20 Apr 2016
  30. 30.
    Cryptographic key length recommendation, bluekrypt. Technical report. (2017). Accessed 3 Mar 2017
  31. 31.
    Gallagher P (2013) Digital signature standard (DSS). Federal Information Processing Standards Publications, volume FIPS, pp 186–3Google Scholar
  32. 32.
    Behrouz FA (2007) Cryptography and network security. Tata McGraw Hill, New York CityGoogle Scholar
  33. 33.
    Hankerson D, Vanstone S, Menezes A (2004) Guide to elliptic curve cryptography. Springer, BerlinzbMATHGoogle Scholar
  34. 34.
    Renes J, Costello C, Batina L (2016) Complete addition formulas for prime order elliptic curves. In: Annual International Conference on the Theory and Applications of Cryptographic Techniques. Springer, pp 403–428Google Scholar
  35. 35.
    Bos JW, Alex Halderman J, Heninger N, Moore J, Naehrig M, Wustrow E (2013) Elliptic curve cryptography in practice. IACR Cryptology ePrint Archive.
  36. 36.
    Daly A, Marnane W, Kerins T, Popovici E (2004) An FPGA implementation of a GF (p) ALU for encryption processors. Microprocess Microsyst 28(5–6):253CrossRefGoogle Scholar
  37. 37.
    Montgomery PL (1985) Modular multiplication without trial division. Math Comput 44(170):519MathSciNetCrossRefzbMATHGoogle Scholar
  38. 38.
    Vahid F, Givargis T (1999) Embedded system design: a unified hardware/software approach. Wiley, HobokenGoogle Scholar
  39. 39.
    Vahid F (2007) Verilog for digital design. Wiley, HobokenGoogle Scholar
  40. 40.
    Vahid F (2011) Digital design with RTL design, VHDL, and Verilog. Wiley, HobokenGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2019

Authors and Affiliations

  1. 1.School of Electronics EngineeringVITVelloreIndia

Personalised recommendations