Cryptocurrencies, blockchains, and smart contracts
Autumn 2021
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: 1:30-3pm, on Zoom |
Sections: | Friday: 2:45-3:45pm, STLC 119. |
CA mailing list: | cs251ta@cs.stanford.edu or use Ed Discussions. |
Course NFT: Students who completed the course received a course NFT viewable on OpenSea here.
Homeworks and Projects
Homework #1:
[pdf]
Due: Monday, Oct. 4, 2021, via Gradescope (code: D5GKRX)
|
|
Project #1: Perform Bitcoin transactions using python-bitcoinlib
Assignment:
[instructions]
[starter code]
Due: Monday, Oct. 11, 2021
|
|
Homework #2:
[pdf]
Due: Monday, Oct. 18, 2021, via Gradescope
|
|
Project #2: An Ethereum payment app
Assignment:
[instructions]
[starter code]
Due: Monday, Oct. 25, 2021
|
|
Homework #3:
[pdf]
Due: Tuesday, Nov. 2, 2021, via Gradescope
|
|
Project #3: Building a decentralized exchange (DEX)
Assignment:
[instructions]
[starter code]
Due: Wednesday, Nov. 10, 2021
|
|
Project #4: Using SNARKs
Assignment:
[instructions]
[starter code]
Due: Friday, Nov. 19, 2021
|
|
Final exam:
[pdf]
Due: Wednesday, Dec. 8, 2021, via Gradescope
|