Myetherwallet.com allows us to create private/public keys offline, so the network doesn't know anything about it. When someone sends ether to this address that was created offline how does the network validates this address and how does it know it is a real address?


The network doesn't validate addresses.

You can create an address with a arbitrary bunch of hex characters and send ETH to it. Since neither you nor anyone else has a private key unlocking that address, the funds you sent to it will be unspendable.


The only validation rule on the Ethereum address is that it has to be 20 bytes (or 40 hexadecimal digits).

Addresses are usually created by taking the rightmost 20 bytes of the Keccak-256 hash (big endian) of the ECDSA public key. Because ECDSA public key is generated from a randomly generated private key, the rightmost 20 bytes of it can be any bytes so there is no other validation that can be done.

There is also a Mixed-case checksum address encoding but it's not a part of the protocol and is used by applications to prevent user errors such as mistyping an address.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.