Description
The first half of the course investigates cryptocurrencies, the blockchain technology underpinning them, and the incentives for each participant. Students will learn how to create transactions, develop smart contracts, and participate in decentralized exchanges. Then, we take a deeper dive into consensus mechanisms, historical and modern, that maintain stability if a certain fraction of the participants or computing power behaves honestly.
The second half of the course focuses on privacy and anonymity using advanced tools from cryptography. We study zero knowledge proofs and their role in preventing re-identification attacks and increasing scalability of blockchains. We also study secure multiparty computation and its role in designing private contracts and atomic swaps. The course concludes with a broader exploration into the power of conducting data science without being able to see the underlying data.
Within the undergraduate Data Sciences major, this course satisfies the DS methodology elective in the “scalable & trustworthy DS” category.
General Information
- In your submission, you must list (a) names of classmates you worked with, (b) any websites you used besides the ones listed in the lecture notes or textbooks, and (c) any code that you used from other sources. Taking ideas without attribution will be considered plagiarism. You are graded on your original work.
- You cannot copy solutions from anyone else, or give your solutions to a classmate to copy.
The goal of the exams is for you to show me what you have learned. As a result, any collaboration is strictly prohibited; exams must reflect solo work. (But I encourage you to work with classmates in preparing for the exams.)
Announcements
This page contains the lesson plan for lectures and discussion sections in DS 453 / 653. The discussion sections are marked with an asterisk (*).
The schedule will be continually updated as new lectures and assignments are posted. All lectures and labs will be recorded on Zoom. We will try to post the notes and video of each lecture.
Part 1: Currencies without centralization
(Resource: Bitcoin and Cryptocurrency Technologies textbook)
Week | Topic | Reading | Assignment |
1 | Crypto building blocks | NBFMG Preface and Chapter 1 | |
2 | Bitcoin blockchain | NBFMG Chapters 2-3 | |
3 | Mining via proof of work | NBFMG Chapters 5 and 8 | HW1 due 2/3 |
Part 2: Consensus without trust
(Resources: Decentralized Thoughts blog, and Foundations of Distributed Consensus and Blockchains textbook)
Week | Topic | Reading | Assignment |
4 | Reaching agreement, with signatures | HW2 due 2/10 | |
5 [Lab 4 notes 1, notes 2, and video] [Lecture 9 video] | Reaching agreement, without signatures | HW3 due 2/17 | |
6 [Lab 5 video] | From broadcast to blockchains | Shi, Chapters 6 and 13 | HW4 due 2/24 |
7 | The power of randomness | MIDTERM EXAM on 3/2 | |
(spring break) |
Part 3: Data analysis without data sharing
(Resource: A Pragmatic Introduction to Secure Multi-Party Computation textbook)
Week | Topic | Reading | Assignment |
8 | Ethereum/proof of stake & introduction to MPC | Pragmatic MPC, pages 5-18 (Sections 1-2.2) | |
9 | MPC with verifiability and for databases | Pragmatic MPC, pages 32-46 (Sections 3.1-3.4) |
HW5 due 3/24 |
Part 4: Accountability without transparency
(Helpful resources: zkp.science and zkproof.org)
Week | Topic | Reading | Assignment |
10 [Lab 9 video] | Zero knowledge proofs | (none) |
HW6 due 3/31 |
11 | SNARKs and their use in blockchains |
HW7 due 4/7
|
Part 5: Advanced topics
Week | Topic | Reading | Assignment |
12 | Lightning, pseudonymity and mixing, proof of stake | NBMFG Chapter 6 |
All HW resubmits open until 4/15 |
13 | MPC + blockchains (fairness with penalties, storing secrets) | PROJECT first draft due 4/21 |
Part 6: Social, policy, legal, and regulatory impacts
Week | Topic | Reading | Assignment |
14 | Community and society | NBMFG Chapter 7 | |
15 [Lecture 25 notes (no video)] | Project presentations |
PROJECT final draft due 5/1 PROJECT presentations in-class 5/2 | |
FINAL EXAM |
Name | Office Hours | |
---|---|---|
Mayank Varia | When? Where? | |
Nicolas Alhaddad | When? Where? |