New Computation Paradigm for Modular Exponentiation Using a Graph Model

• Chi Seong Park
• Mun-Kyu Lee
• Dong Kyue Kim
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3777)

Abstract

Modular exponentiation is to compute x E for positive integers x, E, and N. It is an essential operation for various public-key cryptographic algorithms such as RSA, ElGamal and DSA, and it is crucial to develop fast modular exponentiation methods for efficient implementation of the above algorithms. To accelerate modular exponentiation, one can either speed up each multiplication or reduce the number of required multiplications. We focus on the latter.

In this paper, we propose a general model to describe the behavior of modular exponentiation in terms of a graph. First, we show that the problem of finding the minimum number of multiplications for a modular exponentiation is equivalent to finding a shortest path in its corresponding graph. The previously known exponentiation algorithms including the binary method, the M-ary method and the sliding window method can be represented as a specific instance of our model. Next, we present a general method to reduce the number of required multiplications by modifying the pre-computation table which is used for the sliding window method. According to our experimental results, the new method significantly reduces the number of multiplications, especially in the cases that the exponent E has a high Hamming weight.

Keywords

Exponentiation Modular Exponentiation Graph Model Window Method

References

1. 1.
Rivest, R.L., Shamir, A., Adleman, L.: A method for obtaining digital signatures and public-key cryptosystems. Communications of the ACM 21(2), 120–126 (1978)
2. 2.
ElGamal, T.: A public key cryptosystem and a signature scheme based on discrete logarithms. IEEE Transactions on Information Theory 31(4), 469–472 (1985)
3. 3.
National Institute of Standards and Technology. Digital Signature Standard, 186. FIPS Publication (1994)Google Scholar
4. 4.
Knuth, D.E.: The art of computer programming: Seminumerical algorithms, 2nd edn., vol. 2, pp. 461–485. Addison-Wesley, Reading (1981)
5. 5.
Bos, J., Coster, M.: Addition chain heuristics. In: Brassard, G. (ed.) CRYPTO 1989. LNCS, vol. 435, pp. 400–407. Springer, Heidelberg (1990)Google Scholar
6. 6.
Downey, P., Leong, B., Sethi, R.: Computing sequences with addition chains. SIAM J. Comp. 10(3), 638–646 (1981)
7. 7.
Koç, C.K.: Analysis of Sliding Window Techniques for Exponentiation. Computers and Mathematics with Application 30(10), 17–24 (1995)
8. 8.
Cormen, T.H., Leiserson, C.E., Rivest, R.L.: Introduction to algorithms, pp. 514–531. The MIT Press, Cambridge (1990)

Authors and Affiliations

• Chi Seong Park
• 1
• Mun-Kyu Lee
• 2
• Dong Kyue Kim
• 1
1. 1.Pusan National UniversityBusanKorea
2. 2.Inha UniversityIncheonKorea