Seedphrases = Bad User Experience. Period.
Whenever there is a conversation about Account Abstraction (AA), it is often impossible to ignore the inherent issues with seedphrases.
Seedphrases are the most commonly used entry points in today’s Web3 user onboarding. However, they offer poor user experience. They cannot be fundamentally changed by the users themselves.
This naturally leads up to a set of issues if the keys are lost or stolen. To name a few, here are some —
- If you possess the key, you have complete control over your wallet or Web3 account. Without it, your options are virtually non-existent. Consequently, users lack any end-to-end control or access. The limitation restricts the unique benefits that Web3 wallets or accounts could otherwise offer.
- Gas fee must be paid from the account itself using Ether, complicating the onboarding process for new users. Moreover, the need to transfer Ether from an older account to a new one raises privacy concerns — because it links the user’s identities across accounts.
- The system offers no flexibility whatsoever to decentralized applications (dApps), because they cannot automate any actions or experiments within the native application. This is due to the constant requirement of gas fees for any operation. It severely limits the potential for innovation within the ecosystem.
What on Earth is Account Abstraction?
Before understanding Account Abstraction at a fundamental level, here is a little breakdown of the account architecture within the Ethereum ecosystem —
- Externally-owned Accounts (EOAs) — EOAs are controlled by private keys. They are used by external actors, like human users or external systems. These are the accounts from which transactions originate.
- Smart Contract Accounts — They are controlled by the contract code and can only perform an action when activated by a transaction.
Now, Ethereum has a special category of transaction structure that EOAs use, which compels that a certain set of fields be filled out in a peculiar manner, like — nonce, gasPrice, to, value, data, among other fields. The very structure is designed to limit the different types of transactions the users can sign. Here is where Account Abstraction comes to the rescue.
The objective behind Account Abstraction is to blur the distinction between EOAs and smart contract accounts.
The proposal advocates to abstract away the complexities associated with the former and thereby, enabling each transaction to be sent to a smart contract, including those that currently originate from EOAs.
This means that all account types in Ethereum would be treated as Smart Contracts alone, making the Ethereum system more uniform and robust.
The idea of Account Abstraction (AA) has been a major part of Ethereum’s discourse for many years now. Vitalik Buterin, Ethereum’s Cofounder, has been among the most vocal proponents. The implementation of Account Abstraction was considered for inclusion in various Ethereum upgrade proposals. It evolved from several different research discussions, but never attributed to a single eureka moment.
The benefits of Account Abstraction include —
- Flexibility — Developers can create a custom wallet logic and define their own access controls or transaction rules.
- Innovation — By giving developers the power to design the behavior of accounts, it can lead to innovative solutions for account recovery, multi-signature setups, and more.
Read more: Web3Auth MPC is here!
What does Account Abstraction (AA) enable?
Account Abstraction fundamentally equates to having a user-centric Smart Account that adapts to the user’s specific needs. For a novice, it offers a banking-like experience without centralized trust, similar to that of online services by traditional banks. If users lose or forget their password, they can easily recover it, thereby eliminating the need to manage complex cryptographic keys.
This approach aligns better with the expectations of future users, who are unlikely to manually note down passwords or seedphrases.
As for advanced users, account abstraction provides a range of customizable features. They can set up different access levels that are linked to various keys, facilitating better control. For instance, users could make transactions up to $1000 directly from their mobile device, increase it up to $5000 with two-factor authentication, or even exceed this limit by using an added ledger device.
For beginners, account abstraction allows for a user-friendly introduction to blockchain:
- No need for seed-phrases or keys, just devices.
- Streamlined account recovery process.
For experienced users, it offers greater flexibility:
- Multiple keys with varying roles.
- Role-based authentication.
The account continuously evolves with the user’s needs, becoming a more feature-rich and controlled environment over time.
Furthermore, this makes it viable for DAOs to sponsor users and wallets, and also cover gas fees for new users, billing their registered credit cards. It eliminates the need for an eKYC before onboarding users for non-financial applications. Users would not have to purchase any crypto to pay for gas fee, they only pay for using the wallet itself. Gas fees can be paid using any token, not just Ether.
But all is not fair yet. Account Abstraction (AA) also comes with its own share of challenges.
- Increased complexity — While it might simplify the protocol in some areas, it makes user experience and tooling more complex.
- Gas payment — Handling gas payment becomes more complicated since the abstraction does not allow for contracts that don’t have sufficient gas.
Before we conclude, let us be fair and attribute credit where it is due. EOAs have still certainly played a foundational role in shaping Web3 so far. But their limitations are increasingly apparent.
Within the Ethereum ecosystem, Account Abstraction (AA) underscores a natural progression in addressing the challenges of EOAs. It is clear that Account Abstraction promises a more intuitive and adaptable user experience, bringing down some of the existing barriers.
It hints at an Ethereum landscape where user needs are central, with thriving innovation. As the discussions deepen within the Ethereum community, it seems to be evident that while the potential is vast, despite the wrinkles that ought to be ironed out.
This ongoing exploration of Account Abstraction mirrors the broader journey of blockchain — evolving, learning, and persistently pushing the boundaries.
If you are building a Wallet or a dApp and you are looking to onboard the next billion users on to Web3, sign up here to try out our SDKs.
Frequently asked questions (FAQs)
- What is Account Abstraction?
Coined by the Cofounder of Ethereum Foundation Vitalik Buterin in 2021, Account Abstraction refers to an advanced proposal in the Ethereum ecosystem to allow users to define their own account structures rather than adhering to the currently pre-defined ones, such as externally-owned accounts. With Account Abstraction, the differences between EOAs and Smart Contract Accounts could be removed, while the proposal advocates for unifying them together, and abstract away all the complexities.
- What is ERC-4337?
ERC-4337 is the latest Ethereum standard unveiled at WalletCon 2023, which proposes complete Account Abstraction. It advocates for abstracting awaying the complexities attached with every single element of a user’s web3 account by facilitating the usage of smart contracts designed to be more accessible for new Web3 users.