How to accelerate crypto and Web3 adoption?

Meet Account Abstraction, #EIP_4337 (*)

Tatiana Revoredo
9 min readJul 27, 2023

📬 At the 6th edition of ETHcc — Ethereum’s largest annual technology-focused event — the highlight of the technology-focused conferences was the #AccountAbstraction upgrade.

Since 2017, the Ethereum Foundation has been working on this “short-term” solution to make transactions on the Ethereum blockchain more user-friendly.

Why is Account Abstraction (AA) important to accelerate crypto and Web3 adoption?

This article explores:
1. What are the prerequisites for bringing cryptos and Web 3 to the mainstream?
2. Ethereum and VISA are betting on “Account Abstraction” (AA) as a solution for self-custody, automatic payments and user experience on Web 3. What do you need to know about EIP-4337? Practical advantages.

But before we dive into the subject, we need to highlight a few points that are essential to understanding this article.

The prerequisites for bringing cryptocurrencies and Web3 to the mainstream

The term “user experience” (UX) began to gain relevance in the mid-1990s.

But it was after advances in computing technologies, which shifted human-computer interaction to virtually all areas of human activity, that UX gained notoriety and importance.

Here, it is worth noting that to experience a new ecosystem for the first time, early adopters need to overcome the fear of using something untested and still under development.

It is the early adopters who accelerate the diffusion curve of a new platform, service or product, ensuring the initial viability of a digital ecosystem and often contributing with their feedback.

However, for an innovation to survive in the long term, and achieve mass adoption in its life cycle, at some point it needs to prioritize and improve the user experience (UX). After all, users are a fundamental part of any digital ecosystem.

Now, cryptocurrencies and Web 3 still lack the ability to approach and improve user experience (UX).

Even today, the vast majority of people have difficulty, for example, downloading a wallet, transferring peer-to-peer cryptos, understanding what a “gas fee” is; not to mention that many run the serious risk of compromising all their cryptoassets — because they are not aware of all the necessary care with their private keys.

Therefore, for a mass adoption of crypto and Web3, a “user-friendly” technological maturity is needed.

The user, essential to any digital ecosystem, wants ease and peace of mind when using a service or product.

Decreasing usability risks and improving user experience (UX) is a prerequisite for crypto and Web3 to reach the mainstream.

Hence why the Ethereum Foundation is betting on the Account Abstraction solution to make transactions on its blockchain more user-friendly (the EIP-4337).

But before we see what this EIP-4337 upgrade consists of, we need to take a step back and understand the current situation.

Transactions on the Ethereum blockchain and the “usability risk”

1) Transactions on the Ethereum network

On the Ethereum blockchain, users can open two types of accounts, which differ in the way they initiate transactions on the network.

  • EOA (External Owned Accounts): External Owned Accounts and,
  • CA (Contract Accounts): Contract Accounts.
    Their main differences are:

External Owned Account (EOA)

Creating an EOA account costs nothing;
EOA is an account capable of initiating transactions on the blockchain;
Transactions between external accounts can only transfer token “ETH” (ether);
It is composed of a pair of encrypted keys: a public key and a private key — the latter controls the account activities.

Contract Account (CA)

  • Creating a contract has a cost because you are using network storage;
  • A CA can only send transactions in response to receiving a transaction;
  • Transactions from an external account (EOA) to a contract account (CA) can trigger codes that can perform many different actions, such as transferring tokens or even creating a new contract;
  • In contract accounts there are no private keys. Instead, they are controlled by the logic of the smart contract code.

Thus, an EOA Ethereum account is the one you use if you are using a wallet provider like MetaMask. This is therefore the most common type of account for Ethereum users.

With EOA, you receive a pair of keys — a public key and a private key. Anyone can send funds to your EOA using your public key. But only you, the account owner — or whoever has access to the account’s private key — can actually initiate transactions from the account. So the private key must be kept secret. See more about public key cryptography, here.

On the other hand, Ethereum CAs accounts — better known as “smart contracts” — are those controlled by software codes with self-executing rules, rather than private keys. Imagine an encrypted vault that unlocks value or access rights if and when certain pre-set conditions are met.

But here, there is a “however”… CAs cannot initiate transactions on their own. How so?

An EOA needs to send a transaction (message or instruction) to a CA, so that only then can it make transactions on its own.

Here, another problem arises.

The usability risk in EOAs

Usability risk is nothing more than the possibility of human error when managing the private key.

As already said, whoever has control of the private key has absolute control of the account. And if you lose it, you lose full access to your assets, which will be trapped in your account forever.

Similarly, if a third party gets control of your private key (think cybercriminals) and “appropriates” your assets by transferring them to another account, you will have lost access to them forever.

In summary, if you lose the private key to your EOA account, too bad, there is no password reset button. A single mistake can be catastrophic, and unfortunately many people have done this over the years. There are countless documented accounts and failures, and there are probably still many stories that have not been documented because people are too embarrassed to speak up.

Usability risk is the biggest security flaw in managing an Ethereum EOA account.

To solve these problems we just saw, Account Abstraction comes in.

Account Abstraction (AA), the EIP-4337 upgrade that wants to bring cryptos and Web 3 to the mainstream.

1) overview

“Account Abstraction” (AA) is a method to turn a user account into a smart contract. Why is this important?

Because AA simplifies the UX in Web 3 applications by eliminating the complexities of custody, digital wallets and blockchains.

With it, users can transact and custody their cryptos with greater ease and security.

