Account Abstraction & EIP-4337

Overview

Account Abstraction (EIP-4337) is an architecture designed to improve the flexibility and efficiency of transactions on EVM chains. It allows transactions to be sent from any address and paid in any asset, not just Ether.

It allows for customization of:

  • Authentication beyond ECDSA signatures, allowing for, among other things, authentication using web2 authentication such as Sign In with Google or Biometric.

  • Replay attack (nonce) schemes, allowing for automated transactions.

  • Gas payment schemes, allowing users to pay for gas with ERC-20s, credit cards, or have gas sponsored by a 3rd party.

Components

UserOperation

The EIP-4337 version of an EVM transaction

 
EntryPoint

An off-chain endpoint that bundles and then validates UserOperations before sending them to the main mempool by proxy of the Entrypoint.

 
Paymaster

An optional suite of smart contracts that allow transaction gas to be abstracted and dynamic.

 
Sender

The account abstracted smart contract wallet. Must implement the validateUserOp() to be compatible with the EntryPoint contract.

 
Bundler

An off-chain endpoint that bundles and then validates UserOperations before sending them to the main mempool by proxy of the Entrypoint.