CS 854: Consensus Protocols and Blockchains

Information

Instructor: Bernard Wong
Email: bernard@uwaterloo.ca
Time: Every Friday at 1:00-3:50 Spring 2024
Location: DC 2585
URL : http://www.cs.uwaterloo.ca/~bernard/courses/cs854-S24

Description

CS854 is a graduate course on current topics in consensus protocols and blockchains. It is offered as a "paper-chase" course: we read and discuss important papers on different subtopics each week. Students must also complete a final project that explores a new idea in one of the sub-topics covered in the course. The goal is that by the end of the course, the final project can serve as a starting point for a workshop paper submission.

Grading

The following is the tentative course grades breakdown.

Paper Reviews

Before each class, each student must submit a review for two of the papers to be discussed that day. A review should include a paragraph summarizing the core contributions of the paper, and a second paragraph that identifies weaknesses in the paper and areas in which the paper can be expanded upon.

Please inform me via email the circumstances for each late or missed submission.

Paper Presentations

Each student is expected to present one or more papers to be discussed in class for at least one class. The paper presentations should follow the same format as a conference talk. The presenter should be prepared with sufficient background knowledge of the related works in the area to answer broad questions and lead the class discussion.

Presenters: Please send me a copy of your slides at least two days before your presentation. I will provide feedback on the slides the next day. Do not just re-use slides provided by the paper authors. You may borrow, with attribution, figures and animations, but your slides should be created independently.

Reading

Date Topic
5/10 Introduction: General course description. Blockchains overview.

Bitcoin: A Peer-to-Peer Electronic Cash System

Ethereum Whitepaper

5/17 Classic Consensus Protocols

The Part-Time Parliament

The Byzantine Generals Problem

Practical Byzantine Fault Tolerance

HotStuff: BFT Consensus with Linearity and Responsiveness

5/24 Consensus for Blockchains

SoK: Consensus in the Age of Blockchains (Amin)

Algorand: Scaling Byzantine Agreements for Cryptocurrencies

Scalable and Probabilistic Leaderless BFT Consensus through Metastability (Stephen Buttolph)

Monoxide: Scale Out Blockchain with Asynchronous Consensus Zones (Ayinde)

(Optional) Proof of Stake FAQ

5/31 Smart Contracts

Making Smart Contracts Smarter (Xintong)

Smart Contract Development: Challenges and Opportunities (Albert)

Smart Contract Vulnerabilities: Vulnerable Does Not Imply Exploited (Ayinde)

Proxy Hunting: Understanding and Characterizing Proxy-based Upgradeable Smart Contracts in Blockchains

6/7 DeFi and Oracles

SoK: Decentralized Finance (DeFi) (Jun)

Uniswap Whitepaper (Daniel)

AAVE Protocol Whitepaper

SoK: Oracles from the Ground Truth to Market Manipulation (Steven)

(Optional) Chainlink 2.0: Next Steps in the Evolution of Decentralized Oracle Networks

6/14 Scalability

Arbitrum: Scalable, private smart contracts

Bitcoin-NG: A Scalable Blockchain Protocol

SoK: Sharding on Blockchain (Zhengyuan)

Block-STM: Scaling Blockchain Execution by Turning Ordering Curse to a Performance Blessing

(Optional) Zero-Knowledge Rollups

6/21 Attacks

Frontrunner Jones and the Raiders of the Dark Forest: An Empirical Study of Frontrunning on the Ethereum Blockchain (Dao Bo)

SoK: Preventing Transaction Reordering Manipulations in Decentralized Finance

SoK: Not Quite Water Under the Bridge: Review of Cross-Chain Bridge Hacks (Han)

The Blockchain Imitation Game (Zahra)

6/28 Cross-Chain

The Interblockchain Communication Protocol: An Overview

zkBridge: Trustless Cross-chain Bridges Made Practical (Amin)

Atomic Cross-Chain Swaps (Qianqiu)

Horizon: A Gas-Efficient, Trustless Bridge for Cross-Chain Transactions

(Optional) ETH-NEAR Rainbow Bridge

(Optional) Avalanche Warp Messaging (Michael Kaplan)

7/5 Trusted Execution Environments

FASTKITTEN: Practical Smart Contracts on Bitcoin (Xintong)

Ekiden: A Platform for Confidentiality-Preserving, Trustworthy, and Performant Smart Contracts

BITE: Bitcoin Lightweight Client Privacy using Trusted Execution (Yifan)

Town Crier: An Authenticated Data Feed for Smart Contracts (Zhengyuan)

(Optional) REM: Resource-Efficient Mining for Blockchains

7/12 Economics/Others

Transaction Fee Mechanism Design for the Ethereum Blockchain: An Economic Analysis of EIP-1559 (Dao Bo)

Ensuring Trustworthy Neural Network Training via Blockchain (Zahra)

An Eye for an Eye: Economics of Retaliation in Mining Pools

SoK: A Classification Framework for Stablecoin Designs (Jun)

(Optional) What Drives the (In)stability of a Stablecoin?

7/19 Others

SoK: Blockchain Governance (Yifan) Note that the link to this paper has been updated.

Financial Crimes in Web3-empowered Metaverse: Taxonomy, Countermeasures, and Opportunities (Hesam)

Erays: Reverse Engineering Ethereum's Opaque Smart Contracts

An Empirical Analysis of Traceability in the Monero Blockchain (Steven)

(Optional) An Empirical Analysis of Anonymity in Zcash

Last modified: May 09, 2024