Dawn Song Ahmed Kosba Jian Liu Yupeng Zhang
Dawn Song Ahmed Kosba Jian Liu Yupeng Zhang
Professor, EECS Postdoc, EECS Postdoc, EECS Postdoc, EECS

Volunteer Teaching Assistant

Tiancheng Xie


Time: Monday 4:00–6:00 pm

Location: Soda 310

Piazza and Mailing List

If you are taking the class, please sign up for the course mailing list for future announcements. You can add yourself to the list by clicking the link and “Join group”. Be sure to be signed in to your Google account.

If you do not plan to take the class, but are interested in getting announcements about guest speakers in class, and more generally, blockchain talks at Berkeley, please sign up for the talk announcement mailing list for future announcements.

Course announcements will be announced through Piazza. If you are enrolled in the class, sign up on Piazza.

Course description

Blockchain has the potential to transform many segments of the industry and society. In this course, we plan to cover advanced topics on blockchain, smart contracts, and cryptoeconomics. We will discuss recent research papers and techniques on scalability, privacy, different consensus mechanisms, attacks on blockchain and smart contracts and mitigation against them, applications of blockchain and smart contracts, and cryptoeconomics.

The course is 3-units, and will consist of several research paper readings per week, in-class discussions of the papers, and a large course project per project group.

Course intro slides.


Date Section Topic Readings Talk Deadlines
08/27 Introduction Introduction and Logistics
  • History and overview of blockchains
  • Nakamoto consensus and Bitcoin
  • Bitcoin formalism
Kartik Nayak (Slides)
09/03 No Class, Labor Day
09/10 Scalability Byzantine fault tolerance (BFT) Concensus Dahlia Malkhi (Slides) Team Formation Due 09/10
09/17 Block DAG Protocols Fan Long (Slides)
09/24 Horizontal scaling
  • Revisiting scalability
  • Challenges for horizontal scaling
  • Blockchain sharding
  • Asynchronous execution
Jian Liu (Slides) Project Proposals Due 09/30
10/01 Non-PoW Consensus Approaches
  • PoS
  • Verifiable Delayed functions
  • etc
Benedikt Bünz (Slides)
10/08 Privacy Zero-knowledge proofs in practice
  • Privacy in decentralized cryptocurrencies
  • zk-SNARKs (constructions, tools and applications in cryptocurrency)
  • New ZK proof constructions
Ahmed Kosba (Slides)
10/15 Secure multi-party computation (SMC)
  • Background and definitions
  • Existing contrustions: garbled circuit and GMW protocol
  • Privacy-preserving blockchain using SMC
  • Achieving fairness in SMC using blockchain
Yupeng Zhang (Slides)
10/22 Secure hardware
10/29 Applications Applications & secure contract programming Ahmed Kosba (Slides) Project Progress Report Due 10/29
11/05 CryptoEconomics
11/12 No Class, Veterans Day
11/19 Cancelled
  • Talks on Stablecoins
  • Project Presentations
  • Nevin Freeman (Reserve)
  • Niklas Kunkel (MakerDAO) [Slides]
Project Report Due 12/05

Class format and project

This is a project oriented class. Each lecture will focus on one of the research topics on blockchain and cryptocurrencies. Each week, students are expected to complete reading assignments before class and participate actively in class discussion.

Students will also form project groups and complete a high-impact research project. The final project/deliverable will be a team presentation and a paper/report on the project.


Enrollment information

Enrollment is very limited. If you require an authorization code to enroll in the class, please fill out this form. Accepted students will be given instructor codes to register for the class. Decisions for admission will be released on a rolling basis. Due to limited space, please apply as soon as possible.

Supplemental Reading

Bitcoin and Cryptocurrency Technologies - Free introductory book available on website

Additional Notes

For students who need computing resources for the class project, we recommend you to look into AWS educate program for students. You’ll get 100 dollar’s worth of sign up credit. Here’s the link.