Fast architectures for FPGA-based implementation of RSA encryption algorithm

In this work, new structures that implement RSA cryptographic algorithm are presented. These structures are built upon a modified Montgomery modular multiplier, where the operations of multiplication and modular reductions are carried out in parallel rather than interleaved as in the traditional Montgomery multiplier. The global broadcast of data lines is avoided by interleaving two or more encryption/decryption operations onto the same structure, thus making the implementation systolic and scalable. The digit approach has been adopted in This work. This methodology is based on varying the digit size and the level of pipelining of the structures. This parameterised approach presents the designer with an efficient way of choosing the architecture that suits better his/her requirements in terms of speed and area usage, an issue of critical importance to the resources-limited FPGA chips. The results of implementation using FPGA have shown that the proposed RSA structures outperformed those structures built around the traditional Montgomery multiplier in terms of speed, thanks to avoiding global lines broadcast.

[1]  Ming-Hwa Sheu,et al.  A pipelined architecture of fast modular multiplication for RSA cryptography , 1998, ISCAS '98. Proceedings of the 1998 IEEE International Symposium on Circuits and Systems (Cat. No.98CH36187).

[2]  M. McLoone,et al.  Fast Montgomery modular multiplication and RSA cryptographic processor architectures , 2003, The Thrity-Seventh Asilomar Conference on Signals, Systems & Computers, 2003.

[3]  Ahmed Bouridane,et al.  Architectures for Montgomery's multiplication , 2003 .

[4]  Peter Kornerup,et al.  A Systolic, Linear-Array Multiplier for a Class of Right-Shift Algorithms , 1994, IEEE Trans. Computers.

[5]  Colin D. Walter,et al.  Hardware Implementation of Montgomery's Modular Multiplication Algorithm , 1993, IEEE Trans. Computers.

[6]  Antonino Mazzeo,et al.  FPGA-based implementation of a serial RSA processor , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[7]  Christof Paar,et al.  High-Radix Montgomery Modular Exponentiation on Reconfigurable Hardware , 2001, IEEE Trans. Computers.

[8]  Ahmed Bouridane,et al.  New iterative algorithms and architectures of modular multiplication for cryptography , 2001, ICECS 2001. 8th IEEE International Conference on Electronics, Circuits and Systems (Cat. No.01EX483).

[9]  Keshab K. Parhi,et al.  Performance-Scalable Array Architectures for Modular Multiplication , 2002, J. VLSI Signal Process..

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

[11]  Charles E. Leiserson,et al.  Retiming synchronous circuitry , 1988, Algorithmica.

[12]  Alessandro Cilardo,et al.  Carry-save Montgomery modular exponentiation on reconfigurable hardware , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[13]  Çetin Kaya Koç,et al.  A Scalable Architecture for Montgomery Multiplication , 1999, CHES.

[14]  Joos Vandewalle,et al.  Hardware implementation of a Montgomery modular multiplier in a systolic array , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[15]  Keshab K. Parhi,et al.  Ring-planarized cylindrical arrays with application to modular multiplication , 2000, 2000 IEEE Workshop on SiGNAL PROCESSING SYSTEMS. SiPS 2000. Design and Implementation (Cat. No.00TH8528).

[16]  P. L. Montgomery Modular multiplication without trial division , 1985 .

[17]  Thomas Blum,et al.  Montgomery modular exponentiation on reconfigurable hardware , 1999, Proceedings 14th IEEE Symposium on Computer Arithmetic (Cat. No.99CB36336).

[18]  Holger Orup,et al.  Simplifying quotient determination in high-radix modular multiplication , 1995, Proceedings of the 12th Symposium on Computer Arithmetic.

[19]  Whitfield Diffie,et al.  New Directions in Cryptography , 1976, IEEE Trans. Inf. Theory.

[20]  Mokhtar Nibouche,et al.  On designing digit multipliers , 2002, 9th International Conference on Electronics, Circuits and Systems.

[21]  Adi Shamir,et al.  A method for obtaining digital signatures and public-key cryptosystems , 1978, CACM.

[22]  Mark Shand,et al.  Fast implementations of RSA cryptography , 1993, Proceedings of IEEE 11th Symposium on Computer Arithmetic.