Cryptocurrencies, blockchains, and smart contracts
Autumn 2020
The course covers all aspects of blockchains and cryptocurrencies, including distributed consensus, smart contracts, economics, scalability, and applications. We will focus on Bitcoin and Ethereum as case studies.
Administrative
Course syllabus (and readings)
Course overview (grading, textbooks, coursework, exams)
CS251 Lectures: | Monday, Wednesday: 2:30-3:50pm, on Zoom |
Sections: | Friday: 14:30-15:20, on Zoom. |
CA mailing list: | cs251ta@cs.stanford.edu |
Homework
Homework #1:
[pdf]
Due: Monday, Sep. 28, 2020, via Gradescope (code: 92ZNG8)
|
|
Homework #2:
[pdf]
Due: Monday, Oct. 12, 2020, via Gradescope
|
|
Homework #3:
[pdf]
Due: Wedensday, Oct. 28, 2020, via Gradescope
|
|
Final exam:
[pdf]
Due: Wedensday, Nov. 18, 2020, via Gradescope
|
Projects
Project #1: Perform Bitcoin transactions using python-bitcoinlib
Assignment:
[instructions]
[starter code]
Due: Monday, Oct. 5, 2020
|
|
Project #2: Ethereum de-centralized app (Dapp)
Assignment:
[instructions]
[starter code]
Due: Wednesday, Oct. 21, 2020
|
|
Project #3: State channel battleship
Assignment:
[instructions]
[starter code]
Due: Wed, Nov. 4, 2020
|
|
Project #4: Using SNARKs
Assignment:
[instructions]
[starter code]
Due: Wed, Nov. 11, 2020
|