Managing Complexity Via Account Abstraction – A Simplified Future

Managing Complexity Via Account Abstraction – A Simplified Future

Written by

Alexandra

December 21, 2022

Account abstraction (AA) is the hottest topics discussed in the web3 space. If you've been following Vitalik on Twitter, you may have heard of it at least once.

Vitalik says that its implementation has been a longtime “dream” for Ethereum developers, and he’s made several suggestions for implementation. You may also have heard that both StarkNet and zkSync, the leading Layer 2 solutions, announced that they will be launched with a native account abstraction.

But what is it exactly? And why is this a game changer for crypto adoption?

What is account abstraction in Web3?

In the context of OOP, an abstraction is a generalization of data and behavior for a type that is above the current class in the hierarchy.

The principle of abstraction is one of the most fundamental principles of engineering. It states the following: “A component’s interface should not depend on its implementation.” At the same time a component may be a hardware or software component.

The interface of a component is the user’s view of it, and the implementation is the developer’s view. If a component is designed according to the abstraction principle, then the user does not need to understand how it works in order to use it, and the developer can change the implementation without notifying the user.

The approach of account abstraction in crypto means it turns accounts into smart contracts with their own logic to determine what is a valid transaction. The only requirement is that they conform to a specific interface with methods for validating and executing transactions.

Vitalik is a big supporter of this approach since account abstraction moves cryptocurrency from the current “one-size-fits-all” angle, where someone can lose everything due to a small mistake, to a future where an account can be tailored to someone’s needs. Soon, we’ll be at the tipping point where everyone can easily create a safety net for self-custody and give it a much nicer UX.


Here is what Vitalik says regarding the topic: “Instead of the EVM code being used only to implement the application logic, it will also be used to implement the validation logic (nonces, signatures…) of individual users’ wallets. This would open the door to creativity in the design of the smart wallet, which could provide some important functionality.

How Can dApps Benefit From Account Abstraction?

Account abstraction drastically improves the overall UX and expands the application design space for developers. 

AA allows you to create self-service wallets that can rival the best new banking apps. Imagine the Cash App combined with Google Login. But it belongs to you. And accessible to everyone, everywhere.

With the built-in AA implementation, DApps and crypto wallets could greatly improve the UX and security. From the point of view of the end user, this means the following:

Bulletproof Protection

Wallets can include arbitrary logic to validate transactions. From a security perspective, this opens up a whole world of possible improvements:

  • Key recovery. If the private key is lost or compromised, smart contract wallets can add mechanisms to securely replace the key that controls the account. No more worrying about losing your initial key-phrase.
  • Future proof signatures. At any time, smart contract wallets can change their signature scheme to one that is simpler, more gas-efficient, or quantum resistant. Or even use the secure enclave of iOS and Android devices to turn every phone into a hardware wallet.
  • Fraud monitoring. Checking every transaction against established security rules and preventing funds from being sent to a fraudulent address or incorrect contract.

UX For Mass Adoption

With arbitrary logic added to smart contract apps, we can solve many of the problems that the web3 ecosystem faces. This has thecould potential topotentially boost the wider adoption of crypto.

Key improvements include:

  • Session keys. With these, we can create a seamless blockchain gaming experience by allowing users to pre-approve an application’s transactions based on a set of criteria: a given duration, maximum gas, maximum transaction volume of a particular token, or a particular feature on a specific contract.
  • Pay fees in any token. Users will never have to worry about paying fees in a specific currency. Thanks to AA in Ethereum, users will be able to pay with any token they want.
  • Multicall. Combining multiple transactions into one using multicall – no more signing and issuing dozens of transactions. Interaction with DApps will become faster, easier, and more secure.

These are just a few things AA has made possible, but the use cases are far more extensive than that. Scalability, security, and great UX present an excellent recipe for the widespread adoption of cryptocurrencies.

How Does Etherspot Relate to Account Abstraction?

  • Etherspot has provided a stepping stone to Total Ethereum Network Account Abstraction.
  • We allowed users to experience AA features without waiting for the long and technically complex network upgrade (an upgrade whichbefore it could take years to complete).
  • Our EVM-compatible platform makes the development process super straightforward and removes currently existing knowledge requirements of complex systems from the end user. Now the client is freed from what goes on in the background.

Summary

We found out that the purpose of the account abstraction is to lower the number of account types or objects with ether (ETH) balance that can send transactions.

Ethereum currently has two types of accounts – accounts controlled by private keys and contract accounts.

The account abstraction allows for a single account type, contract accounts only, and moves features such as signature verification, gas payment, and replay protection from the core protocol to the EVM. This is different from today’s Ethereum, where all transactions must start with EOA or an account controlled by a private key.

Account abstraction takes web3 infrastructure from the current one-account-fits-all approach, where someone can lose everything due to a small mistake, to a future where an account can be tailored to a user’s needs.

And here at Etherspot, we are sure that account abstraction leads to significant improvements in the overall user experience and enhances the app development experience for programmers. When it comes to how it can be used, we’re excited to see a multitude of creative use cases being built with Etherspot anchoring them firmly in account abstraction.

The possibilities for AA are endless, and Etherspot keeps pushing the boundaries of what’s possible for developers, to new limits.  

About Etherspot

Etherspot is a blockchain development SDK for EVM-compatible chains that creates direct state channel bridges to provide a seamless user experience across chains and wallets. With just one deposit, you can onboard your users to the entire multi-chain world of EVM compatible chains. This helps platforms save costs, and time and increase user adoption across chains. We’ve been battle tested for more than 2 years and audited by Consensys Diligence.

If you’d like to integrate Etherspot’s SDK in your dApp or propose our team integrate your project, please feel free to fill out this form and we’ll get back to you

Or get in touch on Etherspot’s channels:

Website | Twitter | Discord | Github | Telegram