Understanding ERC-4337 and the Future of Ethereum User Experience: Account Abstraction

Kristaps Grinbergs
3 min readNov 1, 2023

In Ethereum Improvement Proposal 4337 (ERC-4337), account abstraction simplifies user interaction and the blockchain. It eliminates the need for users to deal with the complexities of wallets, making blockchain applications (dApps) more accessible to users. For instance, users can use social login to interact with dApps, and there is no need for private keys or seed phrases anymore. In this series of posts, I will provide a high-level overview of the topic in this post and dive into the code in the following ones.

Photo by Micah Williams on Unsplash

What is Account Abstraction?

In the current Ethereum framework, there are two different types of accounts:

  • Externally Owned Accounts (EOAs) — controlled by user private keys, for instance Metamask;
  • Contract Accounts — controlled by the smart contract code.

The new account abstraction proposal aims to combine two types of accounts, as explained in the ERC-4337 proposal. This addition will provide our users with better recovery options, an easier way to pay transaction fees, and the ability to enjoy multi-signatory rights. Ultimately, it will make Ethereum more accessible to a larger audience without dealing with private keys and seed phrase management.

ERC-4337

An account abstraction proposal 4337, or in short ERC-4337, describes how the account abstraction works in the Ethereum Virtual Machine.

Let’s see it all together in a diagram that is taken from https://twitter.com/ProbablyNoam:

https://twitter.com/probablynoam/status/1648080136439488513?s=61&t=tfKGnxF3fow02GH1cn2qLQ
  1. Users can interact with the blockchain through a pseudo transaction object, UserOperation, containing the necessary information, such as data and signatures.
  2. Bundlers group together user intents and merge multiple UserOperation objects into one transaction.
  3. When multiple user operations are included in a transaction, it is sent to the EntryPoint contract for execution on the chain.
  4. When a bundle of user operations is…

--

--

Kristaps Grinbergs

Blockchain, mobile and fullstack developer. Startup founder. Conference speaker. Mentor. Passionate about building products, sustainability and Web 3.0.