We will discuss secure multiparty computation (MPC), a suprisingly powerful branch of cryptography that allows mutually untrusting parties to work together to securely run programs on private data. We will discuss both the theory and the practice of this emerging technology. Our discussion will cover computing on private data, zero-knowledge proofs, oblivious RAM, and more.
We will meet Tuesdays and Thursdays from 11:00am – 12:15pm in 1214 Siebel Center. Lectures will be recorded and made available here.
Office Hours are tentatively scheduled for 12:30–1:30pm on Tuesdays and 1:30-2:30pm on Thursdays (update based on in-class discussion) in 4322 Siebel Center.
Homeworks will be made available here and submitted via Gradescope. Use code 2PJ8EX to sign up.
A discussion board is available on Campuswire. Use code \(3707\) to sign up.
Book (optional): A Pragmatic Introduction to Secure Multi-Party Computation by David Evans, Vladimir Kolesnikov, and Mike Rosulek. The book is available free of charge: https://securecomputation.org
Research papers. This is an advanced topics class, and some of the topics are best (or only) documented the research literature. The lecture schedule will include links to relevant research papers.
The main prerequisite is mathematical maturity. You will be expected to read, understand, and write formal definitions/proofs. The course is designed for a wide audience, and cryptographic background is not expected. Basic understanding of probability theory and of computational models, e.g. Turing machines, will be helpful.
Formally, the following courses (or equivalent experience) is required:
CS 374: Introduction to Algorithms & Models of Computation
CS 361: Probability & Statistics for Computer Science
Participation (\(10\%\)). Please show up to class, and participate in discussions in class and on Campuswire.
Three homework assignments (\(60\%\)). Homework submissions must be typed. You may complete homeworks in any editor, but LaTeX submissions are preferred and templates will be provided.
Final project and presentation (\(30\%\)). In teams (of size to be decided), you will read research papers in MPC or a related area, you will write a review of your topic, and you will present your topic to the class. Discuss your chosen topic with me before beginning to work. You will submit your write-up and your slides as a deliverable.
Some extra credit opportunities might be made available throughout the semester. Your first opportunity is to visit office hours within the first four weeks of class for \(1\%\) extra credit.
The instructions/rubric for your final project are here. You can download a template for your review here.
Homework materials follow:
Homeworks are to be completed and submitted individually. However, you may collaborate with up to one other student on homework assignments. On each homework submission, declare your collaborator (if any). In your collaboration you are expected to discuss the homework, not to copy answers. Plagiarism will not be tolerated (see Academic Integrity).
Topics covered in the course include – but are not limited to – the following:
Definitions of MPC security (simulators)
Secret Sharing
Oblivious Transfer
The GMW Protocol
Garbled Circuits
MPC Toolchains
Malicious security
Oblivious RAM
Zero Knowledge Proofs
Depending on time remaining, we will review previously discussed topics, and move on to other topics such as (but not limited to):
Function secret sharing
Private Set Intersection
Private Information Retrieval
Universal Circuits
Oblivious Transfer Extension
Garbled RAM
Academic dishonesty is a serious offense. The University of Illinois Urbana-Champaign Student Code (https://studentcode.illinois.edu) is considered a part of this syllabus. If you are ever in doubt of what constitutes plagiarism or cheating, do not hesitate to ask me.
To obtain disability-related academic adjustments and/or auxiliary aids, students with disabilities must contact the course instructor and the Disability Resources and Educational Services (DRES) as soon as possible. To contact DRES you may visit 1207 S. Oak St., Champaign, call 333-4603 (V/TTY), or e-mail a message to disability@illinois.edu.