Cryptograpgy

The following books are recommended as background and advanced resources:

  • A Computational Introduction to Number Theory and Algebra (Version 2) by Victor Shoup, Cambridge University Press, 2008. Great textbook providing extensive background, and beyond. Free download available.
  • Secure Multiparty Computation and Secret Sharing by Ronald Cramer, Ivan Damgård, and Jesper Buus Nielsen, Cambridge University Press, 2015. Great expository text on information-theoretic secure multiparty computation and supporting techniques. See online information.
  • Cryptography: An Introduction by Nigel Smart, McGraw-Hill, 2003. Modern introduction at a reasonable level of detail. The 3rd edition can still be downloaded for free. Text has been reworked into a new book Cryptography Made Simple.
  • Introduction to Modern Cryptography by Jonathan Katz and Yehuda Lindell, Chapman & Hall/CRC Press, 2007. An extensive, rigorous, yet accessible treatment of modern cryptography, based on formal security definitions and with security proofs; mostly covering basic encryption and authentication techniques though. See online information.
  • Foundations of Cryptography by Oded Goldreich, 2001 (Vol. 1), 2004 (Vol. 2). Thorough treatment of theoretical results in cryptography, with an extensive treatment of zero-knowledge protocols and general two/multi-party protocols. See online information.
  • Fundamentals of Cryptology: A Professional Reference and Interactive Tutorial by Henk van Tilborg, Kluwer Academic Publishers, 2000. See online information. Classic text with many worked examples in Mathematica (PDF and Mathematica notebook).
  • Cryptography: Theory and Practice by Douglas Stinson and Maura Paterson, 4th edition, CRC Press, 2018. See online information.
  • Complexity and Cryptography: An Introduction by John Talbot and Dominic Welsh, Cambridge University Press, 2006. Accessible treatment mainly of cryptographic algorithms, but also of some cryptographic protocols, combined with the relevant notions and ideas of computational complexity. See online information.
  • Handbook of Applied Cryptography by Alfred Menezes, Paul C. van Oorschot, and Scott Vanstone, 1997. Download for free at cacr.uwaterloo.ca/hac/.