# (Winter 2022) CS 485/585 - Intro to Cryptography

## Resources

## Useful readings

- Advice on reading and writing mathematical proofs.
- Notes on discrete probability and on algebra by Luca Trevisan.
- MIT 6.042 Mathematics for computer science. Read their excellent companion draft book to catch up necessary math background.
- Basic number theory fact sheet [part I PDF, Part II PDF] by Dan Boneh.

## Texts

**KL**(required) Introduction to Modern Cryptography (3rd edition) by Jonathan Katz and Yehuda Lindell. Chapman and Hall/CRC Press, Dec. 2020. Jon Katz is maintaining a webpage with errata and other updates about the book.**[BS]**A Graduate Course on Applied Cryptography by Boneh and Shoup (Version 0.5 posted on Jan. 4, 2020).**[R]**The Joy of Cryptography by Mike Rosulek.**[G]**Foundations of Cryptography by Oded Goldreich. Two-volume gem for the advanced and theory-savy readers.

## Books on applied crypto

These are excellent references for more examples of concrete cryptosystems used in practice. After this course, you should be able to critically evaluate the merits or deficiencies of the cryptosystems therein (and any new cryptographic constructions you encounter).

- Handbook of Applied Cryptography by Alfred J. Menezes, Paul C. van Oorschot, and Scott A. Vanstone.
- Cryptography: Theory and Practice by Douglas R. Stinson.
- Applied Cryptography by Bruce Schneier.

## Books on math, algorithms, and complexity

- Introduction to Algorithms by Thomas Cormen, Charles Leiserson, Ron Rivest, and Cliff Stein.
- A Computational Introduction to Number Theory and Algebra by Victor Shoup.
- Introduction to the Theory of Computation by Michael Sipser.
- Probability and Computing: Randomized Algorithms and Probabilistic Analysis, by Michael Mitzenmacher & Eli Upfal.

## Crypto courses offered at other institutes

- Boaz Barak’s course (Fall 2021 at Harvard).
- Luca Trevisan’s course (Spring 2009 at Stanford)
- Dan Boneh’s online course on Coursera.

## LaTex

- A Not so short intro to LaTex PDF, a thorough introduction to LaTeX, and guide on good style.
- Online TeX editors, such as Overleaf, are convinent to get you started. Overleaf also maintains a nice set of tutorials. It’s most effective just to open a template tex file and tweak it!