Flexible Hardware Processor for Elliptic Curve Cryptography Over NIST Prime Fields

Exchange of private information over a public medium must incorporate a method for data protection against unauthorized access. Elliptic curve cryptography (ECC) has become widely accepted as an efficient mechanism to secure sensitive data. The main ECC computation is a scalar multiplication, translating into an appropriate sequence of point operations, each involving several modular arithmetic operations. We describe a flexible hardware processor for performing computationally expensive modular addition, subtraction, multiplication, and inversion over prime finite fields GF(p) . The proposed processor supports all five primes p recommended by NIST, whose sizes are 192, 224, 256, 384, and 521 bits. It can also be programmed to automatically execute sequences of modular arithmetic operations. Our field-programmable gate-array implementation runs at 60 MHz and takes between 4 and 40 ms (depending on the used prime) to perform a typical scalar multiplication.

[1]  Joos Vandewalle,et al.  Hardware implementation of an elliptic curve processor over GF(p) , 2003, Proceedings IEEE International Conference on Application-Specific Systems, Architectures, and Processors. ASAP 2003.

[2]  Kendall Ananyi,et al.  Design of a Reconfigurable Processor for NIST Prime Field ECC , 2006, 2006 14th Annual IEEE Symposium on Field-Programmable Custom Computing Machines.

[3]  Christof Paar,et al.  A Scalable GF(p) Elliptic Curve Processor Architecture for Programmable Hardware , 2001, CHES.

[4]  Vipul Gupta,et al.  An End-to-End Systems Approach to Elliptic Curve Cryptography , 2002, CHES.

[5]  A. P. Chandrakasan,et al.  An energy-efficient reconfigurable public-key cryptography processor , 2001, IEEE J. Solid State Circuits.

[6]  Ian F. Blake,et al.  Advances in Elliptic Curve Cryptography: Frontmatter , 2005 .

[7]  Vipul Gupta,et al.  Accelerating next-generation public-key cryptosystems on general-purpose CPUs , 2005, IEEE Micro.

[8]  Johannes Wolkerstorfer,et al.  Dual-Field Arithmetic Unit for GF(p) and GF(2m) , 2002, CHES.

[9]  Earl E. Swartzlander,et al.  Computer Arithmetic , 1980 .

[10]  Wu Shuhua,et al.  A timing-and-area tradeoff GF(p) elliptic curve processor architecture for FPGA , 2005, Proceedings. 2005 International Conference on Communications, Circuits and Systems, 2005..

[11]  Wayne Luk,et al.  Customizable elliptic curve cryptosystems , 2005, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

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

[13]  M. McLoone,et al.  Hardware Elliptic Curve Cryptographic Processor Over , 2006 .

[14]  Akashi Satoh,et al.  A Scalable Dual-Field Elliptic Curve Cryptographic Processor , 2003, IEEE Trans. Computers.

[15]  Tim Kerins,et al.  An FPGA implementation of a GF(p) ALU for encryption processors , 2004, Microprocess. Microsystems.

[16]  Çetin Kaya Koç,et al.  A Scalable Architecture for Modular Multiplication Based on Montgomery's Algorithm , 2003, IEEE Trans. Computers.

[17]  Lejla Batina,et al.  Efficient Implementation of Elliptic Curve Cryptosystems on an ARM7 with Hardware Accelerator , 2001, ISC.

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