Core differences between Sophon’s native zkVM and Ethereum’s EVM
This is a legacy Sophon v1 technical reference. The chain is being wound down and
should not be used for a new production deployment.
zkVM vs EVM Differences
Sophon’s native zkVM is fundamentally different from Ethereum’s EVM as it’s designed to generate zero-knowledge proofs while executing smart contracts. While the EVM Bytecode Interpreter enables EVM compatibility (see limitations), here are the core differences between zkVM and EVM:
Execution Model
Proof Generation: zkVM operations must be ZK-proof friendly, affecting how certain operations work
Gas Model: Uses “ergs” instead of gas, with different cost calculations for operations
State Management: Different approach to handling state changes due to ZK-proof requirements
EVM Instruction Differences
To check what opcodes differ in behavior between Sophon and Ethereum, see the official EVM Instructions page.
Native Features
Account Abstraction
Unlike EVM which requires EIP-4337 for AA, Sophon’s zkVM: