EIP-7702 Support: Coming to Luntra Infrastructure

Overview

Luntra Infrastructure is excited to announce our upcoming support for EIP-7702: Set EOA account code for one transaction, which will bring native account abstraction capabilities to our rollup chain. This groundbreaking feature will allow Externally Owned Accounts (EOAs) to temporarily act as smart contract accounts during transaction execution, unlocking powerful new use cases while maintaining backward compatibility.

What is EIP-7702?

EIP-7702 introduces a new transaction type that enables EOAs to delegate their account behavior to smart contract code for the duration of a single transaction. This creates a hybrid approach where regular wallet addresses can execute complex smart contract logic without permanently converting to contract accounts.

Key Benefits for Luntra Users

Enhanced User Experience

  • Batch Operations: Execute multiple actions in a single transaction

  • Gas Optimization: Reduce transaction costs through efficient batching

  • Flexible Authentication: Support for custom signature schemes and multi-sig workflows

  • Sponsored Transactions: Enable gasless transactions through meta-transactions

Developer-Friendly Features

  • Programmable Wallets: Transform any EOA into a programmable account temporarily

  • Custom Logic: Implement complex validation rules and execution patterns

  • Seamless Integration: Works with existing wallet infrastructure

  • Backward Compatibility: Standard EOA functionality remains unchanged

Technical Implementation

Transaction Structure

Our rollup implements EIP-7702 transactions with the following structure:

TransactionType: 0x04 (EIP-7702)
Fields:
- chain_id: Our rollup's chain identifier
- nonce: Account nonce
- max_priority_fee_per_gas: Priority fee
- max_fee_per_gas: Maximum gas fee
- gas_limit: Gas limit for execution
- to: Target address (can be null for contract creation)
- value: ETH value to transfer
- data: Transaction data
- access_list: EIP-2930 access list
- authorization_list: List of authorization objects
- signature_y_parity, signature_r, signature_s: Transaction signature

Authorization Object Format

Each authorization in the authorization_list contains:

Authorization:
- chain_id: Target chain ID (must match our rollup)
- address: Code address to delegate to
- nonce: Authorizing account's nonce
- y_parity, r, s: Authorization signature
  1. Pre-execution: Temporarily set EOA code to authorized contract code

  2. Execution: Process transaction with delegated smart contract logic

  3. Post-execution: Restore original EOA state (empty code)

Use Cases Enabled

1. Batch Transactions

Users can combine multiple operations into a single transaction:

  • Token swaps + staking in one transaction

  • Multi-token transfers

  • Complex DeFi operations

2. Gasless Transactions

Enable sponsored transactions where:

  • DApps pay gas fees for users

  • Meta-transaction patterns become native

  • Improved onboarding experience

3. Enhanced Security

  • Custom validation logic

  • Multi-signature requirements

  • Time-locked operations

  • Spending limits and controls

4. Wallet Upgrades

  • Add new features to existing wallets

  • Implement recovery mechanisms

  • Social recovery patterns

Last updated