In this track: Trees, roots and proofs
advanced · 4 MIN READ

Merkle allowlists explained

A contract can check membership without storing every entry individually.

LET’S PICTURE IT

A short official roster fingerprint can validate a supplied membership path.

SEE IT FOR YOURSELF
Build a root and follow one membership proofStep 1 / 4
Build a root and follow one membership proofA0x03783f…b760B0x1f675b…9111C0x017e66…8f72D0x6c3fd3…79f2A0x03783f…b760B0x1f675b…9111C0x017e66…8f72D0x6c3fd3…79f2hash(A,B)0x69de75…24a0hash(C,D)0xe62e1d…b5a4A0x03783f…b760B0x1f675b…9111C0x017e66…8f72D0x6c3fd3…79f2hash(A,B)0x69de75…24a0hash(C,D)0xe62e1d…b5a4ROOT0x4e2b32…5956A0x03783f…b760B0x1f675b…9111C0x017e66…8f72D0x6c3fd3…79f2hash(A,B)0x69de75…24a0hash(C,D)0xe62e1d…b5a4ROOT0x4e2b32…5956

This example hashes UTF-8 A, B, C and D. The displayed hashes are abbreviated, and the tree uses the playground’s sorted-pair convention.

Animated local teaching model. No wallet, RPC or live blockchain data. Some labels and hashes are abbreviated for readability.

Encode the authorization fields

A leaf might bind an account and allowed quantity. If quantity is security-relevant, it must be included under the chosen encoding rather than trusted as an unsigned extra field.

Check the stored root

The contract compares the reconstructed root with its authorized root. The caller should not be free to supply any root and call that sufficient authorization.

Control repeated claims

Membership does not automatically mark a claim used. Track claim consumption or remaining allocation where the protocol requires limited redemption.

Review root administration

A root update can replace the effective roster. Document update authority, timing and the effect on earlier claims or cached proofs.

Follow the proof model

leaf fields: account + allowed amount
verify proof against authorized root
check unused allocation
consume claim and apply the action consistently

Binary examples use the stated local playground convention. They are not Ethereum account or storage trie proofs.

TURN UNDERSTANDING INTO PRACTICEOpen the Merkle trees →
QUICK CHECK · NO PRESSURE

Does valid membership alone stop the same allocation being claimed twice?

Your progress stays in this browser.
Keep exploring the original referenceethereum.org ↗

Original explanations by EtherTools. Examples are educational and source-linked; this site is independent of the Ethereum Foundation. Our approach.