home  about  schedule  assignments  latex  handouts  references  Renate Scheidler 
Course Schedule 
This schedule is tentative and subject to change throughout the semester. Numbers in parentheses under the Lecture Topic column refer to sections in the StinsonPaterson textbook. Not everything we discuss in class is covered in this book.
Links under the Lecture Topic column direct to the lecture slides. A sceleton version of the slides for each week will be posted prior to and during the week that the material is covered. Full slides will be posted at the end of each week. Lecture slides are not a substitute for attendance. They contain a subset of what is covered in class.
There are also some links under the Tutorial Topic colum which direct to material covered in the tutorials.
Week  Dates  Lecture Topic  Tutorial Topic  Course Work 
1  Jan. 1317  Course technicalities, symmetric cryptosystems (Chapter 1)  No tutorials  Peruse the course website 
2  Jan. 2024  Classical ciphers, perfect secrecy, onetime pad (Chapter 2, Sections 3.13.3)  Individual: Congruences and modular arithmetic (Three solved proof questions)
Common (Haysn): Typesetting with LaTeX, test file (LaTeX), (PDF) 
Thoroughly read the assignments web page 
3  Jan. 2731  Entropy, product ciphers, block ciphers (3.4, 4.1)  Individual: Probability theory and perfect secrecy Common (Randy): Python crypto libraries, Jupyter notebook 
Practice LaTeX 
4  Feb. 37  Advanced Encryption Standard (4.6)  Individual: Entropy Common (Janet): Pointers on Assignment 1 

5  Feb. 1014  Cryptanalysis of block ciphers, stream ciphers, modes of operation, oneway functions, DiffieHellman protocol, primitive roots (43, 4.4, 4.7, 4.8, 12.2, A.1, A.2) 
Individual: Polynomial arithmetic Common (Janet & Randy): Dropin 
Assignment 1 due (Feb. 12) 
Feb. 1721  Reading Week  
6  Feb. 2428  More number theory, security and efficiency of DiffieHellman (7.1, A.2) Hash functions (Randy) (5.15.3) 
Individual: Modular inversion, greatest common divisor
Common (Janet): Review of solutions to Assignment 1  
7  Mar. 26  More on hash functions, SHA3, Message authentication codes (Randy) (5.45.5) Renate's Slides on Hash Functions, SHA3 and MACs 
Individual: Modes of operations for block ciphers, Python code, Jupyter notebook Common (Randy): Primitive roots, DiffieHellman, binary exponentiation, pointers on Assignment 2 

8  Mar. 913  Public key cryptography, RSA, more number theory (6.16.3, 6.7.1, A.2) No class on Friday 
Individual: Dropin Common (Janet): Midterm review (practice midterms on the handouts page)  Assignment 2 due (Mar. 14) *** new due date *** 
9  Mar. 1620  More on RSA, probabilistic encryption, yet more number theory, provable security against passive attacks (7.1, 6.4.1, 6.9, A.2) No class on Monday, Wednesday lecture video, Friday lecture video 
Individual: Cancelled, Janet's tutorial video on RSA Common: Midterm exam 
Midterm exam (Mar. 18, 18:0020:00, offcampus, submitted on Gradescope) 
10  Mar. 2327  Provable security against active attacks, GoldwasserMicali PKC, RSA OAEP, Digital signatures (6.9, 8.18.2), Monday lecture video, Wednesday lecture video, Friday lecture video 
Individual: El Gamal encryption, Randy's notes, Haysn's tutorial video, Janet's tutorial video Common: no tutorial 

11  Mar. 30  Apr. 3  El Gamal PKC, Cryptography in practice: random number generation, key management (B.1, 8.3, 12.112.2, 11.1, 8.6, 13.1) Monday lecture video, Wednesday lecture video, Friday lecture video 
Individual: Quadratic residuocity, Legendre symbols, Randy's notes, Haysn's tutorial video, Janet's tutorial video Common (Janet): Review of solutions to the midterm exam and Assignment 2, Common tutorial video 

12  Apr. 610  Cryptography in practice: entity authentication, a realworld solution (SSH) (11.3) Monday lecture video, Wednesday lecture video, no class on Friday 
Individual: Digital signatures, El Gamal signature scheme, Randy's notes, Haysn's tutorial video (starts at about 4:12), Janet's tutorial video Common (Randy): Pointers on Assignment 3, Common tutorial video 

13  Apr. 1315  Quantum cryptography and quantum computing (Janet) No class on Monday, Wednesday lecture video 
Individual: no tutorials Common: no tutorial 

Apr. 19  Assignment 3 due (Apr. 19) *** new due date! ***  
Apr. 2628  Final exam, takehome (54 hours)
