Skip to main content

Process of a Transaction in EVVM

To understand how a transaction works in the EVVM (Ethereum Virtual Virtual Machine) ecosystem, we must first examine its process. EVVM uses an abstract blockchain architecture where transactions are processed through a unique fisher-based validation and execution system.

Transaction Process

The process is divided into three main stages:

  1. Transaction Creation & Signing: The user creates and signs the transaction with EIP-191 standard.

  2. Fisher Capture & Validation: Fishers capture transactions from fishing spots and validate their authenticity.

  3. Execution & Rewards: The transaction is executed in EVVM, and rewards are distributed to fishers and stakers.

Each stage is detailed below.

Transaction Creation & Signing

In this first stage, the user constructs and signs their transaction using the EIP-191 standard:

1. Transaction Payload Construction

The user creates the transaction payload, which includes:

  • Sender Address: The address of the user initiating the transaction.
  • Function Parameters: The specific variables and data required by the target EVVM function or service.
  • Nonces: Both EVVM nonces (sync/async) and service-specific nonces for replay protection.
  • Priority Fees: Optional fees to incentivize fishers for faster processing.

2. EIP-191 Signature Generation

The user signs the transaction using the EIP-191 standard, which ensures cryptographic authenticity:

signature = sign(keccak256("\x19Ethereum Signed Message:\n" + len(message) + message))

The message typically contains concatenated parameters like function selectors, amounts, addresses, and nonces.

3. Broadcast to Fishing Spot

Once signed, the user broadcasts the transaction to a fishing spot, which can be:

  • Public Mempool: Transaction broadcasted to blockchain mempools (e.g., Ethereum mainnet)
  • Private APIs: Direct submission to fisher-operated APIs
  • Communication Channels: Any medium where fishers monitor for transactions

Gas Parameters for Mempool Transactions

When broadcasting to public mempools, use these parameters to ensure the transaction remains unfisherered until captured by fishers:

gas=(lengthOfText2)16+21000maxFeePerGas=1 gweimaxPriorityFeePerGas=0.0000001 gweigas = \left( \frac{lengthOfText}{2}\right) 16 + 21000 \\ maxFeePerGas = 1~gwei\\ maxPriorityFeePerGas = 0.0000001~gwei\\

These low gas parameters prevent immediate execution, allowing fishers to capture and validate the transaction first.

Fisher Capture & Validation

In this stage, fishers monitor fishing spots and capture user transactions for validation and execution:

1. Transaction Capture

Fishers actively monitor various fishing spots to capture transactions:

  • Mempool Monitoring: Scanning blockchain mempools for EVVM transactions
  • API Listening: Receiving transactions through private APIs
  • Direct Submission: Users can submit transactions directly to specific fishers

2. Comprehensive Validation

Before execution, fishers perform thorough validation:

EIP-191 Signature Verification

  • Fishers verify each EIP-191 signature to ensure transaction authenticity
  • Multiple signatures may be required depending on the function (EVVM + service signatures)
  • Invalid signatures result in transaction rejection

Nonce Verification

  • Synchronous Nonces: Must be the next sequential nonce for the user
  • Asynchronous Nonces: Must not be previously used (prevents replay attacks)
  • Service-specific nonces (e.g., NameService, Staking) are verified separately

Balance & Authorization Checks

  • Sender must have sufficient token balance for the transaction
  • Required permissions and access rights are validated
  • Service-specific requirements (e.g., staking status, username ownership) are checked

3. Fisher Requirements

  • Fishers can be any address, but stakers receive enhanced rewards
  • Some services require fishers to be stakers for execution privileges
  • Fishers bear the gas costs of transaction execution on the host blockchain

Execution & Rewards

In the final stage, validated transactions are executed in EVVM and rewards are distributed:

1. EVVM Execution

Once validated, the transaction is executed in the EVVM (Ethereum Virtual Virtual Machine):

  • Function Calls: The target EVVM function or service function is invoked
  • State Updates: Contract states are updated according to the transaction logic
  • Token Transfers: Required payments, fees, and transfers are processed
  • Event Emissions: Transaction events are logged for tracking and verification

2. Reward Distribution System

The EVVM ecosystem incentivizes fishers and stakers through a comprehensive reward system:

Base Rewards for Stakers

  • EVVM Contract Rewards: Stakers receive base MATE token rewards for executing EVVM functions
  • Service Rewards: Additional rewards from services like NameService, Staking Contract, etc.
  • Enhanced Amounts: Stakers often receive multiplied reward amounts compared to non-stakers

Priority Fee Distribution

  • User-Paid Fees: Optional priority fees paid by users go directly to the executing fisher
  • Incentive Mechanism: Higher priority fees encourage faster transaction processing
  • Flexible Payments: Users can choose to pay priority fees for expedited service

Service-Specific Rewards

Different services provide varying reward structures:

  • NameService: Rewards for registration, renewal, and offer processing
  • Staking Contract: Enhanced rewards for staking-related operations
  • Treasury Operations: Rewards for deposit and withdrawal processing
  • P2P Swap: Fees from peer-to-peer trading operations

3. Reward Requirements

  • Staker Verification: Only verified stakers receive enhanced rewards
  • Successful Execution: Rewards are only distributed upon successful transaction completion
  • Gas Coverage: Fishers must cover host blockchain gas costs, which are typically offset by rewards

4. Multi-Service Coordination

EVVM supports complex transactions involving multiple services:

  • Cross-Service Operations: Single transactions can interact with multiple EVVM services
  • Coordinated Rewards: Reward distribution accounts for all services involved
  • Atomic Execution: Either all operations succeed, or the entire transaction reverts

This reward system creates a sustainable ecosystem where users pay for services, fishers are incentivized to validate and execute transactions, and stakers receive enhanced rewards for their commitment to the network.