Does an Ethereum contract address hold two different kinds of file, one for the contract bytecode and another for the ABI?

1 Answer 1


The contract address only holds the contract bytecode; the ABI is not stored on the blockchain.

The ABI must be separately distributed to clients which should have it for programmatic interaction with the contract.

Clients without the ABI can still interact programmatically with the contract, basically by guessing the interface, but those guesses can be extremely good especially if informed by statements about the contract (e.g. "This is an ERC-20 token") and/or analysis (maybe even approximate decompilation) of the bytecode.

  • method signatures should be stored in the bytecode, so , using the database of methods from Etherscan , a tool to extract the ABI can be done, if you know how solc works . no need to guess.
    – Nulik
    Aug 18, 2018 at 14:38

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.