Low-cost, low-power FPGA implementation of ED25519 and CURVE25519 point multiplication

Mohamad Ali Mehrabi, Christophe Doche

Research output: Contribution to journalArticlepeer-review

28 Citations (Scopus)

Abstract

Twisted Edwards curves have been at the center of attention since their introduction by Bernstein et al. in 2007. The curve ED25519, used for Edwards-curve Digital Signature Algorithm (EdDSA), provides faster digital signatures than existing schemes without sacrificing security. The CURVE25519 is a Montgomery curve that is closely related to ED25519. It provides a simple, constant time, and fast point multiplication, which is used by the key exchange protocol X25519. Software implementations of EdDSA and X25519 are used in many web-based PC and Mobile applications. In this paper, we introduce a low-power, low-area FPGA implementation of the ED25519 and CURVE25519 scalar multiplication that is particularly relevant for Internet of Things (IoT) applications. The efficiency of the arithmetic modulo the prime number 2 255 − 19, in particular the modular reduction and modular multiplication, are key to the efficiency of both EdDSA and X25519. To reduce the complexity of the hardware implementation, we propose a high-radix interleaved modular multiplication algorithm. One benefit of this architecture is to avoid the use of large-integer multipliers relying on FPGA DSP modules.
Original languageEnglish
Article number285
Number of pages16
JournalInformation
Volume10
Issue number9
DOIs
Publication statusPublished - 2019

Open Access - Access Right Statement

© 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).

Keywords

  • Internet of things
  • algorithms
  • authentication
  • cryptography
  • curves, elliptic

Fingerprint

Dive into the research topics of 'Low-cost, low-power FPGA implementation of ED25519 and CURVE25519 point multiplication'. Together they form a unique fingerprint.

Cite this