An end-to-end systems approach to elliptic curve cryptography

Hardware and software performance.


Since its proposal by Victor Miller and Neal Koblitz in the mid 1980s, elliptic curve cryptography (ECC) has evolved into a mature public-key cryptosystem. Offering the smallest key size and the highest strength per bit, its computational efficiency can benefit both client devices and server machines. We have designed a programmable hardware accelerator to speed up point multiplication for elliptic curves over binary polynomial fields GF(2m). The accelerator is based on a scalable architecture capable of handling curves of arbitrary field degrees up to m=255. In addition, it delivers optimized performance for a set of commonly used curves through hard-wired reduction logic. A prototype implementation running in a Xilinx XCV2000E FPGA at 66.4 MHz shows a performance of 6987 point multiplications per second for GF(2163). We have integrated ECC into OpenSSL, today's dominant implementation of the secure Internet protocol SSL, and tested it with the Apache web server and open-source web browsers.

Keywords: elliptic curve cryptography, hardware accelerator, binary polynomial field arithmetic, Secure Sockets Layer (SSL)


Nils Gura, Sheueling Chang Shantz, Hans Eberle, Sumit Gupta, Vipul Gupta, Daniel Finchelstein, Edouard Goupy, Douglas Stebila. An end-to-end systems approach to elliptic curve cryptography. In Burton S. Kaliski Jr., Çetin K. Koç, Christof Paar, editors, Proc. Cryptographic Hardware and Embedded Systems (CHES) 2002, LNCS, vol. 2523, pp. 349-365. Springer, August 2002. © IACR.