Montgomery modular exponentiation on reconfigurable hardware

被引:102
作者
Blum, T [1 ]
Paar, C [1 ]
机构
[1] Worcester Polytech Inst, ECE Dept, Worcester, MA 01609 USA
来源
14TH IEEE SYMPOSIUM ON COMPUTER ARITHMETIC, PROCEEDINGS | 1999年
关键词
D O I
10.1109/ARITH.1999.762831
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
It is widely recognized that security issues will play a crucial role in the majority of future computer and communication systems. Central tools for achieving system security are cryptographic algorithms. For performance as well as for physical security reasons, it is often advantageous to realize cryptographic algorithms in hardware. In order to overcome the well-known drawback of reduced flexibility that is associated with traditional ASIC solutions, this contribution proposes arithmetic architectures which are optimized for modern field programmable gate arrays (FPGAs). The proposed architectures perform modular exponentiation with very long integers. This operation is at the heart of many practical public-key algorithms such as RSA and discrete logarithm schemes. We combine the Montgomery modular multiplication algorithm with a new systolic array design, which is capable of processing a variable number of bits per array cell. The designs are flexible, allowing any choice of operand and modulus. Unlike previous approaches, we systematically implement and compare several variants of our new architecture for different bit lengths. We provide absolute area and timing measures for each architecture. The results allow conclusions about the feasibility and rime-space trade-offs of our architecture for implementation on Xilinx XC4000 series FPGAs. As a major practical result we show that it is possible to implement modular exponentiation at secure bit lengths on a single commercially available FPGA.
引用
收藏
页码:70 / 77
页数:8
相关论文
共 23 条
[1]   An RNS Montgomery modular multiplication algorithm [J].
Bajard, JC ;
Didier, LS ;
Kornerup, P .
IEEE TRANSACTIONS ON COMPUTERS, 1998, 47 (07) :766-776
[2]   ALGORITHM ENGINEERING FOR PUBLIC KEY ALGORITHMS [J].
BETH, T ;
GOLLMANN, D .
IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, 1989, 7 (04) :458-466
[3]  
BRICKELL EF, 1990, LECT NOTES COMPUT SC, V435, P368
[4]   HARDWARE IMPLEMENTATION OF MONTGOMERY MODULAR MULTIPLICATION ALGORITHM [J].
ELDRIDGE, SE ;
WALTER, CD .
IEEE TRANSACTIONS ON COMPUTERS, 1993, 42 (06) :693-699
[5]  
GAI W, 1996, 2 INT C ASIC, P171
[6]   MONTGOMERY MODULAR-MULTIPLICATION METHOD AND SYSTOLIC ARRAYS SUITABLE FOR MODULAR EXPONENTIATION [J].
IWAMURA, K ;
MATSUMOTO, T ;
IMAI, H .
ELECTRONICS AND COMMUNICATIONS IN JAPAN PART III-FUNDAMENTAL ELECTRONIC SCIENCE, 1994, 77 (03) :40-51
[7]   VLSI array algorithms and architectures for RSA modular multiplication [J].
Jeong, YJ ;
Burleson, WP .
IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, 1997, 5 (02) :211-217
[8]  
Knuth DE, 1981, ART COMPUTER PROGRAM, V2
[9]   A SYSTOLIC, LINEAR-ARRAY MULTIPLIER FOR A CLASS OF RIGHT-SHIFT ALGORITHMS [J].
KORNERUP, P .
IEEE TRANSACTIONS ON COMPUTERS, 1994, 43 (08) :892-898
[10]  
MONTGOMERY PL, 1985, MATH COMPUT, V44, P519, DOI 10.1090/S0025-5718-1985-0777282-X