Course Outline

David Tse (dntse@stanford.edu) Spring 2024-2025

1) Introduction and course overview (1 lecture)

2) Bitcoin (5 lectures)

  • Bitcoin: the first and most important blockchain.

  • Bitcoin as a payment system.

  • Bitcoin as a permissionless consensus protocol.

  • Proof-of-work.

  • Longest chain protocol.

  • Liveness and safety.

  • Throughput and latency.

  • Dynamic availability.

3) Proof-of-stake protocols (5 lectures)

  • Byzantine Fault Tolerant protocols.

  • Tendermint.

  • Deterministic vs. probabilistic finality.

  • Fast vs slow confirmation.

  • Accountability, slashing and long-range attacks.

  • Ethereum Proof-of-stake.

  • Availability-finality and availability-accountability dilemmas and their resolution via ebb-and-flow protocols.

  • Finality gadgets.

4) Blockchain scaling (7 lectures)

  • Scaling of transaction throughput under communication, storage and computing limits.

  • The data availability problem.

  • Efficient data availability via coding and verifiable information dispersal.

  • Light clients.

  • Zero-knowledge and optimistic layer 2 rollups.

  • Security sharing and staking.

  • Bridges.

  • Scaling Bitcoin.