Design and Implementation of High-Performance ECC Processor with Unified Point Addition on Twisted Edwards Curve

With the swift evolution of wireless technologies, the demand for the Internet of Things (IoT) security is rising immensely. Elliptic curve cryptography (ECC) provides an attractive solution to fulfill this demand. In recent years, Edwards curves have gained widespread acceptance in digital signatures and ECC due to their faster group operations and higher resistance against side-channel attacks (SCAs) than that of the Weierstrass form of elliptic curves. In this paper, we propose a high-speed, low-area, simple power analysis (SPA)-resistant field-programmable gate array (FPGA) implementation of ECC processor with unified point addition on a twisted Edwards curve, namely Edwards25519. Efficient hardware architectures for modular multiplication, modular inversion, unified point addition, and elliptic curve point multiplication (ECPM) are proposed. To reduce the computational complexity of ECPM, the ECPM scheme is designed in projective coordinates instead of affine coordinates. The proposed ECC processor performs 256-bit point multiplication over a prime field in 198,715 clock cycles and takes 1.9 ms with a throughput of 134.5 kbps, occupying only 6543 slices on Xilinx Virtex-7 FPGA platform. It supports high-speed public-key generation using fewer hardware resources without compromising the security level, which is a challenging requirement for IoT security.

[1]  Chen Li,et al.  A Novel Efficient Pairing-Free CP-ABE Based on Elliptic Curve Cryptography for IoT , 2018, IEEE Access.

[2]  Tanja Lange,et al.  High-speed high-security signatures , 2011, Journal of Cryptographic Engineering.

[3]  Simon Josefsson,et al.  Edwards-Curve Digital Signature Algorithm (EdDSA) , 2017, RFC.

[4]  Xianghong Hu,et al.  A Low Hardware Consumption Elliptic Curve Cryptographic Architecture over GF(p) in Embedded Application , 2018, Electronics.

[5]  Ingrid Verbauwhede,et al.  Elliptic-Curve-Based Security Processor for RFID , 2008, IEEE Transactions on Computers.

[6]  Marc Joye,et al.  Weierstraß Elliptic Curves and Side-Channel Attacks , 2002, Public Key Cryptography.

[7]  Kyung Sup Kwak,et al.  Certificateless Remote Anonymous Authentication Schemes for WirelessBody Area Networks , 2014, IEEE Transactions on Parallel and Distributed Systems.

[8]  Jue-Sam Chou An efficient mutual authentication RFID scheme based on elliptic curve cryptography , 2013, The Journal of Supercomputing.

[9]  Xiaojun Wang,et al.  FPGA Based High Speed SPA Resistant Elliptic Curve Scalar Multiplier Architecture , 2016, Int. J. Reconfigurable Comput..

[10]  Sherali Zeadally,et al.  Anonymous Authentication for Wireless Body Area Networks With Provable Security , 2017, IEEE Systems Journal.

[11]  Hannes Tschofenig,et al.  Securing the Internet of Things: A Standardization Perspective , 2014, IEEE Internet of Things Journal.

[12]  Arash Reyhani-Masoleh,et al.  New Regular Radix-8 Scheme for Elliptic Curve Scalar Multiplication without Pre-Computation , 2015, IEEE Transactions on Computers.

[13]  Máire O'Neill,et al.  Hardware Elliptic Curve Cryptographic Processor Over$rm GF(p)$ , 2006, IEEE Transactions on Circuits and Systems I: Regular Papers.

[14]  Ingrid Verbauwhede,et al.  Reconfigurable Modular Arithmetic Logic Unit for High-Performance Public-Key Cryptosystems , 2006, ARC.

[15]  Md. Selim Hossain,et al.  FPGA Implementation of High-Speed Area-Efficient Processor for Elliptic Curve Point Multiplication Over Prime Field , 2019, IEEE Access.

[16]  Dipanwita Roy Chowdhury,et al.  Parallel crypto-devices for GF(p) elliptic curve multiplication resistant against side channel attacks , 2009, Comput. Electr. Eng..

[17]  Md. Selim Hossain,et al.  Area-Time Efficient Hardware Implementation of Modular Multiplication for Elliptic Curve Cryptography , 2020, IEEE Access.

[18]  Hsie-Chia Chang,et al.  Efficient Power-Analysis-Resistant Dual-Field Elliptic Curve Cryptographic Processor Using Heterogeneous Dual-Processing-Element Architecture , 2014, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[19]  H. Edwards A normal form for elliptic curves , 2007 .

[20]  Eun-Jun Yoon,et al.  Secure Signature-Based Authenticated Key Establishment Scheme for Future IoT Applications , 2017, IEEE Access.

[21]  William P. Marnane,et al.  A Hardware Analysis of Twisted Edwards Curves for an Elliptic Curve Cryptosystem , 2009, ARC.

[22]  Xiaojun Wang,et al.  Redundant-Signed-Digit-Based High Speed Elliptic Curve Cryptographic Processor , 2019, J. Circuits Syst. Comput..

[23]  Tanja Lange,et al.  Twisted Edwards Curves , 2008, AFRICACRYPT.

