ExampleAddress

Ethereum capitalization and EIP-55 checksums

EIP-55 encodes a checksum in the capitalization of hexadecimal letters. It changes the representation, not the underlying 20-byte address.

Worked example

Ethereum capitalization and EIP-55 checksums: annotated comparison
RepresentationExampleInterpretation
Specification fixture0x5aAeb6053F3E94C9b9A09f33669435E7Ef1BeAedEIP-55 capitalization
Lowercase form0x5aaeb6053f3e94c9b9a09f33669435e7ef1beaedSame bytes; case checksum not enforced
Invalid shape0x123GNon-hex character and wrong length

Checksum procedure

Lowercase the 40-character body, hash that ASCII text using Keccak-256, then use the corresponding hash nibble to choose each letter’s case. A nibble of 8 or above makes the letter uppercase. Standardized SHA3-256 is a different function and gives the wrong EIP-55 result.

What to do after a mismatch

Return to the original receive screen and compare the full string. Do not simply lowercase a suspicious mixed-case address to silence an error. A passing checksum detects some typing mistakes; it does not establish ownership or safety.

Common pitfalls

  • Some valid EIP-55 fixtures happen to be entirely uppercase or lowercase.
  • Chain-specific checksum schemes are outside this EIP-55 checker’s scope.

Related references

Primary sources

Examples explain identifiers. They are not investment recommendations.