Ethereum, a well-established cryptocurrency, has been in existence for some time. Nevertheless, its widespread adoption by the general population has not yet been realized. One of the major challenges preventing cryptocurrencies from transitioning from a niche interest to mass acceptance is the less-than-ideal user experience provided by most Web3 wallets. These wallets serve as a user’s gateway to the blockchain. To elaborate further, newcomers interested in engaging with the blockchain must create a wallet, securely store their private keys, perform transactions, cover gas fees, and provide signatures for every action they take on a decentralized application (dApp). Account abstraction emerges as a potential solution to enhance the user experience and pave the way for Ethereum’s broader acceptance.
While discussions surrounding Account Abstraction have been ongoing since 2015, its mainstream application is anticipated to take hold in 2023. This prompts us to consider whether it truly represents the future of wallets. Account abstraction could potentially revolutionize asset tokenization for financial institutions, signifying a significant evolutionary leap.
So What Exactly is Account Abstraction?
Account abstraction presents a solution to these challenges by enabling users to introduce greater security and enhance user experiences within their accounts. This can be achieved through two primary methods: upgrading externally owned accounts (EOAs) to make them controllable by smart contracts or upgrading smart contracts to enable them to initiate transactions. Both of these approaches necessitate modifications to the Ethereum protocol. Alternatively, there’s a third approach, which involves introducing a secondary, separate transaction system to operate in parallel with the existing protocol. Regardless of the chosen path, the ultimate result is access to Ethereum through smart contract wallets, which may be seamlessly integrated into the current protocol or accessed through an additional transaction network.
Perceivable Benefits of Account Abstraction
1. Advantages from signature abstraction
- Seedless logins
- Native multi-sig
- Easy wallet migration & key management
- Social Recovery
- Hybrid Custody Steps
2. Advantages from gas abstraction
- Enable payment for user transaction gas
- No need for Ethereum in users’ wallets
- No need to mandate native or contract-defined tokens
3. Other benefits
- Beginner-friendly experience for dApps and wallets
- A private key/seed phrase-free experience
Better user experience
Account abstraction represents a significant enhancement for both user experience and security, primarily because it integrates support for smart contract wallets directly into the Ethereum protocol. The primary rationale behind this improvement is the newfound flexibility it offers to developers working on smart contracts, wallets, and applications. This flexibility allows for innovations in user experiences that may currently be beyond our imagination.
One of the immediate advantages of account abstraction is the ability to bundle transactions for speed and efficiency. For instance, a simple swap could become a one-click operation instead of requiring multiple transactions to approve spending individual tokens before the swap. Account abstraction eliminates this friction by enabling transaction bundling. Moreover, these bundled transactions could precisely approve the required token values for each transaction and then revoke these approvals after the transactions conclude, enhancing security.
Gas management also sees substantial improvements with account abstraction. Applications can now offer to cover their users’ gas fees, and these fees can be paid in tokens other than ETH. This liberates users from the need to maintain an ETH balance solely for funding transactions. The process involves swapping the user’s tokens for ETH within the contract and subsequently using that ETH to cover gas costs.
Another noteworthy innovation is the concept of trusted sessions, particularly beneficial for applications like gaming where numerous small transactions may need rapid approval. Manually approving each transaction would disrupt the gaming experience, while granting permanent approval poses security risks. A smart contract wallet could approve specific transactions for a set time, up to a certain value, or exclusively for particular addresses.
Additionally, account abstraction could revolutionize the way purchases are conducted. Currently, each transaction must be individually approved and executed from a wallet pre-loaded with an adequate amount of the correct token. With account abstraction, the experience could resemble traditional online shopping, where users can assemble a “basket” of items and complete the purchase with a single click, with all the necessary logic handled by the contract, not the user.
These examples illustrate how account abstraction has the potential to elevate user experiences significantly. Furthermore, it liberates developers from the limitations of existing externally owned accounts (EOAs), enabling them to incorporate the positive aspects of Web2 into Web3 without compromising self-custody and fostering creativity in the development of novel user experiences.
So Is Account Abstraction the Future of Wallets? If Yes, When Will It Get Here?
With Account Abstraction, smart contracts can be implemented as a contract like EIP4337 or natively in the protocol itself. EIP-4337 is not a finished product yet and will undergo changes before it is finalized. Even still, inspired by EIP-4337, various L2 chains or L2 ZK-rollups like StarkNet, zkSync, etc. have started to implement their unique versions of account abstraction.
Essentially, Account Abstraction would provide much more flexibility and customizability. However, we cannot ignore the security tradeoffs. With the transactions becoming extensible, it offers a larger surface area for attack vectors. Moreover, since it warrants migrating to the new standard, unforeseen bugs are almost inevitable. There are several other risks involved as well. So with account abstraction, it becomes essential to achieve a middle ground.
Ultimately, since we are now seeing some realistic implementation of Account Abstraction, it will surely govern what the next-generation wallets should look like.