Course Details

CS 341: Cryptography

Modern cryptographic systems allow parties to communicate in a secure way, even if they don't trust the channels over which they are communicating (or maybe even each other). Cryptography is at the heart of a huge range of applications: online banking and shopping, password-protected computer accounts, and secure wireless networks, to name just a few. In this course, we will introduce and explore some fundamental cryptographic primitives, using a rigorous, proof-based approach. Topics will include public-key encryption, digital signatures, pseudorandom number generation, zero knowledge, and novel applications of cryptography. Prerequisite: Computer Science 201 and 202. (Mathematics 236 will be accepted in lieu of CS 202)
6 credits; FSR, QRE; Offered Winter 2017; D. Liben-Nowell