Math 252: Mathematics of Public-Key Cryptography (Spring 2019)

This course concerns the mathematical problems underlying public-key ciphers and digital signatures, as well as algorithms to solve them. Topics include discrete logarithms, integer factorization, elliptic curves, and lattices. These topics provide an appealing introduction to several topics in number theory, abstract algebra, and algorithms.

Help hours

  • My office hours in SMUD 401 (tentative):
    • Tuesday 1:45-3:15
    • Wednesday 1:45-3:15
    • Friday 1:30-2:30



Problem sets will be posted here. All problem sets are due at 10pm, via Gradescope.


  • Midterm 1: Wednesday 3/6

  • Midterm 2: Wednesday 4/24

    • Remember to make a one-page note-sheet (front and back)!
    • Some exams from previous versions of the course:

      • NOTE: in past versions, midterm 2 came earlier in the semester, before elliptic curves. Therefore I’ve included some previous final exams here, with the elliptic curve problem identified, so you can try those specific problems for review.
      • 2015 Midterm 2 / Solutions (skip #5, since we didn’t discuss groups in general)
      • 2016 Midterm 2 / Solutions
      • 2015 Final exam / Solutions (problems 1, 4, 6, 9, 11 concern elliptic curves)
      • 2016 Final exam / Solutions (problems 3, 6, 10 concern elliptic curves)
      • (solutions to these old exams will be posted early next week)
    • Exam / Solutions
  • Final Exam: Monday, May 13 at 9am, in SMUD 206.

    • Remember to make a one-page note-sheet (front and back)!
    • Please bring a calculator if you have one. You should only use the four arithmetic functions.
    • 2015 Final exam / Solutions (skip problems 7(b) and 12, which concern material we didn’t cover this year)
    • 2016 Final exam / Solutions (skip problem 1(h))
    • The final exam will cover content from the entire course, with slightly higher emphasis on material from after the second midterm.
    • Exam / Solutions