Bipartite Modular Multiplication

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3659)


This paper proposes a new fast method for calculating modular multiplication. The calculation is performed using a new representation of residue classes modulo M that enables the splitting of the multiplier into two parts. These two parts are then processed separately, in parallel, potentially doubling the calculation speed. The upper part and the lower part of the multiplier are processed using the interleaved modular multiplication algorithm and the Montgomery algorithm respectively. Conversions back and forth between the original integer set and the new residue system can be performed at speeds up to twice that of the Montgomery method without the need for precomputed constants. This new method is suitable for both hardware implementation; and software implementation in a multiprocessor environment. Although this paper is focusing on the application of the new method in the integer field, the technique used to speed up the calculation can also easily be adapted for operation in the binary extended field GF(2 m ).


Residue Class Modular Multiplication Ular Multiplication Cryptographic Application Digital Signature Algorithm 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    ANSI X9.30. Public Key Cryptography for the Financial Services Industry: Part 1: The Digital Signature Algorithm (DSA). American National Standard Institute. American Bankers Association (1997)Google Scholar
  2. 2.
    Blakley, G.R.: A Computer Algorithm for Calculating the Product AB Modulo M. IEEE Trans. Computers C-32(5), 497–500 (1983)CrossRefGoogle Scholar
  3. 3.
    Brickell, E.F.: A fast modular multiplication algorithm with application to two key cryptography. In: Chaum, D., et al. (eds.) Advances in Cryptology, Proc. CRYPTO 1982, pp. 51–60. Plenum, New York (1983)Google Scholar
  4. 4.
    Diffie, W., Hellman, M.E.: New Directions in Cryptography. IEEE Trans. Information Theory 22(11), 644–654 (1976)zbMATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    ElGamal, T.: A public key cryptosystem and a signature scheme based on discrete logarithms. IEEE Trans. Information Theory IT-31(4), 469–472 (1985)CrossRefMathSciNetGoogle Scholar
  6. 6.
    Kornerup, P.: High-Radix Modular Multiplication for Cryptosystems. In: Jullien, G., Irwin, M.J., Swartzlander, E. (eds.) Proc. 11th IEEE Symp. Computer Arithmetic, pp. 277–283. Windsor, Canada (1993)CrossRefGoogle Scholar
  7. 7.
    Montgomery, P.L.: Modular Multiplication without Trial Division. Mathematics of Computation 44(170), 519–521 (1985)zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Morita, H.: A fast modular multiplication algorithm with application to two key cryptography. In: Brassard, G. (ed.) CRYPTO 1989. LNCS, vol. 435, pp. 387–399. Springer, Heidelberg (1990)Google Scholar
  9. 9.
    Orup, H.: Simplifying quotient determination in high-radix modular multiplication. In: Knowles, S., McAllister, W.H. (eds.) Proc. 12th IEEE Symp. Computer Arithmetic, pp. 193–199. Bath, England (1995)CrossRefGoogle Scholar
  10. 10.
    Rivest, R.L., Shamir, A., Adleman, L.: A method for obtaining digital signatures and public-key cryptosystems. Commun. ACM 21(2), 120–126 (1978)zbMATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Sloan, K.R.: Comments on ‘A Computer Algorithm for Calculating the Product AB Modulo M’. IEEE Trans. Computers C-34(3), 290–292 (1985)CrossRefMathSciNetGoogle Scholar
  12. 12.
    Takagi, N.: A radix-4 modular multiplication hardware algorithm for modular exponentiation. IEEE Trans. Comput. 41(8), 949–956 (1990)CrossRefGoogle Scholar
  13. 13.
    Tenca, A.F., Todorov, G., Koç, Ç.K.: High-Radix Design of a Scalable Modular Multiplier. In: Koç, Ç.K., Naccache, D., Paar, C. (eds.) CHES 2001. LNCS, vol. 2162, pp. 185–201. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  14. 14.
    Walter, C.D.: Space/Time Trade-offs for Higher Radix Modular Multiplication using Repeated Addition. IEEE Trans. Computers 46(2), 139–141 (1997)CrossRefGoogle Scholar
  15. 15.
    Walter, C.D.: Systolic Modular Multiplication. IEEE Trans. Computers 42(3), 376–378 (1993)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  1. 1.Department of Information EngineeringNagoya UniversityNagoyaJapan

Personalised recommendations