DEV Community

Cover image for Ethereum Account Abstraction (ERC-4337) Explained – Part 1
Kurt
Kurt

Posted on

Ethereum Account Abstraction (ERC-4337) Explained – Part 1

Ethereum developers, if you’ve been curious about account abstraction, this post is for you. I’ve just published Part 1 of my Medium series on ERC-4337, and here’s a developer-friendly breakdown of the basics.


Why ERC-4337 Matters

Ethereum EOAs are rigid by design: nonces, gas payments, and validation are protocol-defined. Account abstraction lets the account itself define its behavior. ERC-4337 achieves most of this without changing Ethereum consensus.


Intent vs Transaction

Instead of sending a transaction, ERC-4337 uses UserOperations, essentially “intents”:

  • sender: the account address
  • nonce: account-specific nonce
  • callData: function call data
  • signature: proof of authorization
  • paymaster: optional gas sponsor
  • gas limits and metadata

These UserOperations stay off-chain until included by a bundler.


Key Components

  • Bundlers: Collect, simulate, and submit UserOperations as single transactions.
  • EntryPoint: A shared contract that executes UserOperations on accounts.
  • Paymasters: Optional contracts to sponsor gas for users.

All ERC-4337 logic flows through these components, but Ethereum itself only sees normal transactions calling the EntryPoint.


Related Standards

ERC-4337 builds on existing standards: EIP-1271 (contract signatures), ERC-165 (interface detection), ERC-7579 (modular accounts), and EIP-7702 (future directions).


For the full breakdown with architecture diagrams, sequence flows, and examples, check out the original Medium article here:
https://medium.com/@Kurt0x/account-abstraction-erc-4337-part-1-the-basics-da3dee805a24

Top comments (0)