General learning
On this page
There are many topics to learn about in core-development, one can specialize in any area. Here is a selection of learning-resources:
Basic
- Merkle trees:
- Execution and Consensus layer Merge design, video by Danny Ryan
- Rollup centric roadmap, post by Vitalik
- The Hitchhiker’s Guide to Ethereum by Jon Charbonneau
Medium:
- Yellow Paper: L1 protocol specification in paper form
- ABI: Application Binary Interface to interact with contracts
- EVM opcodes: interactive reference
- RLP: the encoding used everywhere in execution-layer
- SSZ specs: encoding and merkleization of Eth2, also see visualized encoding and visualized hash-tree-root.
- EVM: overview of the machine that runs smart-contracts
- Executable specs: readability-first python implementations of the protocol specification.
- Consensus-layer, also see pip package
- Execution-layer, also see the rendered version.
- Simplified Eth2 Phase0 specs intro
- Light client design and implementation
Advanced:
- Builder proposer separation:
- Fork-choice Gasper paper: Combining GHOST and Casper
- Dagger-Hashimoto (legacy PoW)
- State DB design, Erigon docs:
- BLS:
- Signature aggregation in eth2 by Justin Drake
- BLS12-381 For The Rest Of Us by Ben Edgington
- BLS Signature for Busy People by Paul Miller
- KZG:
- KZG polynomial commitments by Dankrad Feist
- ZK Study Club part 1: polynomial commitments by ZK FM podcast with Justin Drake
- ZK:
- ZK study club playlist by ZK FM podcast
- Fraud proofs (optimistic rollup tech):
- The State of Optimistic Rollup older overview by Daniel Goldman
- Inside Arbitrum arbitrum fraud proof
- Cannon optimism fraud proof
- LibP2P: the network layer in Eth2, Polkadot, Filecoin and other blockchains.
- DevP2P: the original network layer in Eth1 / execution-layer of ethereum.
- Whisk: A practical shuffle-based SSLE protocol for Ethereum
- VDF research: verifiable delay function for ethereum and other protocols
- Data Availability Sampling (DAS):