Skip to main content

StateMesh EVM Compatibility

The StateMesh blockchain is built on modified go-ethereum (geth) architecture, maintaining full EVM compatibility while implementing Fantom's Lachesis DAG-based consensus for enhanced performance.

Core Features

  • Complete EVM Support: Deploy and run any Ethereum-compatible smart contracts
  • Familiar Development: Use Solidity, existing developer tools, and established standards
  • Fast Finality: Transactions finalize in ~1 second compared to Ethereum's 12+ seconds
  • Immediate Confirmation: No need to wait for multiple block confirmations

EVM Differences

While maintaining core compatibility, StateMesh's EVM implementation differs in several ways:

Transaction Processing

  • Gas Usage: 10% of unspent gas is consumed as a disincentive against excessive gas limits
  • Transaction Ordering: Transactions aren't strictly sorted by gas price across the entire block
    • Transactions within each event are gas-price sorted
    • Events are included based on their topological position in the DAG

Consensus Architecture

  • Consensus Mechanism: Asynchronous BFT Proof-of-Stake instead of Ethereum's PoW/PoS
  • Block Production: ~1 second blocks with immediate finality
  • Pending Blocks: This concept doesn't exist in StateMesh's consensus model

Solidity Implementation Details

The following Solidity global variables behave differently in StateMesh:

VariableBehavior
block.difficultyAlways returns 0
block.gaslimitAlways returns 0xFFFFFFFFFFFF (infinite)

JSON-RPC API Differences

Block Header Fields

FieldStateMesh Behavior
nonceAlways 0
mixHashAlways 0
sha3UnclesAlways 0
minerUndefined address
difficultyAlways 0
extraDataAlways empty
gasLimitAlways 0xFFFFFFFFFFFF (infinite)
receiptsRootAlways 0
timestampNanoNew field: block's consensus time in UnixNano

Unsupported Features

  • Pending block retrieval
  • shh, db, and bzz namespaces are not available