UW CSE 599 -- Crypto -- Spring 2015
Time and Location
- Time: 9:30-10:20, Mondays and Wednesdays
- Location: MGH 254
- Instructor: Tadayoshi Kohno (Yoshi) (Office Hours: scheduled via email or stop by my office). Email: firstname.lastname@example.org .
- TA: Cyrus Rashtchian
- For course related emails, please email both of us. Please put “CSE599” in the subject line.
- Catalyst Gradebook: not available yet
Course Mailing List
- URL for course mailing list: https://mailman1.u.washington.edu/mailman/listinfo/cse599b_sp15 . If you are enrolled in this course, then your email address should have automatically been added to this list. We plan to use this mailing list for course announcements.
- Since the class size is small, should we just use the mailing list for class discussions, or should we set up a Catalyst Forum? Let’s discuss at the first class.
- In-class quizzes: 40%
- Project: 60%
- After reading this course, you should be able to pick up, read, and understand (at a high level) a modern cryptography paper that focuses on the types of crypto that you might (today) see implemented in popular systems or defined in popular standards. I’ll explain exactly what this means at the first class.
- After this course, you should have an intuition for how cryptosystem might fail, and hence an intuition for both how to build and attack cryptosystems.
- After this course, you should be able to formally define the security properties of a cryptosystem (a key step toward either attacking the cryptosystem or building a secure one)
- Introduction to modern cryptography
- Block ciphers, pseudorandom permutations, and pseudorandom functions
- Symmetric encryption schemes
- Hash functions
- Symmetric message authentication schemes
- Symmetric authenticated encryption schemes
- Asymmetric encryption
- Digital signatures
- Key distribution
- Advanced topics, e.g., secure multiparty computation, time permitting
I anticipate having a short quiz at the beginning of most Wednesday lectures. My hope is that everyone can get a very good grade on each quiz. The quizzes should not be too hard, but will serve to help make sure that everyone is on the same page regarding the material covered in the quarter. To get a good grade on the quizzes: make sure to understand the definitions presented in previous classes, and also understand some of the basic attacks under those definitions (if any such attacks have been presented in class).
This class will involve a small project. You have at least two options for this project, though I am also open to discussing other possibilities with people -- if you want to explore something else, please let me know.
- Option 1: Review and present (for roughly 40 minutes, including Q&A) on a crypto area. By “crypto area”, I mean a specific topic in crypto (e.g., as covered by a set of 3-10 papers that either build on each other or that propose different ways of viewing the same topic or both). Yoshi will approve the areas/papers, so please ask him for suggestions or run your paper by him before you prepare to present it. The areas/papers should have a large reduction-based crypto component. In addition to your presentation, prepare a short (at most 10 page) summary of your synthesis over this area.
- Option 2: Review a non-reduction-based crypto paper that uses crypto, a system that uses crypto, or a protocol standard/specification that uses crypto. Yoshi will approve the paper/system/standard/specification, so please ask him for suggestions or run your paper/system/standard/specification by him before you do your review. In your review you will evaluate the degree to which the crypto in the paper/system/standard/specification has theoretical support. If you find that there is a gap between what the paper/system/standard/specification does and what one can do (today) from a reduction-based provable security perspective, then give possible directions for filling that gap. Present your review in class (for roughly 40 minutes, including Q&A). In addition to your presentation, prepare a short (at most 10 page) summary of findings.
The presentations will either be during class (toward the end of the quarter) or scheduled at other times, depending on how long it takes to cover the main materials of this course.
There will be a mid-quarter project checkpoint. Details forthcoming, but essentially it will involve a (short) proposal on what you plan to do for your project, due on April 27.
This is an applied cryptography course. Having some mathematical maturity, including an understanding of (basic) algorithms and probability theory, will be pretty useful.
There will be some days that I cannot make it to class. The following classes won’t happen unless I can find an available guest lecturer: April 6 (Monday), April 13 (Monday), April 15 (Wednesday), and May 20 (Wednesday).
Much of the material for this course will be taken from these lecture notes and slides: http://cseweb.ucsd.edu/~mihir/cse207/index.html. Note that the slides on that website are more up to date than the lecture notes.