George J. Schaeffer
Cryptography (Math 116) Summer 2012

Course information

Basic information about the course is contained in the following pdf file.

Accessing the textbook electronically

If you are on the UC Berkeley campus network, individual chapters of the textbook can be downloaded here (click the "Download PDF" link above the textbook reader).
If you aren't currently on the network and need the textbook, email me (gschaeff@math.berkeley.edu).

Textbook errata

Unavoidably, the textbook contains some small errors. A list of known errata can be found here. If you think you've found another error, please let me and/or the authors know!

Syllabus

Week 1: We will cover all of Chapter 1 and parts of Chapter 2, up to and including Section 2.3.

Week 2: Sections 2.3–2.9.

Week 3: Review of Chapter 3 and Sections 3.1–3.2.

Week 4: Sections 3.3–3.7.2 and extra material on RSA attacks (see PDF below).

Week 5: Sections 3.8–3.10.

Week 6: Material on finite fields (similar but not as exhaustive as Section 2.10), sections 5.1–5.4, Schoof's algorithm.

Week 7: Sections 5.5, 5.9.1, 5.9.2, 5.10.1, and 7.1–7.3. A brief introduction to cryptographic hashing functions.

Week 8: Security recommendations and standards. Review for the final exam.

Homework

Assignment 1, due Thursday, June 21st.

Assignment 2, due Monday, June 25th.

Assignment 3, due Thursday, June 28th.

Selected solutions to assignments 1–3.

Assignment 4, due Monday, July 9th.

Assignment 5, due Thursday, July 12th.

Assignment 6, due Tuesday, July 17th.

Assignment 7, due Thursday, July 19th.

Selected solutions to assignments 4–7.

Assignment 8, due Thursday, July 26th.

Assignment 9, due Tuesday, July 31st.

Assignment 10, due Thursday, August 2nd.

Assignment 11, due Monday, August 6th.

Assignment 12, due Tuesday, August 7th.

Selected solutions to assignments 8–11.

Worksheets and Other Stuff

Modular arithmetic (6/20): worksheet, solutions.

SAGE (6/21): worksheet. Link to SAGE!

A relatively elementary proof that ζ(2) = π2/6 (7/11).

Some additional attacks on RSA.

Wiener's attack and quadratic reciprocity (7/17): worksheet, solutions.

Schoof's algorithm for counting points on elliptic curves (7/26): worksheet, solutions.

Exams

Midterm 1, Tuesday, July 3rd. The exam and solutions.

Midterm 2, Monday, July 23rd. The exam and solutions.

Final, Thursday, August 9th. The exam with solutions.