Overview
What this challenge is about.
Read the Casper FFG paper (Buterin + Griffith, 2017) and design a simplified PoS implementation in Rust: 21 validators, 32-slot epochs, two-phase finality (justify, then finalize), slashing on equivocation. Implement: validator key management, block proposal, attestation aggregation, fork-choice rule (LMD-GHOST simplified), and the slashing detector. Build a deterministic simulator running 1,000 epochs with: (a) honest network, (b) 30 percent partition, (c) 20 percent equivocation attack. Prove (empirically + with a written argument) safety (no two conflicting blocks finalized) and liveness (finality continues under <33 percent faulty). Deliver Rust code, simulator, results report, and 8-page writeup.
The Brief
What you'll do, and what you'll demonstrate.
Implement Casper-FFG-style PoS consensus in Rust, simulate it on a 21-validator network, and demonstrate safety + liveness under partition and equivocation.
Earning criteria — what you'll demonstrate
- Implement a non-trivial consensus algorithm from the original paper
- Reason about safety + liveness under realistic failure modes
- Build a deterministic simulator for protocol research
- Communicate consensus properties in a paper-quality writeup
Program Fit
Where this fits in your program.
Sharpens the same skills your degree expects you to demonstrate.
Skills
Skills you'll demonstrate.
Each one shows up on your verified credential.
Careers
Roles this prepares you for.
Real titles. Real skill bridges. Pick the one closest to your trajectory.
Career mappings coming soon.