Course Syllabus and readings
Fall 2015
Every lecture is accompanied by recommended reading materials that expand on what was covered in the lecture. In the listings below we use NBFMG to refer to the draft textbook Bitcoin and Cryptocurrency Technologies by Narayanan, Bonneau, Felten, Miller and Goldfeder.
Lecture 1:
9/21/15
(DB)
|
Intro to cryptography & crypto currencies
Reading:
|
Part 1: Bitcoin today | |
Lecture 2:
9/23/15
(JB)
|
Nakamoto consensus
Reading:
|
Lecture 3:
9/28/15
(JB)
|
Bitcoin's protocols
Reading:
cs251p lab 0:
Overview lecture
|
Lecture 4:
9/30/15
(DB)
|
Bitcoin applications & security
Reading:
|
Lecture 5:
10/ 5/15
(DB)
|
Bitcoin mining mechanics
Reading:
cs251p lab 1:
Set up your Bitcoin development environment
|
Lecture 6:
10/ 7/15
(JB)
|
Bitcoin mining strategy and attacks
Reading:
|
Lecture 7:
10/12/15
(JB)
|
Bitcoin community & politics
Reading:
cs251p lab 2:
Introducing bitcoind
|
Lecture 8:
10/14/15
(DB)
|
Anonymity: traceability & mixing
Reading:
|
Part 2: Extending Bitcoin | |
Lecture 9:
10/19/15
(DB)
|
Anonymity: perfect anonymity & zero knowledge cryptocurrencies
Reading:
cs251p lab 3:
Download and parse the Blockchain
|
Lecture 10:
10/21/15
(JB)
|
Overview of altcoins
Reading:
|
Lecture 11:
10/26/15
(JB)
|
Overview of Ethereum
Reading:
cs251p lab 4:
Create, sign, and send a Bitcoin transaction
|
Lecture 12:
10/28/15
(DB)
|
Programming smart contracts on Ethereum
Reading:
|
Lecture 13:
11/ 2/15
(inv)
|
Sidechains
Reading:
cs251p lab 5:
Visualize Bitcoin network traffic with Wireshark
|
Lecture 14:
11/ 4/15
(JB)
|
Alternative mining
Reading:
|
Lecture 15:
11/ 9/15
(inv)
|
Legal aspects of virtual currency (Ben Lawsky)
Reading:
cs251p lab 6:
Write a Bitcoin CPU miner and use a mining chip
|
Lecture 16:
11/11/15
(inv)
|
Stellar (David Mazieres, lecture held in Skilling Auditorium)
Reading:
|
Lecture 17:
11/16/15
(inv)
|
Crypto currencies and the developing world (Joyce Kim)
Reading:
cs251p lab 7:
Write a simple Bitcoin script
|
Lecture 18:
11/18/15
(inv)
|
Lightning networks (Tadge Dryja)
Reading:
|
Holiday: 11/23/15 |
Thanksgiving |
Holiday: 11/25/15 |
Thanksgiving |
Lecture 19:
11/30/15
(DB+JB)
|
Other block chain applications: title records, timestamping, lotteries, and randomness.
Reading:
cs251p lab 8:
Send and receive a Bitcoin micropayment
|
Lecture 20:
12/ 2/15
(inv)
|
Crypto currencies and traditional finance: running a Bitcoin exchange (Fred Ehrsam, Coinbase)
Reading:
|