Closed kamikazechaser closed 1 year ago
@kamikazechaser I think it's a valid ethereum address according to https://eips.ethereum.org/EIPS/eip-55 (all lower case).
Not a valid checksum tho. https://go.dev/play/p/usJUAJoiOza
I agree that checksum isn't valid. But what I understand according to the documentation of validator is that it validates the format is correct (valid 20 bytes hex format) and that the address can get a valid checksum calculation.
If we take another example like that one: 0xD1220A0cf47c7B9Be7A2E6BA89F429762e7b9aDB
, it doesn't have a valid checksum calculation and it's why it's an invalid ethereum address.
0xD1220A0cf47c7B9Be7A2E6BA89F429762e7b9aDB, it doesn't have a valid checksum calculation and it's why it's an invalid ethereum address.
This is infact a valid ethereum address from a network perspective (addresses are case insensitive). I just made a PR and have added some rationale to it.
A checksum could be useful for libraries that otherwise panic when a non-checksum address is passed to it (forced type checking).
Package version eg. v9, v10:
V10
Issue, Question or Enhancement:
The
eth_addr
validation incorrectly passes an invalid checksumed address.Code sample, to showcase or reproduce: