Skip to main content

Modular Integer Arithmetic for Public Key Cryptography

  • Chapter
  • First Online:
Secure Integrated Circuits and Systems

Part of the book series: Integrated Circuits and Systems ((ICIR))

Abstract

This chapter discusses building blocks for implementing popular public key cryptosystems, like RSA, Diffie-Hellman Key Exchange (DHKE) and Elliptic Curve Cryptography (ECC). Therefore, we briefly introduce field-based arithmetic on which most of recently established public key cryptosystems rely. As most popular fields, we give examples for architecture implementing efficient arithmetic operations over prime and binary extension fields for use in cryptographic applications.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    According to [14], the discovery of public-key cryptography (PKC) in the intelligence community is attributed to John H. Ellis in 1970. The discovery of the equivalent of the RSA cryptosystem [38] is attributed to Clifford Cocks in 1973 while the equivalent of the Diffie–Hellman key exchange was discovered by Malcolm J. Williamson, in 1974. However, it is believed that these British scientists did not realize the practical implications of their discoveries at the time of their publication (see, for example, [39, 11]).

  2. 2.

    It is important to understand that NP-complete problems from computer science cannot be simply converted for use with PKC since a one-way function for PKC must guarantee hardness in all cases which is usually not the case for all NP-complete problems.

  3. 3.

    Recall that the time complexity of n-bit addition or subtraction is only in \(\mathcal{O}(n)\).

  4. 4.

    Exponentiation algorithms significantly influence the performance of cryptosystems like RSA, DHKE, and ElGamal. Please find further details how to speed up exponentiation methods in [31, 16, 44].

