Fall 2022
Stanford University
Stanford's course covers a wide spectrum of blockchain and cryptocurrency concepts, focusing on technical aspects and engineering secure software. Bitcoin and Ethereum are the main case studies, and the course delves into numerous applications, including DeFi, NFTs, and privacy on the blockchain.
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.
The course assumes a familiarity with computer programming. CS107 (Computer Organization) or equivalent is required. CS111 (Principles of Computer Systems) or equivalent is strongly recommended. To the extent possible, the projects will be done in Python and Solidity. CS255 (Introduction to Cryptography) is helpful but not required; we will introduce concepts from cryptography as needed during class.
The potential applications for blockchains and cryptocurrencies are enormous. The course will cover the technical aspects of cryptocurrencies, blockchain technologies, and distributed consensus. Students will learn how these systems work and how to engineer secure software that interacts with a blockchain system like Bitcoin and Ethereum. This course is intended for advanced undergraduates and graduate students.
We will list external reading sources on the course syllabus page. These readings will often serve to expand on what we will discuss in class. They are not a replacement for the lectures. They are also not necessary to be read before coming to lecture, but pre-reading can help in following the lectures.
Lecture slides and readings available at Course syllabus
No videos available
Homework and projects available at Homework and projects
No other materials available