14th IEEE International Conference on Application-Specific Systems, Architectures and Processors (ASAP'03)
Area and Time Efficient Modular Multiplication of Large Integers
The Hague, The Netherlands
June 24-June 26
ISBN: 0-7695-1992-X
A new modular multiplication algorithm and its corresponding architecture is presented. It is optimised with respect to hardware complexity and latency. Based on the data flow of the well known interleaved modular multiplication the product of two n-bit-integers X and Y modulo M is computed by n iterations of a simple loop. The loop consists of one single carry save addition, a comparison of constant complexity, and a table lookup, where the table contains 6 precomputed values and two constants. By this construction the arithmetical complexity of the modular multiplication is reduced to n additions without carry propagation in total which leads to a speedup of at least two in comparison to all methods previously known. The paper consists of a first algorithm A2 implementing the new idea of combining carry save addition and constant time comparison. A2 is not optimal with respect to area and time. Its correctness is proven. By use of a small amount of precomputing the loop of A2 can be modified such that the effort within the loop is minimised. This leads to the algorithm A3. Its verification concludes the paper.
Index Terms:
Modular multiplication, Montgomery algorithm, interleaved modular multiplication, MSB-first arithmetic, carry save addition, redundant number arithmetic.
Citation:
Viktor Bunimov, Prof. Dr. Manfred Schimmler, "Area and Time Efficient Modular Multiplication of Large Integers," asap, pp.400, 14th IEEE International Conference on Application-Specific Systems, Architectures and Processors (ASAP'03), 2003