Download presentation
Presentation is loading. Please wait.
Published byAdam Short Modified over 8 years ago
1
Efficient Montgomery Modular Multiplication Algorithm Using Complement and Partition Techniques Speaker: Te-Jen Chang
2
2006/11/2 TANET2006 台灣網際網路研討會 2 Outline Introduction Modular Arithmetic Complement Technique General Integer Multiplication Montgomery Algorithm Jeong-Burleson Algorithm
3
2006/11/2 TANET2006 台灣網際網路研討會 3 Outline (Cont.) Lee-Jeong-Kwon Algorithm Proposed Algorithm Computational Complexity Conclusions and Future Works
4
2006/11/2 TANET2006 台灣網際網路研討會 4 Introduction The computation of the modular exponentiation is a fundamental and important arithmetic operation in many scientific investigations, especially in the area of cryptology. High-speed, area-efficient, and low-power Montgomery modular multipliers for RSA algorithm have been developed for digital signature and user authentication in high-speed network systems and smart cards.
5
2006/11/2 TANET2006 台灣網際網路研討會 5 Introduction (Cont.) The RSA (Rivest Shamir Adleman) is one of the most widely used public-key cryptosystems. The encryption function is based on modular exponentiation with key size of 1024 or 2048 bits, and the modular multiplication is one of the major computation methods in cryptography systems.
6
2006/11/2 TANET2006 台灣網際網路研討會 6 Modular Arithmetic Equation l Equation 2 Equation 3 Equation 4
7
2006/11/2 TANET2006 台灣網際網路研討會 7 Modular Arithmetic (Cont.) The processes of addition, subtraction, and multiplication using Equation (1), Equation (2), Equation (3), and Equation (4) are called residue arithmetic or modular arithmetic.
8
2006/11/2 TANET2006 台灣網際網路研討會 8 Complement Technique where and if ; ; for i = 0, 1, …, k-1. Equation 5 Equation 6
9
2006/11/2 TANET2006 台灣網際網路研討會 9 General Integer Multiplication Figure 1. General integer multiplication (A*B). Equation 7 Equation 8
10
2006/11/2 TANET2006 台灣網際網路研討會 10 General Integer Multiplication (Cont.) Example 1: Let A = (1000000000) 2 = (512) 10, B = (1010110100) 2 = (692) 10, N = 7, k = 10, Evaluate. Here, B H = (10101) 2 = (21) 10 and B L = (10100) 2 = (20) 10 from Equation (7). Then, as in Figure 1, = 354,304.
11
2006/11/2 TANET2006 台灣網際網路研討會 11 Montgomery Algorithm Equation 9 Figure 2. Montgomery algorithm (A*B* mod N).
12
2006/11/2 TANET2006 台灣網際網路研討會 12 Montgomery Algorithm (Cont.) Example 2 Let A = (1000000000) 2 = (512) 10, B = (1010110100) 2 = (692) 10, N = 7, k = 10, Evaluate. Here, B H = (10101) 2 = (21) 10 and B L = (10100) 2 = (20) 10 from Equation (9). Then, as in Figure 2, k is the bit length of the exponent. = 3.
13
2006/11/2 TANET2006 台灣網際網路研討會 13 Jeong-Burleson Algorithm Figure 3. Jeong- Burleson algorithm (A*B mod N). Equation 10
14
2006/11/2 TANET2006 台灣網際網路研討會 14 Example 3 Let A = (1000000000) 2 = (512) 10, B = (1010110100) 2 = (692) 10, N = 7, k = 10, Evaluate. Here, B H = (10101) 2 = (21) 10 and B L = (10100) 2 = (20) 10 from Equation (7). Then, as in Figure 3, = 6. Jeong-Burleson Algorithm (Cont.)
15
2006/11/2 TANET2006 台灣網際網路研討會 15 Lee-Jeong-Kwon Algorithm Figure 4. Lee- Jeong-Kwon algorithm (A*B*mod N). Equation 11
16
2006/11/2 TANET2006 台灣網際網路研討會 16 We adopt the complement technique to Lee- Jeong-Kwon algorithm to efficiently evaluate modular multiplications. Case 1: Ham (A) >, and Case 2: Ham (A) ≦. Proposed Algorithm
17
2006/11/2 TANET2006 台灣網際網路研討會 17 The number of iterations for the modular multiplication “ ” = * (the number of iterations for modular multiplication in Case 1) + * (the number of iterations for modular multiplication in Case 2). Proposed Algorithm (Cont.) Equation 12
18
2006/11/2 TANET2006 台灣網際網路研討會 18 Case 1: Ham( A ) > The number of iterations for a modular multiplication in Case 1 is Proposed Algorithm (Cont.)
19
2006/11/2 TANET2006 台灣網際網路研討會 19 Case 2: Ham( A ) The number of iterations for a modular multiplication in Case 2 is Proposed Algorithm (Cont.)
20
2006/11/2 TANET2006 台灣網際網路研討會 20 The overall computational complexity of the modular arithmetic: Speedup ratio: (Comparing Lee-Jeong-Kwon algorithm with the proposed algorithm) Proposed Algorithm (Cont.) Equation 14
21
2006/11/2 TANET2006 台灣網際網路研討會 21 Conclusions and Future Works The computational complexity of the proposed algorithm is +, which is less than in Lee-Jeong-Kwon algorithm, where k is the bit- length of the multiplicand and the multiplier. The proposed modular multiplication algorithm has speedup ratio of 2.
22
2006/11/2 TANET2006 台灣網際網路研討會 22 Conclusions and Future Works (Cont.) Some new techniques are studied and proposed to fast evaluate modular multiplications such as the unified-multipliers method, elliptic curve encrypt method, and improved Montgomery algorithm.
23
2006/11/2 TANET2006 台灣網際網路研討會 23 Conclusions and Future Works (Cont.) In the future, we will try to properly study the combination of techniques mentioned in binary multiplication to further decrease the computational complexity for cryptographic applications such as the smart card and key exchange schemes.
24
2006/11/2 TANET2006 台灣網際網路研討會 24 Thanks for your attention.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.