Comparing Elliptic Curve Cryptography and RSA on 8-bit CPUs

Strong public-key cryptography is often considered to be too computationally expensive for small devices if not accelerated by cryptographic hardware. We revisited this statement and implemented elliptic curve point multiplication for 160-bit, 192-bit, and 224-bit NIST/SECG curves over GF(p) and RSA-1024 and RSA-2048 on two 8-bit microcontrollers. To accelerate multiple-precision multiplication, we propose a new algorithm to reduce the number of memory accesses.

[1]  J. Olivos,et al.  Speeding up the computations on an elliptic curve using addition-subtraction chains , 1990, RAIRO Theor. Informatics Appl..

[2]  Atsuko Miyaji,et al.  Efficient Elliptic Curve Exponentiation Using Mixed Coordinates , 1998, ASIACRYPT.

[3]  Christof Paar,et al.  Optimal Extension Fields for Fast Arithmetic in Public-Key Algorithms , 1998, CRYPTO.

[4]  Mitsuru Matsui,et al.  A Practical Implementation of Elliptic Curve Cryptosystems over GF(p) on a 16-bit Microcomputer , 1998, Public Key Cryptography.

[5]  H. Pietiläinen Elliptic Curve Cryptography on Smart Cards , 2000 .

[6]  Christof Paar,et al.  Elliptic Curve Cryptography on Smart Cards without Coprocessors , 2001, CARDIS.

[7]  尚弘 島影 National Institute of Standards and Technologyにおける超伝導研究及び生活 , 2001 .

[8]  S. C. Shantz From Euclid's GCD to Montgomery Multiplication to the Great Divide , 2001 .

[9]  J. Grossschadl Instruction set extension for long integer modulo arithmetic on RISC-based smart cards , 2002, 14th Symposium on Computer Architecture and High Performance Computing, 2002. Proceedings..

[10]  J. Grossschadl Instruction set extension for long integer modulo arithmetic on RISC-based smart cards , 2002, 14th Symposium on Computer Architecture and High Performance Computing, 2002. Proceedings..

[11]  E. Dawson,et al.  Implementing an efficient elliptic curve cryptosystem over $GF(p)$ on a smart card , 2003 .

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