Banks control everything:
No one controls it, everyone benefits:
The system continuously improves itself through community-driven upgrades
Understanding the architecture through the problems it solves
How do 500,000+ validators around the world agree on who gets to add the next block, without anyone cheating or being able to predict who's next?
Like a judicial assignment committee that randomly selects which judge handles each case. No one can bribe their way to a specific case because the selection is unpredictable.
The consensus client coordinates the random selection process and ensures everyone agrees on who was chosen. It's the "agreement layer" — not about processing transactions, but about who gets to process them.
Someone needs to actually run the code, update account balances, and make sure the math is right. How do we ensure every node gets the exact same result?
Like the actual courtroom where cases are tried. The judge (consensus) said "hear this case," but the courtroom (execution) actually processes it according to the law (smart contracts).
The execution client is the "doing layer." It runs the EVM, processes transactions, and updates the global state. Separate from consensus so you can upgrade one without breaking the other.
Transaction order matters! If you're buying a token, someone could see your transaction, buy first, and sell to you at a higher price. This is "front-running."
Like a court scheduler who groups related cases together efficiently. If Case A affects Case B, they need to be heard in the right order — otherwise injustice happens.
Builders specialize in optimizing transaction order. By separating "who builds" from "who proposes," we create competition that actually benefits users through better MEV redistribution.
Builders and proposers don't trust each other. Builders don't want to reveal their blocks (someone could steal the strategy). Proposers don't want to blindly accept a block that might be invalid.
Like an escrow service for sealed bids. The relay holds the builder's block without showing it, verifies it's valid, and only reveals it after the proposer commits. Trust without seeing.
Relays are trusted intermediaries that enable sealed-bid auctions. They verify blocks are valid without revealing contents, enabling fair competition between builders.
Who gets the final say? You need someone with skin in the game (staked ETH) who will be punished if they cheat, but they shouldn't have unlimited power.
Like the presiding judge who signs off on the final verdict. They don't investigate the case themselves (that's the builder's job) — they just verify and finalize it with their authority.
The proposer provides the final cryptographic signature that makes the block official. They're randomly selected (can't be bribed in advance) and have 32 ETH at stake (can be punished for cheating).
Ethereum L1 processes ~15 transactions per second. That's 1.3 million per day. The world needs billions. We can't just make blocks bigger — every node needs to verify everything.
The Supreme Court (L1) can't hear every case — it would collapse. So we have lower courts (L2s) that handle most cases, with the Supreme Court only reviewing summaries and handling appeals.
L2s do the heavy lifting (thousands of transactions) and only post compressed summaries to L1. L1 provides security guarantees; L2 provides speed and low cost.
On L2, someone needs to order transactions quickly (sub-second) before they're batched to L1. Waiting for L1's 12-second slots would kill the user experience.
Like a court clerk who immediately logs your case filing and gives you a receipt. The official hearing (L1 finality) comes later, but you have instant confirmation your case was received.
The sequencer provides instant "soft confirmations" (your transaction is ordered) while batching happens in the background. Trade-off: current sequencers are centralized (known operators like Coinbase).
L2s post transaction data to L1. But storing data on L1 forever is expensive. We need the data available long enough to detect fraud, but not forever.
Like court records that must be kept for 18 days (the appeal period). After that, the verdict is final and you only need to keep the summary. Full transcripts can be archived elsewhere.
Blobs are temporary data storage (~18 days) that's much cheaper than permanent storage. L2s post their data there, anyone can verify fraud during the window, then it's pruned.
L1 can't re-execute all L2 transactions (that defeats the purpose). But how do we know the L2 didn't lie about what happened?
Optimistic: Lower court verdicts are assumed valid unless someone appeals within 7 days.
ZK: Every verdict comes with a mathematical proof that the judge followed the law correctly. No appeals needed.
Provers create cryptographic evidence that L2 state transitions are valid. Optimistic = cheaper but slower withdrawals. ZK = more expensive but instant finality.
Every component does one thing well. Consensus picks WHO. Execution does WHAT. Builders optimize ORDER. This modularity enables upgrades without breaking everything.
Random proposer selection prevents corruption. You can't bribe the next block producer because no one knows who it will be until the last moment.
Validators stake 32 ETH — skin in the game. Cheating means losing your stake. Honest behavior is more profitable than attacking.
Every claim can be verified independently. Fraud proofs, validity proofs, attestations — the system assumes everyone might lie and builds verification into every step.