CS 388H: Cryptography (Graduate)
This course surveys the foundations of cryptography from formal notions of
security to fundamental protocols, including one-way functions, encryption,
pseudorandom generators, signature schemes, and zero-knowledge proofs.
CS 346: Cryptography (Undergraduate)
This course provides an introduction to modern cryptography. Topics include
symmetric cryptography, public-key cryptography, digital signatures,
key agreement, and zero-knowledge proofs. We will also cover proper usage
of cryptographic primitives.
CS 395T: Topics in Cryptography
This course covers recent developments in cryptography, including concepts
like cryptographic proof systems, homomorphic encryption, functional
encryption, and more. Topics will vary each year.
CS 6222: Introduction to Cryptography
This course will provide an introduction to modern cryptography and its
applications to computer security. This course will cover the fundamentals of
symmetric cryptography (i.e., encryption and message authentication) and
public-key cryptography (i.e., key-exchange and signatures) as well as
cryptographic protocols like zero-knowledge proof systems.
CS 4102: Algorithms
This course introduces the analysis of algorithms and the effects of data
structures on them. Algorithms selected from areas such as sorting, searching,
shortest paths, greedy algorithms, backtracking, divide-and-conquer, and
dynamic programming. Data structures include heaps and search, splay, and
spanning trees. Analysis techniques include asymtotic worst case, expected
time, amortized analysis, and reductions between problems.
CS 6501: Advanced Topics in Cryptography
This course will cover a collection of advanced topics in modern cryptography.
We will begin with the theoretical foundations of cryptography, and then
move on to discuss zero-knowledge proof systems, multiparty computation,
elliptic-curve cryptography, post-quantum cryptography, and more.
CS 355: Advanced Topics in Cryptography
An advanced course in cryptography. Topics include foundations of
cryptography, cryptographic protocols, elliptic-curve cryptography,
post-quantum cryptography, and recent real-world applications of cryptography.
CS 359C: Classics of Cryptography
This seminar course revisits some of the greatest discoveries in modern
cryptography: zero-knowledge proofs, factoring algorithms, elliptic-curve
cryptography, post-quantum cryptography, and more. The course readings will be
a combination of the original "classic" papers as well as more modern
treatments of the same topics.