In the ever-evolving landscape of cryptocurrencies, one concept has garnered significant attention and acclaim: Account Abstraction. This groundbreaking development has the potential to propel cryptocurrencies from niche status to mainstream adoption by enhancing the programmability of user accounts.
By unifying Contract Accounts and Externally Owned Accounts (EOAs), while eliminating redundant logic, account abstraction represents a significant leap forward for the entire crypto industry.
More importantly, it means the nascent blockchain industry is approaching a crucial moment regarding useability for everyone. At the same time, it’s a pivotal moment for Fuse as the world catches up with our original value proposition of taking Web3 payments mainstream and changing how people interact with money.
Our latest blog post lets you learn about our journey of pioneering this technology since 2019 and our imminent plans regarding implementing account abstraction. In this article, we want to outline what account abstraction is, how it works, and, most importantly, delve into its benefits to developers in the Fuse and broader EVM ecosystem.
- Understanding Account Abstraction (AA)
- What is Account Abstraction?
- The Unification of Contract Accounts and Externally Owned Accounts
- Eliminating Unnecessary Logic
- The Implications of Account Abstraction
- Gasless Transactions
- Advanced Payment Options
- Paying Transaction Fees in any ERC-20 token
- Enhanced Programmability
- Improved User Experience
- Expanded Use Cases
- Account Abstraction on Fuse Network
- AA In-summary
Understanding Account Abstraction
What is Account Abstraction?
AA (Account Abstraction) is a technology that abstracts the concept of accounts in EVM-compatible networks by unifying it into a single idea at the higher layer of the protocol to overcome the functional constraints imposed by the type of account.
To understand AA’s motivation, we need first to know the characteristics of “accounts” in the Ethereum Protocol. In simple terms: AA merges these two account types, enabling a more flexible and efficient approach.
The Unification of Contract Accounts and Externally Owned Accounts
An ‘account’ is used to identify entities that trade assets and execute smart contracts in the Ethereum protocol. Accounts are classified into EOA (Externally Owned Accounts) or CA (Contract Accounts). EOA is a type of user account that can sign and execute transactions with a private key that controls the account’s address.
Therefore, the account can send its assets to other EOAs or call smart contracts. We usually manage accounts through wallet applications like MetaMask to hold assets (i.e., cryptocurrencies or NFTs), and these are all EOAs.
On the other hand, CA is an account assigned to smart contracts deployed on the blockchain. Therefore, it is mainly used to distinguish a specific smart contract. Since CA does not have a bound private key, it cannot sign or issue transactions independently. It can only do on-chain execution of embedded codes triggered by receiving transactions issued by other EOAs or being called from other contracts.
In summary, there have been constraints for each type of account; EOA can create and execute transactions but cannot execute on-chain code by itself, while CA can execute embedded on-chain code but cannot create transactions by itself. With Account Abstraction, the separation between Contract Accounts and EOAs is dissolved.
This unification allows for greater interoperability and simplifies the overall architecture of the cryptocurrency ecosystem. Contract Accounts, previously limited to executing code on the blockchain, can now possess the capabilities of EOAs, such as signing transactions and interacting with other accounts.
Eliminating Unnecessary Logic
One of the critical advantages of Account Abstraction is eliminating unnecessary logic within the cryptocurrency system. By removing redundant code and streamlining account functionality, the efficiency and performance of transactions are significantly improved. This optimization results in faster transaction speeds and reduced costs, making cryptocurrencies more appealing to individual users and businesses.
The above-described constraints by each account’s original function caused many inconveniences for users. For CA, it was impossible to create a new transaction or deploy a contract (via deploying a transaction). Therefore, separate transaction processing through EOA was always required, even paying double the gas fees.
What about EOA? The secure storage of private keys required to use EOA has been identified as one of the biggest obstacles to the mass adoption of blockchain. Reports have shown that about 20% of Bitcoin assets got abandoned due to the loss of private keys by EOA owners, indicating that managing private keys is very cumbersome.
Additionally, when the transaction from EOA requires any specific business logic, such as the limitation of transfer amount or destination allow listing or blocklisting, it was impossible to implement them as on-chain functionalities. Therefore, supplementing this with an of-chain system was essential, which required much effort to implement trustworthy wallets or payment services.
AA is a concept that has emerged to solve these problems. By abstracting accounts and implementing them as smart contracts, AA eliminates all the abovementioned constraints and makes it possible to execute embedded on-chain functions and issue transactions.
As a result, implementing AA aims to minimize the inconvenience of account management and increase the scalability of Ethereum applications. In summary, it‘s almost time for ordinary people to use crypto, Web3 apps, NFTs, and blockchain services without reading an encyclopedia beforehand.
The Implications of Account Abstraction
People often don’t have to pay for person-to-person transactions online. So why would they pay for similar transactions on the blockchain? AA could let a third party (like a digital wallet provider) cover the cost.
Wallet providers or decentralized applications (dApps) can then act as ‘Paymasters,’ paying the network fees for users, reducing overall costs. The ERC-4337 Paymaster concept could encourage more people to use these platforms by making transactions accessible.
Advanced Payment Options
Another way to understand the benefits of AA is through the traditional terminology of “pull” and “push” payments in the payment industry.
A pull payment is a payment transaction that the payee triggers, while a push payment, on the other hand, is a payment transaction that the payer triggers. Ethereum (and EVM-compatible networks) supports only push payments but doesn’t natively support pull payments; automated payments are an example of pull payments. Just as rent, or a car lease, for example, are paid monthly and automatically by an individual without confirming each payment separately.
In essence, AA allows to delegate the ability to instruct the user’s account to initiate a push payment to a pre-approved auto payment smart contract. The auto payment contract causes the user’s account to initiate a push payment, valid if pre-added to the user’s allowed list. From the token’s point of view, this is indistinguishable from a standard push payment.
Paying transaction fees in any ERC-20 token
Today, to make transactions on blockchain networks like Ethereum or Polygon, you need native tokens (ETH for Ethereum and MATIC for Polygon) for gas fees. This can be inconvenient since you’d have to acquire different tokens for each blockchain you interact with.
The proposed solution is similar to how Visa’s network lets you pay in local currency when traveling abroad without needing to exchange your money first. The Paymaster contract can act as a currency converter. It collects digital currencies from users, converts them into the native tokens of the blockchain they’re using, and then pays the gas fees for them.
This happens at the time of the transaction, so users only have to pay when making a transaction, making it easier to manage their funds.
Account Abstraction introduces a new level of programmability to user accounts. By merging Contract Accounts and EOAs, developers have greater flexibility in designing and implementing smart contracts. This increased programmability enables the creation of complex decentralized applications (dApps) and opens up new possibilities for innovation within the crypto space.
Improved User Experience
By eliminating unnecessary logic and enhancing transaction efficiency, Account Abstraction dramatically improves the user experience. Users can enjoy faster transaction confirmations, reduced fees, and seamless interaction with decentralized applications. This enhanced user experience is crucial in driving mainstream adoption of cryptocurrencies, as it addresses some of the key pain points associated with traditional financial systems.
Expanded Use Cases
Account Abstraction paves the way for a broader range of use cases within the crypto industry. Merging Contract Accounts and EOAs allows for a more versatile approach to developing blockchain applications.
This versatility unlocks the potential for applications ranging from decentralized finance (DeFi) to supply chain management, identity verification, gaming, and more. As a result, Account Abstraction contributes to the growth and maturation of the entire cryptocurrency ecosystem.
Account Abstraction on Fuse
Released with our Fuse 2.0 Roadmap unveiling, ERC-4337 aims to decentralize our middleware. This aligns perfectly with our mission to maintain interoperability with larger blockchain ecosystems. This move has facilitated collaborations with Power Validators and robust ecosystem ERC-4337 partners leading and solidifying Fuse as a tech powerhouse.
We are forging robust relationships with Web3 companies like Etherspot, SupraOracles, and many more to simplify developing user-friendly apps on Fuse. While we provide the underlying infrastructure, our partners will service developers with the tools they need to build atop the Fuse blockchain.
Check the Midyear review article for complete information and a timeline plan to roll out Account Abstraction on Fuse.
Account Abstraction represents a monumental leap forward for the crypto industry. By unifying Contract Accounts and EOAs, while eliminating unnecessary logic, this transformative concept enhances the programmability of user accounts and unlocks new possibilities for innovation.
With improved transaction efficiency, a seamless user experience, and expanded use cases, Account Abstraction on Fuse can drive mainstream adoption of cryptocurrencies and revolutionize how we interact with digital assets. Embracing this groundbreaking development is crucial for individuals and businesses seeking to stay at the forefront of the crypto revolution.