[24]  Alfred Menezes,et al.  Guide to Elliptic Curve Cryptography , 2004, Springer Professional Computing.

[25]  Miguel Morales-Sandoval,et al.  Elliptic Curve Lightweight Cryptography: A Survey , 2018, IEEE Access.

[26]  Xiaojun Wang,et al.  Low latency flexible FPGA implementation of point multiplication on elliptic curves over GF(p) , 2017, Int. J. Circuit Theory Appl..

[27]  Marc Joye,et al.  Elliptic Curves and Side-Channel Analysis , 2003 .

[28]  Yinan Kong,et al.  High-throughput multi-key elliptic curve cryptosystem based on residue number system , 2017, IET Comput. Digit. Tech..

[29]  Tanja Lange,et al.  Faster Addition and Doubling on Elliptic Curves , 2007, ASIACRYPT.

[30]  Husen Wang,et al.  Elliptic Curve Cryptography with Efficiently Computable Endomorphisms and Its Hardware Implementations for the Internet of Things , 2017, IEEE Transactions on Computers.

[31]  Thanos Stouraitis,et al.  Efficient RNS Implementation of Elliptic Curve Point Multiplication Over ${\rm GF}(p)$ , 2013, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[32]  Thanos Stouraitis,et al.  An RNS Implementation of an $F_{p}$ Elliptic Curve Point Multiplier , 2009, IEEE Transactions on Circuits and Systems I: Regular Papers.

[33]  Debdeep Mukhopadhyay,et al.  Petrel: Power and Timing Attack Resistant Elliptic Curve Scalar Multiplier Based on Programmable ${\rm GF}(p)$ Arithmetic Unit , 2011, IEEE Transactions on Circuits and Systems I: Regular Papers.

[34]  Daniel J. Bernstein,et al.  Curve25519: New Diffie-Hellman Speed Records , 2006, Public Key Cryptography.

[35]  Zezhong Zhang,et al.  An Efficient RFID Authentication Protocol to Enhance Patient Medication Safety Using Elliptic Curve Cryptography , 2014, Journal of Medical Systems.

[36]  Sherali Zeadally,et al.  An Analysis of RFID Authentication Schemes for Internet of Things in Healthcare Environment Using Elliptic Curve Cryptography , 2015, IEEE Internet of Things Journal.

[37]  Yinan Kong,et al.  High-performance elliptic curve cryptography processor over NIST prime fields , 2017, IET Comput. Digit. Tech..

[38]  Zhenguo Zhao,et al.  A Secure RFID Authentication Protocol for Healthcare Environments Using Elliptic Curve Cryptosystem , 2014, Journal of Medical Systems.

[39]  Chih-Ming Hsiao,et al.  A secure ECC-based RFID authentication scheme integrated with ID-verifier transfer protocol , 2014, Ad Hoc Networks.

[40]  Hwajeong Seo,et al.  On Emerging Family of Elliptic Curves to Secure Internet of Things: ECC Comes of Age , 2017, IEEE Transactions on Dependable and Secure Computing.

[41]  Thanos Stouraitis,et al.  A High-Speed FPGA Implementation of an RSD-Based ECC Processor , 2016, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[42]  Taher El Gamal A public key cryptosystem and a signature scheme based on discrete logarithms , 1984, IEEE Trans. Inf. Theory.

[43]  Chih-Tsun Huang,et al.  Elixir: High-Throughput Cost-Effective Dual-Field Processors and the Design Framework for Elliptic Curve Cryptography , 2008, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[44]  Khaled Salah,et al.  An FPGA implementation of NIST 256 prime field ECC processor , 2013, 2013 IEEE 20th International Conference on Electronics, Circuits, and Systems (ICECS).

[45]  Seok-Bum Ko,et al.  Scalable Elliptic Curve Cryptosystem FPGA Processor for NIST Prime Curves , 2015, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[46]  Whitfield Diffie,et al.  New Directions in Cryptography , 1976, IEEE Trans. Inf. Theory.

[47]  Zilong Liu,et al.  An Efficient and Flexible Hardware Implementation of the Dual-Field Elliptic Curve Cryptographic Processor , 2017, IEEE Transactions on Industrial Electronics.

[48]  Mike Scott,et al.  High performance hardware support for elliptic curve cryptography over general prime field , 2017, Microprocess. Microsystems.

[49]  Anantha P. Chandrakasan,et al.  An Energy-Efficient Reconfigurable DTLS Cryptographic Engine for Securing Internet-of-Things Applications , 2019, IEEE Journal of Solid-State Circuits.

[50]  Adi Shamir,et al.  A method for obtaining digital signatures and public-key cryptosystems , 1978, CACM.

[51]  Ed Dawson,et al.  Twisted Edwards Curves Revisited , 2008, IACR Cryptol. ePrint Arch..

[52]  Kendall Ananyi,et al.  Flexible Hardware Processor for Elliptic Curve Cryptography Over NIST Prime Fields , 2009, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[53]  Fagen Li,et al.  Remote Authentication Schemes for Wireless Body Area Networks Based on the Internet of Things , 2018, IEEE Internet of Things Journal.