Contents
- -1 Search
- -1 Contents
- 0 Preface
- 1 Part 1: Building
- 1.1 Introduction
- 1.1.1 Why Ethereum 2.0?
- 1.1.2 The Cathedral and the Bazaar
- 1.1.3 A Brief History of Ethereum's Future
- 1.1.4 Who's who
- 1.1.5 Outline of the Book
- 1.2 Goals
- 1.2.1 Design Goals
- 1.2.2 Attacks and Defences
- 1.3 Making the Sausage
- 1.3.1 The Specifications
- 1.3.2 The Implementations
- 1.1 Introduction
- 2 Part 2: Technical Overview
- 2.1 Introduction
- 2.2 The Beacon Chain
- 2.2.1 Terminology
- 2.2.2 Design Overview
- 2.2.3 Architecture of a Node
- 2.2.4 Genesis
- 2.3 Consensus
- 2.3.1 Preliminaries
- 2.3.2 Casper FFG
- 2.3.3 LMD Ghost
- 2.3.4 Gasper
- 2.3.5 Weak Subjectivity
- 2.3.6 Issues
- 2.4 The Progress of a Slot
- 2.4.1 Proposing
- 2.4.2 Attesting
- 2.4.3 Aggregating
- 2.4.4 Sync Committee Participation
- 2.5 The Progress of an Epoch
- 2.5.1 Applying Rewards and Penalties
- 2.5.2 Justification and Finalisation
- 2.5.3 Other State Updates
- 2.6 Validator Lifecycle
- 2.7 Deposit Handling
- 2.7.1 The Deposit Contract
- 2.7.2 Deposit Receipts
- 2.7.3 Eth1 Voting and Follow Distance
- 2.7.4 Merkle Proofs
- 2.7.5 Deposit Processing
- 2.7.6 Withdrawal Credentials
- 2.8 The Incentive Layer
- 2.9 The Building Blocks
- 2.9.1 BLS Signatures
- 2.9.2 Randomness
- 2.9.3 Shuffling
- 2.9.4 Committees
- 2.9.5 Aggregator Selection
- 2.9.6 SSZ: Simple Serialize
- 2.9.7 Hash Tree Roots and Merkleization
- 2.9.8 Generalised indices and Merkle proofs
- 2.9.9 Sync Committees
- 2.10 Upgrades
- 2.10.1 History of upgrades
- 2.10.2 Hard Forks
- 2.10.3 Fork Digest
- 2.11 Networking
- 2.11.1 Discovery
- 2.11.2 Gossip
- 2.11.3 RPC
- 2.11.4 Syncing
- 2.11.5 Message Types
- 2.12 Implementation
- 2.12.1 Protoarray
- 2.12.2 SSZ backing tree
- 2.12.3 Batch signature verification
- 2.12.4 Slashing protection
- 2.12.5 Checkpoint sync
- 3 Part 3: Annotated Specification
- 4 Part 4: Future
- 4.1 Introduction
- 4.2 The Merge
- 4.2.1 Architecture
- 4.2.2 Engine API
- 4.2.3 Optimistic Sync
- 4.2.4 The Transition
- 4.3 Withdrawals
- 4.4 Data Availability Sampling
- 4.4.1 Proto-Danksharding
- 4.4.2 Full Danksharding
- 4.5 Distributed Validator Technology
- 4.5.1 Multi-party Compute
- 4.5.2 Consensus
- 4.6 Light Clients
- 4.6.1 Syncing
- 4.6.2 Protocol
- 4.7 Active Research Topics
- 4.7.1 Proofs of Custody
- 4.7.2 Builder / proposer split
- 4.7.3 Consensus changes
- 4.7.4 Single slot finality
- 4.7.5 Verkle trees
- 4.7.6 Statelessness
- 4.7.7 Single Secret Leader Election
- 4.7.8 Verifiable Delay Function
- 4.7.9 Post-quantum crypto
- 4.7.10 S[NT]ARK-friendly state transitions
- 5 Appendices
- 5.1 Staking
- 5.1.1 Ways to Stake
- 5.1.2 Client Diversity
- 5.1.3 FAQ
- 5.2 How to become a core dev
- 5.2.1 Resources
- 5.3 Reference
- 5.3.1 Running the spec
- 5.3.2 Sizes of containers
- 5.4 Glossary
- 5.1 Staking
- 999 One Page Annotated Spec
- 999 Contact me
- 999 PDF