COMP 655:   Cryptography

Instructor Mike Reiter
Office: Fred Brooks Building 350
Office hour: 2-3pm on Mondays indicated below
Location Sitterson Hall 011
Meeting times Mondays, Wednesdays 11:15am-12: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

  • Basics of abstract algebra
  • Pseudorandom functions and permutations
  • Symmetric encryption algorithms
  • Cryptographic hash functions
  • Message authentication codes
  • Information-theoretic security
  • Number theory and number-theoretic primitives
  • Asymmetric encryption
  • Digital signature schemes
  • Elliptic curve algorithms
  • Side-channel attacks
Time permitting, the class will also cover more advanced topics, such as
  • Interactive proofs and zero-knowledge proofs
  • Bilinear maps
  • Advanced key management techniques

Course schedule (subject to change)

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 Number-theoretic 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