In other words, AA addresses the shortcomings of EOAs by merging them with CAs, which enables people to create user accounts with built-in fail-safe mechanisms, optimizing transaction verification.

In this way, the smart contract — which today only implements application logic — would also implement verification logic (of signatures, etc.) directly in users’ wallets via smart contracts.

Here, it is worth noting that the contract can be used on all EVM chains, which means it can be deployed anywhere that is EMV-compliant.

2) The concept of Account Abstraction (AA) is not new. Why did it take so long to be implemented?

The concept of AA is not new. In 2017, Vitalik wrote an EIP on the topic, and other implementations have been proposed in the meantime.

The main obstacle to their implementation has been the fact that these changes would require fundamental updates to Ethereum, which are notoriously difficult to coordinate, and other core changes (such as the move to Proof-of-Stake) have had a higher priority.

After The Merge occurred and discussions shifted to facilitating the onboarding of new users towards the mainstream, interest in Account Abstraction slowly returned.

And in recent weeks, the tide seems to have taken the momentum needed for full implementation of AA. Finally, the Ethereum Foundation announced the rollout of EIP-4337, set for September 2021, at the ETHDenver-related event known as WalletCon.

In parallel to this, several infrastructure vendors are expected to disclose their plans to support ERC-4337 through their services.

In this line, L2s like zkSync and StarkNet are developing a native Account Abstraction in their system architectures.

Given this, what are the possibilities brought by AA in practice?

3) Benefits of Account Abstraction to self-custody and user experience (UX)

3.1) Sponsored transactions

Today, potential users need to go to a centralized exchange, wait for KYC, buy ether (ETH), transfer it to their wallet, and then try out most DApps.

With the AA, Decentralized Application (Dapps) developers could choose to subsidize transaction fees as part of their onboarding process, removing one of the biggest friction points for new users in crypto.

In addition, there would also be the option to use a different token (such as DOGE) to pay for gas from Dapps, or to designate someone else (such as a relative or friend) to pay the gas fees.

3.2) Automatic payments in a non-custodial wallet (hardwallet)

Currently, the approval of all transactions in a self-custody wallet need to be simultaneous. This is because the Ethereum Blockchain currently only supports Push payment, where a payment transaction is triggered by the payer.

With AA, it would be possible to schedule transactions to occur on a certain date, or according to event flows — such as utility bill due dates, TV subscriptions, among others. This would allow automated payments to be set up in a self-custody wallet.

3.3) Social recovery process

In traditional wallet recovery methods, the user needs to be in possession of a passphrase (the famous SEED) in order to regain access to their wallet. This, however, can become a headache if the user loses their recovery phrase or if it is stolen.

With AA, it is possible to implement a “social” recovery process where a user can designate trusted individuals as recovery agents.

3.4) Multisig wallets by default

In a multi-signature wallet, multiple devices, individuals or parties must provide their signatures before a transaction can be executed. Today, Multi-Sig wallets require EOAs to initiate the transaction, pay the gas fee and then activate the multi-signature smart contract. Only then will the contract refund the amount of gas initially paid by the EOA account.

With AA, accounts can be programmed to require multiple signatures before a transaction is executed, turning each account into a multisig wallet by default. This allows users to easily implement multisig functionality without having to use a multisig wallet contract on the side.

3.5 Ease of key management for games

Currently, players of blockchain games have to approve every action or give the game full control over their wallet.

With AA, the smart contract wallet can be programmed to create a private key that allows automatic transactions only with a specific DApp and for a certain period of time.

This is advantageous, as it grants least privilege to the DApp the gamer wishes to use, increasing security. All assets belonging to the main wallet account then remain protected.

Visa intends to use AA to automate payments on hardwallets

Recently, Visa also announced the possibility of adopting AA to implement automatic payments through StarkNet, L2 that is developing a “native” Account Abstraction in its system architectures.

Thus, its customers — who already schedule recurring payments of their bills in TradiFi — could automate the payment of their bills via blockchain.

Final thoughts

Account Abstraction is a solution that turns users’ wallets into smart contract accounts.

With it, builders and developers can create products and services that are more accessible and useful to the user, which can accelerate the adoption of both cryptos and Web 3.

As more established brands embrace this new solution, leaving behind the burden of private key management, the closer we get to the long-awaited mainstream.

In the process, however, don’t be alarmed if well-established “terms” are given a new approach. How?

“Wallet” is a word that is already being replaced by “Pay Key”. “Multisig wallet” is now being called “Vault”. The term “NFT” is being replaced by “Digital Collectible”, among others.

It is important to note that Account Abstraction is not the only approach to improve self-custody and UX. But recent hackathons have shown us that next-generation web builders have preferred Account Abstraction over other solutions.

How about you? Do you think this trend of AA as a solution is confirmed?

Have you noticed that some players like Reddit have been replacing old “crypto” terms with others, more in line with the current stage of evolution of blockchains and derivatives?

Have you been able to understand the advantages of AA for self-custody and UX on Web 3? Did you know that both VISA and Ethereum Foundation had bet on AA as a solution?

Do you also think that after EIP-4337, transactions on the Ethereum blockchain will become simpler? Did you understand the importance of this Ethereum upgrade to accelerate crypto and Web 3 adoption?

Knowledge is power!!! See you soon!

(*)This article was first published in Beincrypto Brazil

--

--

Tatiana Revoredo
Tatiana Revoredo

Written by Tatiana Revoredo

Blockchain | Web3 | Technology & Innovation | Oxford Blockchain fdn •

No responses yet