Skip to content

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.