References

  1. FIPS 186-2: Digital Signature Standard (DSS). 186-2, February 2000. Available for download at http://csrc.nist.gov/encryption.

  2. D. N. Amanor, C. Paar, J. Pelzl, V. Bunimov, and M. Schimmler. Efficient Hardware Architectures for Modular Multiplication on FPGAs. In 2005 International Conference on Field Programmable Logic and Applications (FPL), Tampere, Finland, pages 539–542. IEEE Circuits and Systems Society, August 2005.

    Google Scholar 

  3. D. V. Bailey and C. Paar. Optimal Extension Fields for Fast Arithmetic in Public-Key Algorithms. In H. Krawczyk, editor, Advances in Cryptology — CRYPTO ’98, volume LNCS 1462, pages 472–485, Springer-Verlag, Berlin, 1998.

    Google Scholar 

  4. D. V. Bailey and C. Paar. Efficient Arithmetic in Finite Field Extensions with Application in Elliptic Curve Cryptography. Journal of Cryptology, 14(3):153–176, 2001.

    MathSciNet  MATH  Google Scholar 

  5. P. Barrett. Implementing the Rivest, Shamir and Adleman public-key encryption algorithm on standard digital signal processor. In A. Odlyzko, editor, Advances in Cryptology — CRYPTO’86, volume 263 of LNCS, pages 311–323. Springer-Verlag, Berlin 1987.

    Google Scholar 

  6. L. Batina, S. B. Ors, B. Preneel, and J. Vandewalle. Hardware architectures for public key cryptography. Integration, the VLSI Journal, 34(6):1–64, 2003.

    Article  Google Scholar 

  7. G. Blakley. A computer algorithm for calculating the product \(A \cdot B\) modulo M. IEEE Transactions on Computers, C-32(5):497–500, May 1983.

    Article  Google Scholar 

  8. D. Boneh and M. Franklin. Identity-Based Encryption from the Weil Pairing. In J. Kilian, editor, Advances in Cryptology — CRYPTO 2001, volume LNCS 2139, pages 213–229. Springer-Verlag, Berlin 2001.

    Google Scholar 

  9. V. Bunimov and M. Schimmler. Area and Time Efficient Modular Multiplication of Large Integers. In IEEE 14th International Conference on Application-specific Systems, Architectures and Processors, June 2003.

    Google Scholar 

  10. A. Daly, L. Marnaney, and E. Popovici. Fast Modular Inversion in the Montgomery Domain on Reconfigurable Logic. Technical report, University College Cork, Cork, Ireland, 2004.

    Google Scholar 

  11. W. Diffie. Subject: Authenticity of Non-secret Encryption documents. World Wide Web, October 6, 1999. Email message sent to John Young. Available at http://cryptome.org/ukpk-diffie.htm.

  12. W. Diffie and M. E. Hellman. New directions in cryptography. IEEE Transactions on Information Theory, IT-22(6):644–654, November 1976.

    Article  MathSciNet  Google Scholar 

  13. T. ElGamal. A public key cryptosystem and a signature scheme based on discrete logarithms. IEEE Transactions on Information Theory, 31:469–472, 1985.

    Article  MathSciNet  MATH  Google Scholar 

  14. J. H. Ellis. The Story of Non-secret Encryption. Available at http://jya.com/ellisdoc.htm, December 16th, 1997.

  15. I. E. T. Force. The Kerberos Network Authentication Service (V5). RFC 4120, July 2005.

    Google Scholar 

  16. D. M. Gordon. A survey of fast exponentiation methods. Journal of Algorithms, 27:129–146, 1998.

    Article  MathSciNet  MATH  Google Scholar 

  17. J. Guajardo, T. Güneysu, S. S. Kumar, C. Paar, and J. Pelzl. Efficient hardware implementation of finite fields with applications to cryptography. Acta Applicandae Mathematicae, 93:75–118, 2006.

    Article  MathSciNet  MATH  Google Scholar 

  18. J. Guajardo and C. Paar. Efficient Algorithms for Elliptic Curve Cryptosystems. In B. Kaliski, Jr., editor, Advances in Cryptology — CRYPTO ’97, volume 1294, pages 342–356, Springer Verlag, Berlin August 1997.

    Google Scholar 

  19. J. Hoffstein, D. Lieman, J. Pipher, and J. H. Silverman. NTRU: A Public Key Cryptosystem. Technical report, Aug. 11 1999.

    Google Scholar 

  20. K. Hwang. Computer Arithmetic: Principles, Architecture and Design. John Wiley & Sons, Inc. New York, 1979.

    Google Scholar 

  21. T. Itoh and S. Tsujii. A fast algorithm for computing multiplicative inverses in \(GF(2^m)\) using normal bases. Information and Computation, 78:171–177, 1988.

    Article  MathSciNet  MATH  Google Scholar 

  22. D. Knuth. The Art of Computer Programming, Seminumerical Algorithms, volume 2. Addison-Wesley, Reading, MA November 1971. 2nd printing.

    Google Scholar 

  23. D. E. Knuth. The Art of Computer Programming, Vol. 2: Seminumerical Algorithms, volume 2. Second edition, Addison-Wesley, Reading, MA 1973.

    Google Scholar 

  24. N. Koblitz. Elliptic curve cryptosystems. Mathematics of Computation, 48(177):203–209, January 1987.

    Article  MathSciNet  MATH  Google Scholar 

  25. N. Koblitz. Hyperelliptic cryptosystems. Journal of Cryptology, 1(3):129–150, 1989.

    Article  MathSciNet  Google Scholar 

  26. N. Koblitz. A Course in Number Theory and Cryptography. Springer Verlag, New York, 1994.

    Google Scholar 

  27. N. Koblitz. An Elliptic Curve Implementation of the Finite Field Digital Signature Algorithm. In H. Krawczyk, editor, Advances in Cryptology — CRYPTO 98, volume LNCS 1462, pages 327–337. Springer-Verlag, Berlin 1998.

    Chapter  Google Scholar 

  28. Ç. K. Koç, T. Acar, and B. S. Kaliski. Analyzing and comparing Montgomery multiplication algorithms. IEEE Micro, 16(3):26–33, June 1996.

    Article  Google Scholar 

  29. A. Lenstra and E. Verheul. Selecting Cryptographic Key Sizes. In H. Imai and Y. Zheng, editors, Practice and Theory in Public Key Cryptography–-PKC 2000, volume 1751, pages 446–465, January 2000.

    Google Scholar 

  30. R. J. McEliece. A public-key cryptosystem based on algebraic coding theory. DSN Progress Report, pages 42–44, 1987.

    Google Scholar 

  31. A. J. Menezes, P. C. van Oorschot, and S. A. Vanstone. Handbook of Applied Cryptography. The CRC Press series on discrete mathematics and its applications. 1997.

    Google Scholar 

  32. R. C. Merkle. Secure communications over insecure channels. Communications of the ACM, 21(4):294–299, 1978.

    Article  Google Scholar 

  33. P. Mihăilescu. Optimal Galois Field Bases Which Are Not Normal. Recent Results Session — FSE ’97, 1997.

    Google Scholar 

  34. V. S. Miller. Use of Elliptic Curves in Cryptography. In H. C. Williams, editor, Advances in Cryptology — CRYPTO ’85, volume 218, pages 417–426, August 1986.

    Google Scholar 

  35. P. Montgomery. Modular multiplication Without trial division. Mathematics of Computation, 44(170):519–521, April 1985.

    Article  MathSciNet  MATH  Google Scholar 

  36. National Institute of Standards and Technology (NIST). Recommended Elliptic Curves for Federal Government Use, July 1999. csrc.nist.gov/csrc/fedstandards.html.

    Google Scholar 

  37. J. Pollard. Monte Carlo methods for index computation mod p. Mathematics of Computation, 32(143):918–924, July 1978.

    MathSciNet  MATH  Google Scholar 

  38. R. L. Rivest, A. Shamir, and L. Adleman. A method for obtaining digital signatures and public-key cryptosystems. Communications of the ACM, 21(2):120–126, February 1978.

    Article  MathSciNet  MATH  Google Scholar 

  39. B. Schneier. Crypto-Gram Newsletter. World Wide Web, May 15, 1998. Available at http://www.schneier.com/crypto-gram-9805.html.

  40. K. Sloan. Comments on a computer algorithm for calculating the product \(A \cdot B\) modulo M. IEEE Transactions on Computers, C-34(3):290–292, March 1985.

    Article  MathSciNet  Google Scholar 

  41. N. Smart. Elliptic curve cryptosystems over small fields of odd characteristic. Journal of Cryptology, 12(2):141–151, Spring 1999.

    Article  MathSciNet  MATH  Google Scholar 

  42. J. Solinas. Generalized Mersenne Numbers. Technical Report, CORR 99-39, Department of Combinatorics and Optimization, University of Waterloo, Canada,, 1999.

    Google Scholar 

  43. L. Song and K. K. Parhi. Low energy digit-serial/parallel finite field multipliers. Journal of VLSI Signal Processing, 19(2):149–166, June 1998.

    Article  Google Scholar 

  44. J. von zur Gathen and M. Nöcker. Exponentiation in Finite Fields: Theory and Practice. In T. Mora and H. Mattson, editors, Applied Algebra, Algebraic Algorithms and Error Correcting Codes — AAECC-12, volume LNCS 1255, pages 88–113. Springer-Verlag, 2000.

    Google Scholar 

  45. C. Walter. Logarithmic speed modular multiplication. Electronics Letters, 30(17):1397–1398, 1994.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Tim Güneysu .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer Science+Business Media, LLC

About this chapter

Cite this chapter

Güneysu, T., Paar, C. (2010). Modular Integer Arithmetic for Public Key Cryptography. In: Verbauwhede, I. (eds) Secure Integrated Circuits and Systems. Integrated Circuits and Systems. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-71829-3_1

Download citation

  • DOI: https://doi.org/10.1007/978-0-387-71829-3_1

  • Published:

  • Publisher Name: Springer, Boston, MA

  • Print ISBN: 978-0-387-71827-9

  • Online ISBN: 978-0-387-71829-3

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics