CS 251: Cryptocurrencies and Blockchain Technologies

Cryptocurrencies, blockchains, and smart contracts

Autumn 2019

The course covers all aspects of cryptocurrencies, including distributed consensus, blockchains, smart contracts and applications. We will focus in detail on Bitcoin and Ethereum as case studies.

Administrative

Course syllabus (and readings)
Course overview (grading, textbooks, coursework, exams)
CS251 Lectures: Monday, Wednesday:   15:00-16:20,   Gates B01
Sections: Friday:   14:30-15:20,   Thornton 102.
CA mailing list: cs251ta@cs.stanford.edu

Homework

--
Homework #1:    [pdf]
Due: Monday, Oct. 7 2019, via Gradescope (code: MG7EP3)
--
Homework #2:    [pdf]
Due: Monday, Oct. 21 2019, via Gradescope
--
Homework #3:    not out yet
Due: Monday, Dec. 2 2019, via Gradescope

Projects

--
Project #1: Perform Bitcoin transactions using python-bitcoinlib
Assignment:    [instructions]   [starter code]
Due: Monday, Oct. 14 2019
--
Project #2: Ethereum de-centralized app (Dapp)
Assignment:    not out yet
Due: Monday, Oct. 28, 2019
--
Project #3: Using SNARKs
Assignment:    not out yet
Due: Monday, Nov. 18, 2019

Course calendar