Merkle Proof
Root and OpenZeppelin-compatible proofs from an address list.
Runs offline
Paste addresses, one per line, to build a Merkle root and export a proof.
About merkle proof
A Merkle tree compresses a list of thousands of addresses into a single thirty-two byte root, so a contract can verify membership without storing the list. Each claimant supplies a short proof — one hash per level of the tree — and the contract recomputes the root from their leaf. This builds an OpenZeppelin-compatible tree, sorting each pair before hashing so proofs need no left-or-right flags. The leaf format has to match the contract that will verify the proof: hashing an address alone and hashing an address with an amount give different trees.
Common questions
What is a Merkle proof used for in crypto?
To prove an address or leaf is in a committed set without publishing the whole set on chain — common in airdrops and allowlists. The contract stores a root; claimants present a proof path that hashes to that root.
Are these proofs OpenZeppelin-compatible?
Yes — the tree layout and proof encoding match OpenZeppelin MerkleProof helpers. A proof from elsewhere may use a different sort or hash scheme and fail even when the address is genuinely on the list.
Does building a proof publish my address list?
Not to us — the tree is built in the browser from the list you paste. Anyone who later sees the root and a proof learns that one leaf was included, which is the intended public fact of a claim.