The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.02 - February (2008 vol.57)
pp: 157-164
ABSTRACT
This paper proposes a new fast method for calculating modular multiplication. The calculation is performed @using a new representation of residues modulo M called KT -residue. This representation enables the multiplier to be split into two parts which can then be processed separately, in parallel, potentially doubling the calculation speed. The upper part of the split multiplier can be processed by calculating a multiplication modulo M between the multiplicand and this part of the split multiplier. The lower part of the split multiplier can be processed by calculating a multiplication modulo M between the multiplicand, this part of the split multiplier and the inverse of a constant R, where R < M. Two different implementations based on this method are proposed. One uses an interleaved modular multiplier and an interleaved Montgomery multiplier. The other one generates the partial products for each part of the split multiplier separately, which are added and accumulated in a single pipelined unit. A radix-4 version of this hardware implementation is presented as an example. The proposed method is also suitable for software implementation in a multiprocessor environment.
INDEX TERMS
Computer arithmetic, Algorithms
CITATION
Marcelo Kaihara, Naofumi Takagi, "Bipartite Modular Multiplication Method", IEEE Transactions on Computers, vol.57, no. 2, pp. 157-164, February 2008, doi:10.1109/TC.2007.70793
REFERENCES
[1] ANSI X9.30, Public Key Cryptography for the Financial Services Industry: Part 1: The Digital Signature Algorithm (DSA), Am. Nat'l Standards Inst., Am. Bankers Assoc., 1997.
[2] G.R. Blakley, “A Computer Algorithm for Calculating the Product AB Modulo M,” IEEE Trans. Computers, vol. 32, no. 5, pp. 497-500, May 1983.
[3] E.F. Brickell, “A Fast Modular Multiplication Algorithm with Application to Two Key Cryptography,” Advances in Cryptology— Proc. CRYPTO '82, pp. 51-60, 1983.
[4] W. Diffie and M.E. Hellman, “New Directions in Cryptography,” IEEE Trans. Information Theory, vol. 22, no. 11, pp. 644-654, Nov. 1976.
[5] T. ElGamal, “A Public Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms,” IEEE Trans. Information Theory, vol. 31, no. 4, pp. 469-472, July 1985.
[6] W. Fischer and J.-P. Seifert, “Increasing the Bitlength of a Crypto-Coprocessor,” Proc. Fifth Int'l Workshop Cryptographic Hardware and Embedded Systems (CHES '03), pp. 71-81, 2003.
[7] M.E. Kaihara and N. Takagi, “A Hardware Algorithm for Modular Multiplication/Division,” IEEE Trans. Computers, vol. 54, no. 1, pp. 12-21, Jan. 2005.
[8] M.E. Kaihara and N. Takagi, “Bipartite Modular Multiplication,” Proc. Seventh Int'l Workshop Cryptographic Hardware and Embedded Systems (CHES '05), pp. 201-210, 2005.
[9] Ç.K. Koç, T. Acar, and B.S. Kaliski Jr., “Analyzing and Comparing Montgomery Multiplication Algorithms,” IEEE Micro, vol. 16, no. 3, pp. 26-33, June 1996.
[10] P. Kornerup, “High-Radix Modular Multiplication for Cryptosystems,” Proc. 11th IEEE Symp. Computer Arithmetic (ARITH-11), pp.277-283, 1993.
[11] P.L. Montgomery, “Modular Multiplication without Trial Division,” Math. Computation, vol. 44, no. 170, pp. 519-521, Apr. 1985.
[12] H. Orup, “Simplifying Quotient Determination in High-Radix Modular Multiplication,” Proc. 12th IEEE Symp. Computer Arithmetic (ARITH-12), pp. 193-199, 1995.
[13] R.L. Rivest, A. Shamir, and L. Adleman, “A Method for Obtaining Digital Signatures and Public-Key Cryptosystems,” Comm. ACM, vol. 21, no. 2, pp. 120-126, Feb. 1978.
[14] K.R. Sloan, “Comments on a Computer Algorithm for Calculating the Product AB Modulo M,” IEEE Trans. Computers, vol. 34, no. 3, pp. 290-292, Mar. 1985.
[15] N. Takagi, “A Radix-4 Modular Multiplication Hardware Algorithm for Modular Exponentiation,” IEEE Trans. Computers, vol. 41, no. 8, pp. 949-956, Aug. 1990.
[16] A.F. Tenca, G. Todorov, and Ç.K. Koç, “High-Radix Design of a Scalable Modular Multiplier,” Proc. Second Int'l Workshop Cryptographic Hardware and Embedded Systems (CHES '01), pp. 185-201, 2001.
[17] C.D. Walter, “Space/Time Trade-Offs for Higher Radix Modular Multiplication Using Repeated Addition,” IEEE Trans. Computers, vol. 46, no. 2, pp. 139-141, Feb. 1997.
[18] C.D. Walter, “Systolic Modular Multiplication,” IEEE Trans. Computers, vol. 42, no. 3, pp. 376-378, Mar. 1993.
[19] H. Wu, “Montgomery Multiplier and Squarer for a Class of Finite Fields,” IEEE Trans. Computers, vol. 51, no. 5, pp. 521-529, May 2002.
18 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool