Abstract
In today's technology, a sheer number of Internet of Things applications use hardware security modules for secure communications. The widely used algorithms in security modules, for example, digital signatures and key agreement, are based upon elliptic curve cryptography (ECC). A core operation used in ECC is the point multiplication, which is computationally expensive for many Internet of things applications. In many IoT applications, such as intelligent transportation systems and distributed control systems, thousands of safety messages need to be signed and verified within a very short time-frame. Considerable research has been conducted in the design of a fast elliptic curve arithmetic on finite fields using residue number systems (RNS). In this article, we propose an RNS-based ECC core hardware for the two families of elliptic curves that are short Weierstraß and twisted Edwards curves. Specifically, we present RNS implementations for SECP256K1 and ED25519 standard curves. We propose an RNS hardware architecture supporting fast elliptic curve point-Addition (ECPA), point-doubling (ECPD), and point-Tripling (ECPT).We implemented different ECC point multiplication algorithms on the Xilinx FPGA platform. The test results confirm that the performance of our fully RNS ECC point multiplication is better than the fastest ECC point multiplication cores in the literature.
Original language | English |
---|---|
Pages (from-to) | 1707-1718 |
Number of pages | 12 |
Journal | IEEE Transactions on Computers |
Volume | 69 |
Issue number | 11 |
Early online date | 5 Aug 2020 |
DOIs | |
Publication status | Published - Nov 2020 |
Keywords
- elliptic curve cryptography
- hardware security
- modular reduction
- Residue number system
- scalar multiplication