Breaking Down the Ethereum Yellow Paper

A complete overview of the Ethereum Yellow Paper, explained in an understandable way.

1. Introduction

Ethereum is basically just a bunch of computers doing this over and over again.
Similar to the above diagram, but much more complicated! Ethereum is a transaction-based state machine. This means all the nodes in the Ethereum network (the computers running an implementation of the Ethereum protocol) are continuously running transactions in order to update some shared state.

1.1 Driving Factors

1.2 Previous Work

2. The Blockchain Paradigm

The formal definition of transaction execution.

2.1 Value

Each denomination is named after a well-known person in the crypto space.

2.2 Which History?

There is a tree of blocks. The path through the tree with the most computational work is the blockchain.

3. Conventions

4. Blocks, State, and Transactions

4.1 World State

The root hash of the state tree is stored on-chain in a block header. The state tree maps addresses to accounts. Each account has a storageRoot value, which refers to yet another Merkle Patricia tree.

4.2 The Transaction

A simplified depiction of a transaction from the Ethereum whitepaper.
// init codereturn `
contract Foo {
...
}
`;

4.3 The Block

An ommer block’s parent is equal to the current block’s parent’s parent.
A high level diagram of a block
emit Transfer(address(0), to, tokenId);
How to determine if stateRoot is valid—run the transactions yourself!

5. Gas and payment

6. Transaction Execution

A simplified example of a transaction execution, from the whitepaper.

7. Contract Creation

8. Message Call

9. Execution Model

10. Blocktree to Blockchain

There is a tree of blocks. The path through the tree with the most computational work is the blockchain.

11. Block Finalisation

Software Engineer. Tweeting @pencilflip. Mediocre boulderer, amateur tennis player, terrible at Avalon. https://www.mattlim.me/