Account Abstraction Explained

Kana Labs
5 min readMar 9, 2023

--

Account Abstraction is a term highly talked about in the crypto and DeFi community these days. What is account abstraction and why is it hyped up so much?

Account Abstraction is the next evolution in the process of digital assets ownership and handling. To explain in simpler terms, this process is the next upgrade towards the usage of non-custodial/self-custodial wallets. In today’s crypto world, all digital assets are stored in wallets which can be categorized as Externally Owned Accounts (EOA). Be it an on-chain software wallet or an off-chain cold storage hardware wallet — both can be categorized under Externally Owned Accounts.

Externally Owned Accounts act as external entity that exists outside of a blockchain network. This is a type of account created using a combination of public and private keys which act as unique reference IDs to store and access data from the blockchain network. Each EOA (wallet) is essentially mapped directly to an individual user on a one-to-one basis and is accessed via a private key. If a user loses access to his private key, they completely lose access to all data/tokens stored in the EOA.

There is also a version of EOA that is mapped to smart contracts and is known as Contract Accounts. These cannot exist independently and are created only when a smart contract is mapped to an EOA account. Here the smart contract replaces the role of private-public that exists in EOA accounts.

When a transaction is made today, the transaction can only be initiated by the user after connecting their EOA (wallet) to a blockchain network. While there exist several EOAs with multi-signature authentication, they still ultimately rely on a common private key. Thus, the theft or loss of a private key would result in the user losing all access to his digital assets.

Account Abstraction aims at moving digital asset ownership and handling from EOA directly onto the blockchain network. It combined the best parts of EOA and Contract Accounts while abstracting away some of its cons thereby facilitating better flexibility and scalability in the way in which assets are stored and handled

Account Abstraction was first proposed in its simplest form as (Ethereum Improvement Proposal) EIP-2938 aimed at facilitating smart contracts to act as the top-level account which had the capability to initiate transactions and pay gas fees. But this did not replace or remove EOAs. Shortly thereafter, a new proposal with a completely different approach came into existence EIP — 3074 that aimed to make existing EOAs work more like smart contracts. This would be achieved by allowing users to assign/entrust the control of their EOA wallet to the smart contracts making it a smart contract wallet. While this approach was brought about to facilitate mass adoption of existing EOA users, the EOAs still retained their original characteristics and continued relying on seed phrases.

The most recent proposal towards account abstraction is EIP 4337 which is an evolution of smart contract wallets. This proposal makes writing and operating smart contract wallets simpler by pooling together several key on-chain and off-chain infrastructures. This would mean that the user would no longer have to custom initiate each transaction. Instead, they can send user operations to a high-level mem pool which are packaged by miners or bundlers into a bundle transaction that is sent to another contract for execution. This contract (entry point) ensures that the bundled transactions are executed correctly and that the miners/bundlers are properly compensated for the transaction fees.

This proposal also facilitates the possibility for any developer to easily write smart contract wallets by directly writing codes without having to care about how to subsidize transaction fees. But this proposal still retains EOAs on top of which smart contract wallets are built to facilitate Account Abstraction. While the proposal of Account Abstraction is yet to be implemented on the Ethereum blockchain, several other chains have come into existence with native account abstraction that is heavily inspired by EIP-4337.

Having said that, let’s break down some of the clearly evident benefits of Account Abstraction such as -

  • Multi-Call Feature — A process to simplify transactions that normally takes two to three transactions into a single transaction
  • Session Keys — It aims at maximizing security while simplifying UX. A smart contract will work to authenticate transactions when a user is required to sign the transaction via his wallet. Here, instead of providing complete access when authenticating transactions, session keys are used to control the process by restricting access in various forms such as how long will the authentication be valid for, how much fees can be allocated for gas fees and limiting transaction volume for various tokens etc.,
  • Social Recovery — The facility aimed at negating the cons of the private key. The users can decide how to bring this about in a smart contract be it via a third party or other trusted mechanisms. This feature is created to allow users to regain access to the contents of the wallet in case the private key is lost. This feature can also be used to provide others with varied levels of access to wallets or allow a nominee to gain access to the entire contents of a wallet in case the original owner of the wallet is incapacitated or has passed away.
  • Multi-Factor Authentication & Security — This is aimed at improving overall security in various forms such as Enabling Two-Factor Authentication, daily transfer limit and automatically blocking transactions for addresses that have been flagged with security concerns or scams.
  • Plugin — This is a feature aimed at providing better upgradability, scalability and flexibility for smart contract wallets. Third-party developers can custom-develop features they desire by creating it as a plugin and mapping it to smart contract wallets to auto-execute their desired functionalities.

In an ideal Account Abstraction based wallet, there wouldn’t be any visible trace of an EOA. But, account abstraction is a concept still in its infancy and more developments are brought about relating to the same each day. Moving forward, the endgame of account abstraction is expected to focus on removing the biggest threat in today’s EOA-based UX — reliance on users for the management of private keys. But, as mentioned earlier, various chains have popped up implementing account abstraction based on existing proposals and given its benefits over existing systems, more chains and use cases for account abstraction will continue to pop-up. The mass adoption of account abstraction will soon become a reality and be heralded as the next major technological innovation in the crypto and DeFi space.

--

--

Kana Labs
Kana Labs

Written by Kana Labs

Web3 & Blockchain Tech specialist developing Cross Chain and Account Abstraction Smart Wallet solutions.

No responses yet