## Course Goals

- Understand the mathematical underpinnings of cryptographic systems and be able to analyze their security.
- See how a problem-centric approach brings many different ideas and fields of math together to solve problems.
- Practice communicating mathematical ideas in writing and in oral communication, and translating technical mathematical ideas for a lay audience.
- Relate your mathematical knowledge of cryptographic systems to newsworthy events and policy issues.

You can find a link to the syllabus here.

## Notes

- Week 1: Intro to Cryptography
- Week 2: Cryptanalysis
- Week 3: Block Ciphers
- Week 4: Information Theory
- Week 5: Discrete Logarithms
- Week 6: Public Key Encryption
- Week 7: Elliptic Curves
- Week 8: Elliptic Curve Cryptography
- Week 9: Knapsack Encryption
- Notes
- No Slides

- Week 10: Ring Learning with Errors
- Notes
- No Slides

## Homework

- Week 1, due Thursday September 5
- Week 2, due Thursday September 12
- Week 3, due Thursday September 19
- Week 4, due Thursday September 26
- Week 5, due Thursday October 3
- Week 6, due Thursday October 10
- Week 7, due Thursday October 17
- Week 8, due Thursday October 24

## Final Presentation

#### Potential topics:

- Pseudorandom number generators
- Hashing functions
- Coding theory
- Collision attacks
- Sources of real-world vulnerabilities
- Pick a specific recent hack and explain how it works
- DES block cipher
- Primality testing
- More on elliptic curves
- More on lattice-based cryptography
- Digital signatures
- Zero-knowledge proofs (Daniel Hermosillo)
- Man-in-the-middle attacks
- Cryptocurrencies
- Error-correcting codes
- Coppersmith attacks on RSA
- Other