Instructor  Mike Reiter
Office: Fred Brooks Building 350 Office hour: 23pm on Mondays indicated below 
Location  Sitterson Hall 011 
Meeting times  Mondays, Wednesdays 11:15am12:30pm 
Prerequisites  COMP 455 (Models of Languages and Computation) and STOR 435 (Introduction to Probability) or their equivalent 
Text  There is no textbook for this class. Instead, the class will use a collection of papers and lecture notes. 
Honor code  The degree of collaboration permitted and the resources that should be used will be specified per assignment. However, the default policy is that no collaboration or resources except those specifically provided by the class (e.g., class notes and recommended readings) should be used in completing assignments. All work must be your own. 
Course summary 
Cryptography refers to algorithmic techniques for protecting information from adversaries. While traditional goals of cryptography include preventing unintended disclosure of that information or detecting its unauthorized alteration, the field has grown in the last thirty years to include much richer primitives and protocols. Cryptographic techniques are already the basis for many security mechanisms in common use today, including secure communication protocols (e.g., TLS, IPSec), disk encryption facilities (e.g., Microsoft's BitLocker), and signed code updates. The use of cryptography will undoubtedly grow in the future, and so an understanding of modern cryptography is warranted for anyone developing technologies for use in environments where adversaries might be present. Cryptography is a class that will focus on cryptographic primitives that are in common use today, with an emphasis on understanding why they are secure and for what purposes they should be used. To accomplish this, topics will be treated in a rigorous way, with an emphasis on definitions of security properties and, where possible, proofs of why particular constructions achieve those definitions. Topics that will be covered include

Note: Class meets on days/dates in boldface.
Wk  Day  Date  Topic  Reading  Comments 

1  We  Aug 23  Course introduction [slides]
Finite fields [slides] 
UNC Honor Code  
2  Mo  Aug 28  Finite fields (cont.); Pseudorandom functions [slides]  Bellare & Rogaway, Ch. 4  
We  Aug 30  Pseudorandom functions (cont.)  
3  We  Sep 6  Pseudorandom functions (cont.)  
4  Mo  Sep 11  Pseudorandom functions (cont.)  
We  Sep 13  Symmetric encryption [slides]  Bellare & Rogaway, Ch. 5  
5  Mo  Sep 18  Symmetric encryption (cont.)  
We  Sep 20  Message authentication codes, hash functions, and authenticated encryption [slides]  Bellare & Rogaway, Ch. 7  Homework 1 out  
6  Mo  Sep 25  Message authentication codes, hash functions, and authenticated encryption (cont.)  
We  Sep 27  Message authentication codes, hash functions, and authenticated encryption (cont.)  McGrew and Viega 2004  
7  Mo  Oct 2  Number theory [slides]  Bellare & Rogaway, Ch. 9  Homework 1 due 
We  Oct 4  Number theory (cont.)  
8  Mo  Oct 9  Numbertheoretic primitives [slides]
Office hour 
Bellare & Rogaway, Ch. 10  
We  Oct 11  Asymmetric encryption [slides]  Bellare & Rogaway, Ch. 11  
9  Mo  Oct 16  ...
Office hour 

We  Oct 18  ...  
10  Mo  Oct 23  Midterm exam  
We  Oct 25  ...  
11  Mo  Oct 30  ...  
We  Nov 1  ...  
12  Mo  Nov 6  ...
Office hour 

We  Nov 8  ...  
13  Mo  Nov 13  ...
Office hour 

We  Nov 15  ...  
14  Mo  Nov 20  ...
Office hour 

We  Nov 22  No class (Thanksgiving)  
15  Mo  Nov 27  ...
Office hour 

We  Nov 29  ...  
16  Mo  Dec 4  ...
Office hour 

We  Dec 6  ...  
17  Tu  Dec 12  Final Exam 