Abstract
In this work, an elliptic curve cryptography (ECC) processor is proposed to be used in the Internet of Things (IoT) devices. The ECC processor is designed based on Edwards curves defined over the finite prime fields \(GF((2^{13}-1)^{13})\), \(GF((2^{17}-1)^{17})\), and \(GF((2^{19}-1)^{19})\). Modular multiplication in the proposed ECC processor is carried out in the frequency domain using a Discrete Fourier Transform (DFT) modular multiplier. Different base field adders and base field multipliers are designed and utilized in the design of the DFT modular multiplier. The ECC processor is described and functionally tested using the VHDL language and the simulation tool in the Xilinx ISE14.2. Furthermore, the ECC processor is synthesized using the synthesis tool in the Xilinx ISE14.2, targeting the Virtex-5 FPGA family. Our synthesis results show that the proposed ECC processor achieves higher speed with minor area penalty compared to the similar work in the literature.
Similar content being viewed by others
Availability of data and materials
None.
Code availability
None.
References
Morales-Sandoval, M., Flores, L.A.R., Cumplido, R., Garcia-Hernandez, J.J., Feregrino, C., Algredo, I.: A compact fpga-based accelerator for curve-based cryptography in wireless sensor networks. J. Sens. 2021, 8860413 (2021). https://doi.org/10.1155/2021/8860413
Mosenia, A., Jha, N.K.: A comprehensive study of security of internet-of-things. IEEE Trans. Emerg. Topics Comput. 5(4), 586–602 (2017). https://doi.org/10.1109/TETC.2016.2606384
Joglekar, J., Bhutani, S., Patel, N., Soman, P.: Lightweight elliptical curve cryptography (ecc) for data integrity and user authentication in smart transportation iot system. In: Karrupusamy, P. (ed.) Sustainable Communication Networks and Application, pp. 270–278. Springer, Berlin (2020)
Hammi, B., Fayad, A., Khatoun, R., Zeadally, S., Begriche, Y.: A lightweight ecc-based authentication scheme for internet of things (iot). IEEE Syst. J. 14(3), 3440–3450 (2020). https://doi.org/10.1109/JSYST.2020.2970167
Di Matteo, S., Baldanzi, L., Crocetti, L., Nannipieri, P., Fanucci, L., Saponara, S.: Secure elliptic curve crypto-processor for real-time iot applications. Energies (2021). https://doi.org/10.3390/en14154676
Dhillon, P.K., Kalra, S.: Elliptic curve cryptography for real time embedded systems in iot networks. In: 2016 5th International conference on wireless networks and embedded systems (WECON), pp. 1–6 (2016). https://doi.org/10.1109/WECON.2016.7993462
Liu, Z., Seo, H.: Iot-nums: evaluating nums elliptic curve cryptography for iot platforms. IEEE Trans. Inf. Forensics Sec. 14(3), 720–729 (2019). https://doi.org/10.1109/TIFS.2018.2856123
Manifavas, C., Hatzivasilis, G., Fysarakis, K., Rantos, K.: Lightweight cryptography for embedded systems—a comparative analysis. In: Data Privacy Management and Autonomous Spontaneous Security, pp. 333–349 (2014)
Meiklejohn, S., Erway, C.C., Küpçü, A., Hinkle, T., Lysyanskaya, A.: \(\{\)ZKPDL\(\}\): A \(\{\)Language-Based\(\}\) system for efficient \(\{\)Zero-Knowledge\(\}\) proofs and electronic cash. In: USENIX Security Symposium (2010)
Yeh, L.-Y., Chen, P.-J., Pai, C.-C., Liu, T.-T.: An energy-efficient dual-field elliptic curve cryptography processor for internet of things applications. IEEE Trans. Circuits Syst. II 67(9), 1614–1618 (2020). https://doi.org/10.1109/TCSII.2020.3012448
Miller, V.S.: Use of elliptic curves in cryptography. In: Williams, H.C. (ed.) Advances in Cryptology—CRYPTO ’85 Proceedings, pp. 417–426. Springer, Berlin, Heidelberg (1986)
Koblitz, N.: Elliptic curve cryptosystems. Math. Comput. 48(177), 203–209 (1987)
Bos, J.W., Costello, C., Longa, P., Naehrig, M.: Selecting elliptic curves for cryptography: an efficiency and security analysis. J. Cryptograph. Eng. 6(4), 259–286 (2016). https://doi.org/10.1007/s13389-015-0097-y
Baktir, S., Kumar, S.S., Paar, C., Sunar, B.: A state-of-the-art elliptic curve cryptographic processor operating in the frequency domain. MONET 12(4), 259–270 (2007). https://doi.org/10.1007/s11036-007-0022-4
Bos, J., Kaihara, M., Kleinjung, T., Lenstra, A.K., Montgomery, P.L.: On the security of 1024-bit rsa and 160-bit elliptic curve cryptography. Cryptology ePrint Archive, Report 2009/389 (2009)
Kocaogullar, C., Yıldırım, K., Sakaogulları, M.A., Küpçü, A.: Basgit: A secure digital epassport alternative. In: ISCTURKEY (2021)
Taheri-Boshrooyeh, S., Küpçü, A., Özkasap, Ö.: Security and privacy of distributed online social networks. In: 2015 IEEE 35th international conference on distributed computing systems workshops, pp. 112–119 (2015). IEEE
Yüksel, B., Küpçü, A., Özkasap, Ö.: Research issues for privacy and security of electronic health services. Future Gener. Comput. Syst. 68, 1–13 (2017)
Edwards, H.: A normal form for elliptic curves. Bull. Am. Math. Soc. 44, 393–423 (2007). https://doi.org/10.1090/S0273-0979-07-01153-6
Abarzúa, R., Martínez, S., Mendoza, V., Thériault, N.: Same value analysis on Edwards curves. J. Cryptograph. Eng. 10(1), 27–48 (2020). https://doi.org/10.1007/s13389-019-00206-6
Bernstein, D.J.: Curve25519: New diffie-hellman speed records. In: PKC, pp. 207–228 (2006)
Bernstein, D.J., Hamburg, M., Krasnova, A., Lange, T.: Elligator: Elliptic-curve points indistinguishable from uniform random strings. In: ACM CCS, pp. 967–980 (2013)
Hamburg, M.: Ed448-goldilocks, a new elliptic curve. IACR Cryptol. ePrint Arch. 2015, 625 (2015)
Renes, J., Costello, C., Batina, L.: Complete addition formulas for prime order elliptic curves. In: EUROCRYPT, pp. 403–428 (2016)
Martínez, S., Sadornil, D., Tena, J., Tomàs, R., Valls, M.: On edwards curves and zvp-attacks. Appl. Algebra Eng. Commun. Comput. 24(6), 507–517 (2013)
Bos, J.W., Halderman, J.A., Heninger, N., Moore, J., Naehrig, M., Wustrow, E.: Elliptic curve cryptography in practice. In: Financial Cryptography and Data Security, pp. 157–175 (2014)
Faugère, J.-C., Perret, L., Petit, C., Renault, G.: Improving the complexity of index calculus algorithms in elliptic curves over binary fields. In: EUROCRYPT, pp. 27–44 (2012)
Gandolfi, K., Mourtel, C., Olivier, F.: Electromagnetic analysis: concrete results. In: CHES, pp. 251–261 (2001)
Cooley, J.W., Tukey, J.W.: An algorithm for the machine calculation of complex Fourier series. Math. Comput. 19(90), 297–301 (1965)
Schönhage, A., Strassen, V.: Schnelle multiplikation großer zahlen. Computing 7(3), 281–292 (1971)
Fürer, M.: Faster integer multiplication. SIAM J. Comput. 39(3), 979–1005 (2009)
Baktır, S., Sunar, B.: Finite field polynomial multiplication in the frequency domain with application to elliptic curve cryptography. In: ISCIS, pp. 991–1001 (2006)
Chen, J., Liu, P., Zhao, H., Zhang, C., Zhang, J.: Analytical studying the axial performance of fully encapsulated rock bolts. Eng. Failure Anal. 128, 105580 (2021). https://doi.org/10.1016/j.engfailanal.2021.105580
Wu, S.-L., Al-Khaleel, M.D.: Optimized waveform relaxation methods for rc circuits: discrete case. ESAIM M2AN 51(1), 209–223 (2017). https://doi.org/10.1051/m2an/2016061
Chen, J., Li, D.: Numerical simulation of fully encapsulated rock bolts with a tri-linear constitutive relation. Tunn. Undergr. Space Technol. 120, 104265 (2022). https://doi.org/10.1016/j.tust.2021.104265
Wu, S.-L., Al-Khaleel, M.D.: Semi-discrete Schwarz waveform relaxation algorithms for reaction diffusion equations. BIT Numer. Math. 54(3), 831–866 (2014). https://doi.org/10.1007/s10543-014-0475-3
Bernstein, D.J., Lange, T.: Faster addition and doubling on elliptic curves. In: Kurosawa, K. (ed.) ASIACRYPT, pp. 29–50 (2007)
Mentens, N., Batina, L., Baktir, S.: An elliptic curve cryptographic processor using edwards curves and the number theoretic transform. In: BalkanCryptSec, pp. 94–102 (2014). https://doi.org/10.1007/978-3-319-21356-9_7
Verri Lucca, A., Mariano Sborz, G.A., Leithardt, V.R.Q., Beko, M., Albenes Zeferino, C., Parreira, W.D.: A review of techniques for implementing elliptic curve point multiplication on hardware. J. Sens. Actuator Netw. 10(1), 3 (2021)
Absar, S., Hossain, M., Kong, Y.: Efficient hardware implementation of modular arithmetic and group operation over prime field. Internet Things Cloud Comput. 7(1), 31–38 (2019). https://doi.org/10.11648/j.iotcc.20190701.15
Ding, J., Li, S., Gu, Z.: High-speed ecc processor over nist prime fields applied with toom-cook multiplication. IEEE Trans. Circuits Syst. I 66(3), 1003–1016 (2019). https://doi.org/10.1109/TCSI.2018.2878598
Hossain, M.R., Hossain, M.S.: Efficient fpga implementation of modular arithmetic for elliptic curve cryptography. In: 2019 International conference on electrical, computer and communication engineering (ECCE), pp. 1–6 (2019). https://doi.org/10.1109/ECACE.2019.8679419
Javeed, K., Wang, X.: Low latency flexible fpga implementation of point multiplication on elliptic curves over gf(p). I. J. Circuit Theory Appl. 45(2), 214–228 (2017)
Kudithi, T., Sakthivel, R.: An efficient hardware implementation of the elliptic curve cryptographic processor over prime field. Int. J. Circuit Theory Appl. 48(8), 1256–1273 (2020)
Hu, X., Zheng, X., Zhang, S., Li, W., Cai, S., Xiong, X.: A high-performance elliptic curve cryptographic processor of sm2 over gf(p). Electronics 8, 431 (2019). https://doi.org/10.3390/electronics8040431
Bailey, D.V., Paar, C.: Optimal extension fields for fast arithmetic in public-key algorithms. In: CRYPTO, pp. 472–485 (1998)
Bailey, D.V., Paar, C.: Efficient arithmetic in finite field extensions with application in elliptic curve cryptography. J. Cryptol. 14(3), 153–176 (2001)
Awaludin, A.M., Larasati, H.T., Kim, H.: High-speed and unified ecc processor for generic weierstrass curves over gf(p) on fpga. Sensors 21(4), 1251 (2021)
Al-Khaleel, O., Baktır, S., Küpçü, A.: Fpga implementation of an ecc processor using edwards curves and dft modular multiplication. In: 2021 12th International conference on information and communication systems (ICICS), pp. 344–351 (2021). https://doi.org/10.1109/ICICS52457.2021.9464611
Esiner, E., Küpçü, A., Özkasap, Ö.: Analysis and optimization on flexdpdp: A practical solution for dynamic provable data possession. In: International conference on intelligent cloud computing, pp. 65–83 (2014). Springer
Esiner, E., Kachkeev, A., Braunfeld, S., Küpçü, A., Özkasap, Ö.: Flexdpdp: flexlist-based optimized dynamic provable data possession. ACM Trans. Storage (TOS) 12(4), 1–44 (2016)
Etemad, M., Küpçü, A.: Generic dynamic data outsourcing framework for integrity verification. ACM Comput. Surv. (CSUR) 53(1), 1–32 (2020)
Acknowledgements
Alptekin Küpçü acknowledges support from TÜBİTAK, the Scientific and Technological Research Council of Turkey, project 119E088. Osama Al-Khaleel acknowledges support from JUST-Deanship of Research, project 20190201. Osama Al-Khaleel acknowledges the support from XILINX University Program to Jordan University of Science and Technology (JUST).
Funding
Alptekin Küpçü acknowledges support from TÜBİTAK, the Scientific and Technological Research Council of Turkey, project 119E088. Osama Al-Khaleel acknowledges support from JUST-Deanship of Research, project 20190201.
Author information
Authors and Affiliations
Contributions
All authors have been personally and actively involved in substantial work leading to the paper, and will take public responsibility for its content.
Corresponding author
Ethics declarations
Conflict of interest
All authors declare tha they have no conflict of interest.
Ethical approval
The work presented in this paper is a valuable extension to our work presented in 12th International Conference on Information and Communication Systems (ICICS2021). In this journal version, we extend our proposal to cover higher security levels, modify our solution to also work over the finite prime fields \(GF((2^{17}-1)^{17})\) and \(GF((2^{19}-1)^{19})\) in addition to \(GF((2^{13}-1)^{13})\), and perform and report extended. performance and area measurements. The paper is not currently being considered for publication elsewhere. The paper reflects the authors’ own research and analysis in a truthful and complete manner. The results are appropriately placed in the context of prior and existing research. All sources used are properly disclosed (correct citation).
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Al-Khaleel, O., Baktir, S. & Küpçü, A. An ECC processor for IoT using Edwards curves and DFT modular multiplication. Cluster Comput 26, 1063–1075 (2023). https://doi.org/10.1007/s10586-022-03611-5
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10586-022-03611-5