Some improvement on RNS montgomery modular multiplication

被引:1
作者
Bajard, JC [1 ]
Didier, LS [1 ]
Kornerup, P [1 ]
Rico, F [1 ]
机构
[1] LIRMM, F-34392 Montpellier 5, France
来源
ADVANCED SIGNAL PROCESSING ALGORITHMS, ARCHITECTURES, AND IMPLEMENTATIONS X | 2000年 / 4116卷
关键词
modular multiplication; montgomery; residue number system; mixed radix;
D O I
10.1117/12.406499
中图分类号
TM [电工技术]; TN [电子技术、通信技术];
学科分类号
0808 ; 0809 ;
摘要
In Residue Number Systems (RNS), an integer X is represented by its residues {x(0),...,x(n-1)} modulo a base of relatively prime numbers {m(0),...,m(n-1)}. Thus a large number can be represented as a set of small integers. Addition and multiplication can be easily parallelized, there is no carry propagation. The time is reduced to the evaluation of these operations with small numbers. This representation is useful in cryptography and digital signal processing. Furthermore, in these two domains, modular multiplication (A x B mod N) is frequently used. So, in 1998, we have presented in IEEE journal of transactions on computers,(20) a new modular multiplication algorithm in RNS. This algorithm is based on the Montgomery algorithm: using the associated Mixed Radix representation; for the weighted digits. It was the first algorithm of this type. In this paper, we present two remarks. First, if we develop the different expressions due to the algorithm, we obtain some mathematical simplifications that allow us to suppress some Mixed Radix occurrence in the basic iteration simply with a new initialization of our variables. Thus, in this new version, the complexity of each basic iteration, becomes equivalent to two products of small integers instead of three. The second remark is that, most of the time, modular multiplications are done with the same modulo N. We can precompute some values and reduce the complexity of each basic iteration to one multiplication of two small integers. Thus, the basic iteration is three time faster and the global computation, due to the initialization, is 8/5 time faster than the original version. Sometime after the last basic iteration a Mixed Radix conversion can be needed. Classical parallel methods are linear. We propose an logarithmic parallel algorithm for this translation from RNS to Mixed Radix. Far this, we use a result that comes from an RNS division algorithm, we published in Journal of VLSI signal processing systems 1998.(3) We obtain in a logarithmic time all approximation of the Mixed radix representation. The correct representation is then established in a logarithmic time tao.
引用
收藏
页码:214 / 225
页数:12
相关论文
共 20 条
[1]  
[Anonymous], 1981, SEMINUMERICAL ALGORI
[2]   An RNS Montgomery modular multiplication algorithm [J].
Bajard, JC ;
Didier, LS ;
Kornerup, P .
IEEE TRANSACTIONS ON COMPUTERS, 1998, 47 (07) :766-776
[3]   A new euclidean division algorithm for residue number systems [J].
Bajard, JC ;
Didier, LS ;
Muller, JM .
JOURNAL OF VLSI SIGNAL PROCESSING SYSTEMS FOR SIGNAL IMAGE AND VIDEO TECHNOLOGY, 1998, 19 (02) :167-178
[4]  
BAJARD JC, 2000, IMACS
[5]  
BRICKELL EF, 1990, LECT NOTES COMPUT SC, V435, P368
[6]   HARDWARE IMPLEMENTATION OF MONTGOMERY MODULAR MULTIPLICATION ALGORITHM [J].
ELDRIDGE, SE ;
WALTER, CD .
IEEE TRANSACTIONS ON COMPUTERS, 1993, 42 (06) :693-699
[7]  
Fiat A, 1986, ADV CRYPTOLOGY CRYPT, P186, DOI DOI 10.1007/3-540-47721-7_12
[8]  
GAMBERGER D, 1989, 9TH P S COMP AR SANT, P210
[9]  
KORNERUP P, 1993, 11TH SYMPOSIUM ON COMPUTER ARITHMETIC : PROCEEDINGS, V11, P277
[10]  
MICALI S, 1988, ADV CRYPTOLOGY, P244