I was reading this section from Mastering Ethereum. This specific part caught my attention:

However, not all Ethereum addresses represent public–private key pairs; they can also represent contracts, which, as we will see in [smart_contracts_chapter], are not backed by private keys.

Does that mean that mathematically speaking, no private key exists in the entire set of all private keys that maps to a given smart contract's address?

1 Answer 1


There is two address type in Ethereum.

Address owned by a private key (a random number basically) that can be use by a user.

Address that are run by a smart contract, and there is no private key for it.

It's mathematically possible to have a private key that give you an address already used by a contract. But I don't know if there is a security in EVM where you can't use this address because it only obey to code, note to a private key. Chance are so rare it will be the same thing to "steal" an address with 1 billions dollars to brute force private keys.

  • It all depends on the contract code of this hypothetical private-key unlocked smart contract address and the assets that it holds. Said private key would be able to withdraw the ether from the account regardless of the contract code because the code for moving ETH exists beneath the compiled contract level. Tokenized assets would likely still be controlled by internal logic, but we will have to wait and see. I'm certain it will happen at least once in the near future. Dec 10, 2022 at 2:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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