If we read a lot of news recently, we will probably often hear the term Account Abstraction mentioned by ZkSync, Chainlink or the founder of Ethereum like Vitalik on X. However, this is also a quite abstract and difficult term. I understand partly because it's heavy on technicalities. In this article, I will explain in the simplest way possible.

History of formation and development of Account Abstraction

Since its inception, Ethereum has used an Account-based model for its blockchain. This model is divided into 2 types of accounts: The first is the user-owned account (EOA), the second is the contract account controlled by smart contract or Account Abstraction that we are talking about.

As for Externally-Owned Account (EOA), if you are someone who regularly trades cryptocurrency, you will probably be familiar with this type of account, which is the MetaMask wallet, Coinbase Wallet,... that most of us often use. often used. This type of account is composed of a pair of cryptographic keys: a public key and a private key that allow access to the user's account.

If the user wants to mint or transfer cryptocurrencies and NFTs, when making a transaction, EOA will sign the transaction and the user will pay Gas fees with native tokens according to its network standard (eg ETH on the ERC-20 network ). Gas fees are a reward to incentivize miners to include your transactions in the block.

The entire cumbersome process with EOA includes many confirmation steps that are very complicated for new users when experiencing activities with Dapps. Furthermore, EOA accounts are controlled by private keys. This means that anyone in possession of the private key can access your account and assets. In case you lose your private key, it seems very difficult to get the assets in your wallet back.

The crypto community believes that the EOA system limits users' ability to interact with Ethereum. In particular, users in the ecosystem always have to keep a certain amount of ETH in their wallets to pay gas costs in transactions, creating an unnecessary inconvenience.

In contrast, a contract account is established and controlled by a smart contract with specific code. Contract account (or Account Extraction) allows smart contract accounts to function similarly to EOAs, eliminating the reliance on private cryptographic keys to confirm transactions. This provides many benefits such as increased security and allowing for more complex authentication mechanisms.

It still sounds a bit confusing, but we will analyze more deeply to understand each step of this type of account.

ERC-4337 Token Standard

In March 2023, Ethereum developers enabled the ERC-4337 standard through a smart contract called EntryPoint, implementing the concept of account abstraction and compatibility with all EVM networks such as Polygon , Optimism, Arbitrum, BNB Smart Chain, Avalanche and Gnosis Chain. This solution has been audited by Open Zeppelin.

The rumors are true… ERC-4337 has been deployed on mainnet Security audit by @OpenZeppelin Bundlers and paymasters by @stackup_fi, @AlchemyPlatform, @biconomy , @etherspot, @candidewallet, @blocknative & more $300K in grants by @ethereum pic.twitter.com/WOjMvaZe6M

— erc4337 (@erc4337) March 2, 2023

ERC-4337 is a new standard that aims to realize Account Abstraction on Ethereum without changing the core protocol, allowing user wallets to be converted into smart contract accounts to make Ethereum addresses so it's more convenient and prevents private key loss. This standard works on top of existing systems and does not require major changes to the blockchain infrastructure.

Instead of changing the logic of the Consensus layer itself, ERC-4337 replicates the functionality of the transaction mempool in a higher-level system. Mempool is similar to a waiting room before information is confirmed and posted to Block. Users will send UserOperation objects (similar to a transaction) along with signatures and other data for verification. Miners or bundlers using services like Flashbots can bundle a set of UserOperation objects into a single “bundle transaction,” which is then included in an Ethereum block.

ERC-4337 also introduces a paymaster mechanism, allowing users to pay gas fees with ERC-20 tokens (e.g. USDC) instead of ETH, or allowing a third party to completely fund their gas fees, all All are done in a decentralized manner. Therefore, you do not need to passively and inconveniently buy ETH reserves.

You can learn more about the architecture of ERC-4337 here: https://www.erc4337.io/docs

Account abstraction wallets

Similarly, Account Abstraction is a pioneering method that changes the current user wallet experience, by establishing a blockchain network in which user assets are stored entirely in smart contracts, instead of because in external accounts (External Owned Accounts, EOAs). Using this method, a Crypto wallet becomes a unique smart contract that can be programmed for a variety of purposes and opportunities, e.g.

  • Create a “Whitelist” of trusted crypto receiving addresses (this can also protect assets in case your private key is stolen)

  • Accounts from another authorized device can be frozen in case the primary device is lost.

  • Add pre-approved accounts that can authorize new devices in case of lost device or password (“social recovery”)

  • You can limit the number of transactions from your account by day, week, or month.

  • Pay gas fees with ERC-20 standard tokens other than ETH.

  • Low gas costs

In addition, Account Extraction also has other benefits such as:

Eliminate dependency on Seed Phrase: ERC-4337 allows creating secure wallets without the need for Seed Phrase. This helps minimize the risks associated with loss or hacking of the seed phrase. ERC-4337 also introduces friendlier wallet login and protection methods, such as 2FA, biometrics, etc., just like in traditional banking services. 

Eliminate the element of human error with smart contracts: With the integration of smart contracts, the possibility of human error is significantly reduced, thus increasing operational accuracy. Stealing funds from a specific account becomes more difficult for attackers because the user's private key is not used to directly control the assets in the account — only to authorize the execution of a smart contract. bright.

Seamless compatibility with different chains: ERC-4337 allows for easy integration of adjustments across different blockchains. It is available on Ethereum Virtual Machine compatible networks, such as Polygon, Avalanche, Arbitrum and many others.

Current stage of Account Abstraction implementation

Currently, smart contract-based wallets are being actively developed. These new solutions focus on enhancing security and improving user experience.

This technology was first used by the Braavos crypto wallet, created for the L2 StarkNet network. There is also Hold Wallet leading the trading volume on ZkSync, or Basal Wallet,...

Account Abstraction envisions a future where accounts can be customized through smart contracts, better suited to individual needs. This creates a new paradigm in cryptocurrency governance, potentially pushing Web3 towards widespread adoption.