Convert addresses to EIP-55 checksum form and compute ENS namehash and labelhash.
Loading tool
About Checksum Address & ENS Namehash
Validate Ethereum addresses and convert them to their EIP-55 mixed-case checksum form, one per line, with a status for each (valid, invalid checksum, all lowercase, not an address). A second mode computes the ENS namehash and labelhash of a name after ENSIP-15 normalisation.
Common uses
- Fix 'invalid address checksum' errors in ethers, viem or Solidity
- Check a list of addresses for typos before an airdrop or allowlist
- Compute the ENS node for a name to call the ENS registry or a resolver
FAQ
- What is an EIP-55 checksum address?
- A way to encode a checksum in the letter case of a hex address: each letter is uppercase if the matching nibble of keccak256 of the lowercase address is 8 or higher. A typo will almost always break the checksum.
- Are lowercase Ethereum addresses valid?
- Yes. All-lowercase or all-uppercase addresses are valid but carry no checksum, so typos cannot be detected. Mixed-case addresses must match the checksum exactly.
- What is an ENS namehash?
- A recursive hash of a name: namehash("") is 32 zero bytes and namehash(label.parent) = keccak256(namehash(parent) ++ keccak256(label)). ENS contracts identify names by this value.