Cryptography - CS 346

Spring 2013

Course Overview

The objective of this course is to familiarize the students with cryptography and its applications. Topics will include historical cryptography, encryption, authentication , public key cryptography, number theory.

This class will foucs on understanding the theoretical underpinnings of cryptography. Key components of this course are understanding how to precisely formulate security definitions and how to rigoursly prove theorems. This course is designed to be a challenging theory course . A good background and comfort in classes such as CS331 is important. A large component will be problems sets. These sets are meant to develop problem solving skills.


Details about the class, schedule, and grading policy are contained in the class syllabus .

Contact Information and Office Hours

Instructor: Prof. Brent Waters
Office: GDC 6.810A
Office Hours: Monday after class

TA: Yannis Rouselakis
Office Hours Location: GDC 6.702A
Office Hours Time:Tuesday, 2-3 pm

TA: Richard McPherson
Office Hours Location: GATES 6.728E
Office Hours Time: Wednesday, 2-3 pm, Friday (swapping with Yannis), 2-3 pm

Class Time: M,W 10-11:30
Class Location: CBA 4.326

Please try to first see if questions can be resolved with email to the TAs.

Course Information and Links

Problem set solutions must be written up in Latex. Here is a guide for doing so.

Components of the class include:

Problem Sets
In Class Exams
Research Investigation Project
Number theory handout (from Dan Boneh) (1) (2)
Research Investigation

Class notes

A set of course notes were taken by in 2010 and 2012. The material and the way it is presented has naturally evolved over time, however, much of it is similar and these can serve as a supplement to a student's own notes.