CS 346 (Spring 2020)

Logistics: TTh 2:00-3:30
GDC 4.302
Unique Number: 50540
Professor: David Zuckerman
Email: diz@cs.utexas.edu
Phone: 471-9729
Office: GDC 4.508
Office Hours: TBD
Textbook: Jonathan Katz and Yehuda Lindell, Introduction to Modern Cryptography
Course Overview: This undergraduate course is an introduction to cryptography, covering the mathematical techniques behind computer security. It includes methods to communicate secretly and authenticate data in the presence of adversarial attacks. We will show how to do seemingly impossible tasks, such as how two parties can communicate secretly even if they didn't agree on a secret key beforehand. To do this properly, we'll need to give precise definitions and computational assumptions, so that we can rigorously prove security. This course will be very mathematical, relying on probability and number theory and mathematical proof. A list of topics and approximate times follows.

Topic Chapter(s) Approximate Time
Introduction, Perfect Secrecy 1-2 1 week
Private-Key Encryption 3 2 weeks
Authentication 4 2 weeks
Hash Functions 5 1 week
One-Way Functions, Pseudorandomness 7 1 week
Number Theory 8 1 week
Public-Key Cryptography 10-12 3 weeks
Zero Knowledge N/A 1 week

Prerequisites: CS 331 or 331H. Naturally, you also need the prerequisites and corequisites for CS 331, including Discrete Math (CS 311 or 311H), Probability (SDS 321 or M 362K), and Linear Algebra (SDS 329C, Math 340L, or Math 341). Probability is essential, so make sure you know it well. Number theory is helpful but not required.

Last modified: November 26, 2019.