Intro to Cryptography
Oregon State University, Winter 2018

Cryptography is about using computation to protect information in the presence of adversarial behavior. In this course, you will learn how to reason about security properties in a mathematically rigorous way. You will learn the fundamental building blocks of cryptography: pseudorandom functions, encryption, hash functions, message authentication, key agreement.


Mar 14
Final exam will be Thursday 12-2.
Mar 7
HW7 released, due Mar 14.
Feb 26
HW6 released, due Mar 5.
Feb 19
HW5 released, due Feb 26.
Feb 13
Feb 6
HW4 released, due Feb 12.
Jan 29
HW3 released, due Feb 5.
Jan 22
HW2 released, due Jan 29.
Jan 12
HW1 released, due Jan 19.
Jan 11
TA office hours announced (see header above).
Jan 2
Website goes live.





We will be using my free textbook, The Joy of Cryptography. The textbook is still in draft form, and may be updated often during the quarter. Last update: Jan 22

  1. Review of Concepts & Notation
  2. One-Time Pad
  3. The Basics of Provable Security
  4. Secret Sharing
  5. Basing Cryptography on Limits of Computation
  6. Pseudorandom Generators
  7. Pseudorandom Functions
  8. Pseudorandom Permutations
  9. Security against Chosen Plaintext Attacks
  10. Block Cipher Modes of Operation
  11. Chosen Ciphertext Attacks
  12. Message Authentication Codes
  13. Hash Functions
  14. The RSA Function
  15. Diffie-Hellman Key Agreement
  16. Public-Key Encryption
  17. Everything


Other helpful references: