Course Schedule, CPSC 418 / MATH 318, Winter 2020

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 Stinson-Paterson 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.

Last modified by Renate Scheidler
Week Dates Lecture Topic Tutorial Topic Course Work
1   Jan. 13-17   Course technicalities, symmetric cryptosystems (Chapter 1) No tutorials Peruse the course website
2   Jan. 20-24   Classical ciphers, perfect secrecy, one-time pad (Chapter 2, Sections 3.1-3.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. 27-31   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. 3-7   Advanced Encryption Standard (4.6) Individual: Entropy
Common (Janet): Pointers on Assignment 1
5   Feb. 10-14   Cryptanalysis of block ciphers, stream ciphers, modes of operation, one-way functions, Diffie-Hellman protocol, primitive roots (43, 4.4, 4.7, 4.8, 12.2, A.1, A.2) Individual: Polynomial arithmetic
Common (Janet & Randy): Drop-in
Assignment 1 due (Feb. 12)
  Feb. 17-21   Reading Week    
6   Feb. 24-28   More number theory, security and efficiency of Diffie-Hellman (7.1, A.2)
Hash functions (Randy) (5.1-5.3)
Individual: Modular inversion, greatest common divisor
Common (Janet): Review of solutions to Assignment 1
7   Mar. 2-6   More on hash functions, SHA-3, Message authentication codes (Randy) (5.4-5.5)
Renate's Slides on Hash Functions, SHA-3 and MACs
Individual: Modes of operations for block ciphers, Python code, Jupyter notebook
Common (Randy): Primitive roots, Diffie-Hellman, binary exponentiation, pointers on Assignment 2
8   Mar. 9-13   Public key cryptography, RSA, more number theory (6.1-6.3, 6.7.1, A.2)
No class on Friday
Individual: Drop-in
Common (Janet): Midterm review (practice midterms on the handouts page)
Assignment 2 due (Mar. 14) *** new due date ***
9   Mar. 16-20   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:00-20:00, off-campus, submitted on Gradescope)
10   Mar. 23-27   Provable security against active attacks, Goldwasser-Micali PKC, RSA OAEP, Digital signatures (6.9, 8.1-8.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.1-12.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. 6-10   Cryptography in practice: entity authentication, a real-world 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. 13-15   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. 26-28 Final exam, take-home (54 hours)
  • Set: Sunday, April 26, 11 am; posted on the Piazza resurces tab
  • Due: Tuesday, April 28, 5 pm; submission through Gradescope