The Joy of Cryptography

By Mike Rosulek

An undergraduate-level textbook introducing students to the fundamentals of provable security

Contents About this book

About this book

This is the online edition of a textbook published by MIT Press. Currently the first 3 chapters are available here under Creative Commons license CC-BY-ND-NC. The remaining chapters will become available in July 2026. A more detailed table of contents is here.

More info for students More info for teachers More info about the online edition Errata Report a bug Buy the print edition (affiliate link)

  1. Unconditional Cryptography

    1. One-Time Pad & the Provable Security Mindset
    2. Rudiments of Provable Security
    3. ☆ Secret Sharing
  2. Pseudorandomness

    1. Modern Computational Cryptography
    2. Pseudorandom Generators
    3. Pseudorandom Functions
    4. Pseudorandom Permutations
  3. Symmetric-Key Encryption

    1. Chosen-Plaintext Attacks Against Encryption
    2. Chosen-Ciphertext Attacks Against Encryption
  4. Hashing

    1. Collision-Resistant Hash Functions
    2. ☆ Universal Hash Functions
    3. Random Oracles and Other Idealized Models
  5. Asymmetric-Key Cryptography

    1. Key Exchange
    2. Public-Key Encryption
    3. RSA
    4. Digital Signatures
  6. Advanced Topics

    1. Encrypted Messaging & Ratcheting
    2. Authenticated Key Exchange
    3. Zero-Knowledge Proofs
    4. Post-Quantum Cryptography
  7. Appendix

    1. Math Review
    2. Binary Finite Fields
    3. Bibliography