Open Access

Applications of Fast Truncated Multiplication in Cryptography

EURASIP Journal on Embedded Systems20062007:061721

https://doi.org/10.1155/2007/61721

Received: 30 June 2006

Accepted: 17 October 2006

Published: 25 December 2006

Abstract

Truncated multiplications compute truncated products, contiguous subsequences of the digits of integer products. For an n-digit multiplication algorithm of time complexity O(nα), with 1<α≤2, there is a truncated multiplication algorithm, which is constant times faster when computing a short enough truncated product. Applying these fast truncated multiplications, several cryptographic long integer arithmetic algorithms are improved, including integer reciprocals, divisions, Barrett and Montgomery multiplications, 2n-digit modular multiplication on hardware for n-digit half products. For example, Montgomery multiplication is performed in 2.6 Karatsuba multiplication time.

[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17]

Authors’ Affiliations

(1)
Seagate Research, 1251 Waterfront Place

References

  1. Menezes A, van Oorschot P, Vanstone S: Handbook of Applied Cryptography. CRC Press, Boca Raton, Fla, USA; 1996.View ArticleGoogle Scholar
  2. GNU multiple precision arithmetic library manual http://www.swox.com/gmp/
  3. Karp AH, Markstein P: High-precision division and square root. ACM Transactions on Mathematical Software 1997,23(4):561-589. 10.1145/279232.279237MathSciNetView ArticleMATHGoogle Scholar
  4. Bernstein DJ: Fast Multiplication and its Applications. http://cr.yp.to/papers.html#multapps
  5. Hors L: Fast truncated multiplication for cryptographic applications. Proceedings of the 7th International Workshop on Cryptographic Hardware and Embedded Systems (CHES '05), August 2005, Edinburgh, UK, Lecture Notes in Computer Science 3659: 211-225.Google Scholar
  6. Koblitz N: Introduction to Elliptic Curves and Modular Forms. Springer, New York, NY, USA; 1984.View ArticleMATHGoogle Scholar
  7. Knuth DE: The Art of Computer Programming. Volume 2: Seminumerical Algorithms. Addison-Wesley, Reading, Mass, USA; 1981.Google Scholar
  8. Hars L: Multiplications for Cryptographic Operand Lengths: Analytic and Experimental Comparisons. manuscriptGoogle Scholar
  9. Hanrot G, Quercia M, Zimmermann P: The middle product algorithm, I. In Rapport de Recherche 4664. l'Institut National de Recherche en Informatique et en Automatique, Lorraine, France; 2002. http://www.inria.fr/rrrt/rr-4664.html Google Scholar
  10. Burnikel C, Ziegler J: Fast recursive division. In MPI Research Report I-98-1-022. Max-Planck-Institut für Informatik, 1998.Google Scholar
  11. Bosselaers A, Govaerts R, Vandewalle J: Comparison of three modular reduction functions. Proceedings of the 13th Annual International Cryptology Conference on Advances in Cryptology (CRYPTO '93), August 1994, Santa Barbara, Calif, USA, Lecture Notes in Computer Science 773: 175-186.MathSciNetView ArticleGoogle Scholar
  12. Barrett P: Implementing the Rivest Shamir and Adleman public key encryption algorithm on a standard digital signal processor. Proceedings of International Cryptology Conference on Advances in Cryptology (CRYPTO '86), 1987, Santa Barbara, Calif, USA 311-323.Google Scholar
  13. Montgomery PL: Modular multiplication without trial division. Mathematics of Computation 1985,44(170):519-521. 10.1090/S0025-5718-1985-0777282-XMathSciNetView ArticleMATHGoogle Scholar
  14. Hensel K: Theorie der Algebraischen Zahlen. Teubner, Leipzig, Germany; 1908.MATHGoogle Scholar
  15. Hars L: Long modular multiplication for cryptographic applications. Proceedings of the 6th International Workshop on Cryptographic Hardware and Embedded Systems (CHES '04), August 2004, Cambridge, Mass, USA 45-61.Google Scholar
  16. Shamus Software Ltd : MIRACL users manual. version 5.0, December 2005, ftp://ftp.computing.dcu.ie/pub/crypto/manual.zip
  17. Fischer W, Seifert J-P: Increasing the bitlength of a crypto-coprocessor via smart hardware/software co-design. Proceedings of 4th International Workshop on Cryptographic Hardware and Embedded Systems (CHES '02), August 2002, Redwood Shores, Calif, USA, Lecture Notes in Computer Science 2523: 71-81.Google Scholar

Copyright

© Hars 2007

This article is published under license to BioMed Central Ltd. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.