Skip to main content

Compatibility with Ethereum

The EVM Interface targets compatibility with the Ethereum ecosystem:

  • Supports the Ethereum JSON-RPC standard
  • Supports standard EVM opcodes and precompiles
  • Compatible with tooling such as MetaMask, ethers.js, viem, Hardhat, and Foundry

While Etherlink EVM is intended to be fully EVM-compatible, it differs in some ways:

  • As described in Ethereum endpoint support, Etherlink EVM does not support all EVM RPC endpoints.

  • Etherlink EVM calculates gas fees differently; see Fee structure.

  • Etherlink EVM computes the state world hash with a different function than Ethereum uses. Therefore it is not compatible with EVM "light clients" that compute states in the way that Ethereum does, with the Keccak-256 hash function. Therefore, Etherlink EVM is not compatible with EVM light-client implementations that use this hash function, such as Geth's light client and OpenEthereum.

  • Etherlink EVM computes block hashes in a custom way, not including every header field. Therefore, you cannot compute Etherlink EVM block hashes with tools such as Geth.

arrow icon

Prev

Sending FA bridging transactions

Next

arrow icon
Ethereum endpoint support