Pureth purge, removing the old data formats
Strawmap I* (2028) · pureth purges
This is the final stage of the Pureth work, which lets wallets and light clients verify block data themselves. Once the new format is established, the old data formats and structures are removed from the protocol.
Why it is needed
Today the transactions, receipts, and logs of the Ethereum execution layer are stored with an old encoding (RLP) and bundled into a structure called a Merkle Patricia Trie (MPT). With this structure, building and checking a proof that "this transaction really is in this block" is expensive. As a result, most wallets and apps do not verify data themselves and simply trust the answers of a relay service (RPC) that sends data on behalf of a node. Pureth (Pure Ethereum, EIP-7919) is a bundle proposal that converts this data into the simple serialization (SSZ) format the consensus layer already uses, so that browser wallets and light clients can verify data directly with only small proofs. The new format is introduced first, alongside the old one. The "purge" stage is the work of removing the old formats and structures that remain afterward. Maintaining both formats makes client code more complex. While the old format remains, the habit of trusting relay services also remains. Only when the purge is finished is the self-verifying Ethereum that Pureth aims for complete. Strawmap places this stage in the I* (2028) slot, but that is only an estimate, not a commitment.
How it works
- Introduce the new format Transactions, receipts, and logs are also represented in SSZ format, and their summary value (root) is recorded in the block. The old format stays as it is for the time being.
- Wallet and client transition Wallets and light clients start verifying data directly with SSZ proofs. They no longer need to trust the responses of relay services as they are.
- Purge the old format Once the new format is established, the old encoding, the trie structure, and leftovers that are no longer used, such as Bloom filters, are removed from the protocol.