Try   HackMD

Ethereum Transaction Journey: From Initiation to Finality

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

Here's a comprehensive breakdown of what happens when a transaction traverses Ethereum's network:

Initial Phase: User to Network

  1. Transaction Creation: User cryptographically signs a transaction using their private key, creating a secure data structure that includes nonce, gas limits, recipient address, ETH value, and optional data payload.

  2. Network Propagation: The signed transaction enters Ethereum's P2P network through gossip protocol, where each node shares it with ~50-100 peers to achieve exponential network coverage within seconds.

  3. Mempool Inclusion: Nodes validate the transaction's structure, signature, nonce, and gas parameters before adding it to their local mempool, where it's prioritized by gas price and awaits selection for a block.

Consensus Layer Operations

  1. Validator Selection: The Beacon Chain deterministically selects the next block proposer using RANDAO-derived randomness, providing a provably fair, stake-weighted chance for each validator.

  2. Execution Payload Request: The selected validator's Consensus Layer client requests block data from its paired Execution Layer node via the Engine API, passing parameters including timestamp and fee recipient address.

Execution Layer Processing

  1. Transaction Selection: The Execution Layer solves a sophisticated optimization problem to select the most profitable transactions from the mempool while respecting gas limits and nonce sequentiality.

  2. Execution Payload Creation: Selected transactions are executed through the EVM, calculating state changes, consuming gas, and generating execution receipts - all bundled into a complete execution payload.

  3. Payload Delivery: The execution payload is returned to the Consensus Layer with all execution data including state root, receipts root, and transaction list, crossing the crucial boundary between execution and consensus domains.

Block Creation and Distribution

  1. Beacon Block Creation: The validator encapsulates the execution payload within a Beacon Block structure, adding consensus-specific data like RANDAO reveal, attestations, and validator operations.

  2. Block Proposal: The validator signs the complete Beacon Block and broadcasts it to the network precisely during its assigned slot time.

  3. Block Propagation: The proposed block spreads through the network via optimized gossip protocol pathways, reaching 95% of validators within ~1 second.

  4. Block Attestation: Validators assigned to the current slot verify the block's validity and submit cryptographic votes (attestations) supporting it, with attestations aggregated to reduce network load.

Consensus Formation

  1. Block Inclusion: The network applies the LMD-GHOST fork choice rule to determine the canonical chain, with the heaviest attested branch becoming the head of the chain.

  2. Justification: When a checkpoint block (first in an epoch) receives attestations from 2/3+ of validator stake, it becomes "justified" - the first step toward irreversibility.

  3. Finalization: When a justified checkpoint is followed by another justified checkpoint in the next epoch, the earlier checkpoint becomes "finalized" - making its chain history economically irreversible.

Transaction Settlement

  1. Transaction Confirmation: Transactions in finalized blocks achieve Ethereum's strongest security guarantee - reversal would require sacrificing billions in staked ETH.

  2. State Update: All network nodes permanently update their local state database to reflect transaction effects, including account balances, smart contract storage, and event logs.

This end-to-end process takes approximately 12-15 minutes for full finalization, though transactions are typically visible in the blockchain and considered probabilistically secure within 12 seconds (one slot time). Why does it happen? I will explain in my next article, this one is becoming too long.

Like and share if you find it useful !