This course is now completed and the website is maintained for archival purposes only. For the most recent offering of this course, please click here.

COMP 4109: Applied Cryptography
Tuesdays & Thursdays, 13:05–14:25, UC 280

Calendar Description: Practical aspects of cryptography. Pseudo random number generation, symmetric cryptography (stream and block ciphers), modes of operation, hash functions, message and entity authentication protocols, zero knowledge, pitfalls deploying public-key encryption and digital signatures, key distribution, secret-sharing.


We will use the following freely available textbooks (hardcopies can be be ordered). Exams and assignments will primarily be based on the lecture notes, with the textbooks providing additional detail and formalization:

The exact sections covered will be provided as the course progresses.

Marking Scheme

University Policies

For information on university policies regarding academic integrity/plagiarism, unauthorized collaboration, academic accommodation related to disabilities, religious obligation, preganancy obligation and medical certificates, see the standard university template information as found on this course outline page.

Course Outline

Topics studied are drawn from those in the course description (see top of page) and course text. Topics and corresponding textbook chapters will be posted here as the term progresses, adjusted and updated on an ongoing basis.

Assignments and Exams

Assignements are due by the end of class on the due date. They can be handed in during class, emailed to anytime before the deadline, or slipped under my office door anytime before the deadline. See the assignment itself for the late policy.

Scribe Notes

Scribe notes should convey the material presented in the lecture to a degree that is sufficient for somone who did not attend the lecture. Scribe notes are due at 1:00 pm one week after the lecture being scribed. Scribe notes should be human-readable (LaTeX, Word, image of handwritten notes). I prefer a digital copy, sent via email to For large files (images), you may send a dropbox link, via YouSendIt, or put on my USB key before/after class. Toward the end of the course, starting at a time TBA, we may implement two scribes per lecture to ensure everyone has a lecture to scribe. In this case, scribe notes are to be done individually.

Scribing order (randomly decided): Michael Bingham, John Kohnen, Kaisar Akhmet, Jason Kemp, Kimberly Crosbie, Jude Perera, Dylan Kristolaitis, Matthew Brett, Radu Carpa, Navid Jalili, Roham Sakhravi, Spencer Whyte, Jason Knabl, Joseph Richard, Kevin Fournier, Robert Wolfe, Gehana Booth, Matthew Brown, Mathieu Hubbard, Andrew Soknacki, Rabil Nyssanbayev, Allan Wee, Matthew Tucciarone and Dylan Troop.