What is Account Abstraction? Real Use Case of ERC-6551 Token Standard
Account Abstraction, popularized by the ERC-4337 token standard, introduces the innovative idea of utilizing a dedicated smart contract as a standalone wallet managed by an ordinary address.
Initially, Ethereum Account Abstraction (or AA) was designed to facilitate transactions without the end user paying gas fees directly, utilizing entities called paymasters to cover these costs. However, over time developers discovered additional applications for Account Abstraction, such as the ability to free up liquidity for assets that are locked due to vesting periods.
At Dexola, we have developed a unique technical solution based on this concept. Our innovative idea has become particularly advantageous for Meentle — a Web3 company specializing in tradable Smart Wallets that unlock access to previously locked liquidity.
In this piece, we want to share real-world case describing the proper utilization of Account Abstraction and how it can be deployed with ERC-6551 Token Standard.
The Basics of ERC-4337 Account Abstraction
Every Ethereum address, including those you might have in your MetaMask wallet, is what’s known as an Externally Owned Account (EOA). For any operation, like sending tokens or engaging with a smart contract, the owner has to sign the operation with a private key that corresponds to this EOA.
Changing the owner of an EOA is impossible. This means you cannot securely transfer your crypto wallet to someone else. In other words, you cannot detach the account from its current address and link it to a new one. For the same reason, recovering access in case the private key is lost or compromised is impossible.
Smart Contracts are self-executing programs that automatically run when certain conditions are met. However, they spring into action only when an EOA initiates a function that the contract is set up to respond to. For example, if Alice wants to transfer USDT, she needs to call the “send” function of the USDT smart contract, input Bob’s address and the amount, and sign off with her EOA’s private key. Unlike EOAs, smart contracts don’t have private keys; instead, they are managed by an “admin” EOA that has the authority to execute restricted functions, such as freezing transactions in the USDT contract.
Up until the introduction of ERC-4337, the Ethereum ecosystem primarily recognized these two types of accounts. ERC-4337 has added a third category to the mix: Smart Contract Accounts (SCAs).
Smart Contract Accounts are ingeniously designed contracts that replicate EOAs’ functionality but replace the traditional private key with a flexible, customizable verification process. This type of account broadens the scope of how assets can be stored and managed on the blockchain, enabling everything from the recovery of compromised private keys to the fluid exchange of assets that are typically not liquid, like vested tokens.
The Advantages of Account Abstraction and Smart Contract Accounts
The primary advantage of Smart Contract Accounts (SCAs) lies in their enhanced security. For instance, Smart Contract Accounts (SCAs) can be customized to operate in a manner similar to multi-signature wallets. This means transactions are executed only after receiving authorization from a specified number of private keys, which can be flexibly set according to the wallet’s configuration. For example, it could be 2 out of 5, 8 out of 10, or all 11 out of 11 keys, depending on the multi-signature settings chosen.
Even if a single key is compromised, the attacker cannot gain control over the Smart Contract Account, keeping the assets secure. The ability to recover control with the remaining keys if one is lost is another benefit of this multi-signature approach.
Another key security feature is the ability to create a whitelist of accounts to which the SCA can send funds. By limiting transfers to only pre-approved addresses, such as those belonging to the owner on reputable centralized exchanges or to other EOAs, the risk of unauthorized fund withdrawals is minimized, even if an attacker gains access to all associated keys. ERC-4337 also allows for additional security measures, such as freezing the account through a specific EOA or setting spending limits.
A unique characteristic of Smart Contract Accounts is their capacity to execute transactions without traditional private key operations, utilizing biometric verification on iOS and Android devices instead.
The concept of abstraction serves as another considerable value. SCA owners are not required to manage the keys for signing transactions directly; this responsibility can be transferred to a third party. This entity, often referred to as a paymaster, manages the transaction process off-chain, including the execution of contracts and covering gas fees, either by fully sponsoring them or deducting the cost from the SCA’s balance in ETH or other tokens.
However, the main drawback of SCAs and Account Abstraction is the complexity of the technology, which demands proficiency in Web3 development for the deployment and management of an ERC-4337 contract or the utilization of specific wallets and tools.
The Dilemma of Vested Assets
Many new ventures begin without issuing their tokens, focusing first on building a strong user base and community. This strategy ensures a robust market demand and a clear use case when the tokens are finally launched, often rewarding the most engaged users and contributors with bonuses.
However, the distribution of tokens, especially in large quantities to airdrop hunters and partners, can lead to potential market volatility for new assets. To counter this, project founders often implement vesting schedules that lock tokens for a certain period, preventing immediate sales or transfers. While this approach stabilizes the market, it can also restrict token holders, particularly in unforeseen circumstances, leaving them with valuable assets they cannot monetize until the vesting period expires.
The core issue with vested tokens lies in their storage in standard Externally Owned Accounts (EOAs), or regular Ethereum wallets, which complicates the possibility of executing over-the-counter trades without risking the entire account’s security.
Creating individual wallets for each vested token poses challenges, mainly due to the risks associated with transferring private keys in off-chain transactions. This method lacks the blockchain’s inherent programmability and security, raising concerns about trust between buyers and sellers.
How Dexola Mastered the Problem with Account Abstraction and ERC-6551 Token Standard
Dexola has innovated a solution to these challenges by employing Smart Contract Accounts (SCAs) integrated with NFTs. Our approach involves creating an SCA wallet linked to an NFT that operates similarly to the ERC-6551 standard, serving as an authorization token. This means the owner of the NFT, whether an EOA or another SCA, controls the custom SCA linked to it.
Our method utilizes a standard to create NFTs that effectively “own” these accounts. The standard was designed to solve the implicit problem of NFTs — they can’t act as agents or associate with other on-chain assets. This limitation makes it difficult to represent many real-world non-fungible assets as NFTs, for instance, a character of the video game that accumulates objects and abilities or an investment portfolio composed of multiple fungible assets.
Discover all the potential benefits of ERC-6551 in our detailed review — What is ERC-6551 Token Standard?
At Dexola, we realized that this technique could be evolved into a versatile tool, offering a novel approach to managing vested tokens securely and flexibly. ERC-6551 enriches the existing ERC-721 standard by enabling the NFT owner to deploy a Smart Contract Account with a specific address for the NFT. By integrating ERC-721 with ERC-4337, we harness the strengths of both standards. We start by minting a standard ERC-721 NFT, then deploying a Smart Contract Account linked to it using ERC-4337 standard— and that’s how the ERC-6551 is made.
This innovative system allows users to receive vested tokens directly to their Smart Contract Account, bypassing traditional wallet addresses. When the vesting period ends, users can unvest their tokens, transferring them from the SCA for regular use or sale. Should users wish to sell their tokens before the vesting period ends, they can trade the NFT controlling the SCA on any NFT marketplace, such as Opensea, Blur, or Rarible. This method ensures secure, on-chain transactions without the need for private keys, eliminating the need for trust between parties.
Moreover, these transactions occur over-the-counter (OTC), not impacting the asset’s market price, liquidity, or scarcity. This ensures that projects can permit such practices without risking their market stability.
Dexola’s ERC-4337 Implementation From the User Perspective
Many Web3 innovations need direct changes to the code or project design to add new features. For instance, the traditional nested token standard requires some modifications of ERC-20 or ERC-721 contracts.
However, forking an ERC-721 contract to add functionalities is straightforward compared to convincing major platforms like MetaMask, Opensea, or Uniswap to embrace and integrate these new standards into their offerings.
Dexola’s approach based on ERC-6551 token standard eliminates the need for such extensive modifications. Our implementation of ERC-4337 functions seamlessly with existing accounts, enabling users to easily create wallets that accept various tokens (ERC-20, ERC-721, etc.), facilitating straightforward sending, receiving, and trading, including managing the account via a single NFT.
Meentle’s Use Case of Account Abstraction enhanced with NFTs
Meentle is a Web3 company specializing in tradable Smart Wallets that unlock access to previously locked liquidity. With Dexola as its technical partner, Meentle has been able to implement this feature effectively. The idea was to adopt Account Abstraction technology for the trade of vested tokens.
Here’s a simple breakdown of the user experience on the Meentle platform:
- Users sign up in the usual manner and click the “Mint Smart Wallet” button.
- The platform generates a Smart Wallet, essentially an NFT equipped with Smart Contract Wallet capabilities.
- Users submit the Smart Wallet’s address to their chosen project to receive tokens.
- The project deposits vested cryptocurrency into the user’s Smart Wallet.
- When the vesting period expires, users can click a “Unvest Tokens” button and receive their unblocked tokens in their Smart Wallet.
- Once the tokens are accessible, users can transfer them to their MetaMask wallet.
However, the most advanced part of the technical solution finds its application when the investor is unable to wait until the vesting period ends. In this case, they have the option to sell their NFT, with the tokens still locked, on any NFT marketplace.
In essence, this arrangement gives users the flexibility to either retain their vested tokens until they decide to unvest them or to sell the NFT — and the tokens it governs — on any NFT marketplace if they seek immediate access to their funds.
This innovative framework not only simplifies the trading of vested tokens but also aligns with the interests of project developers and their communities, promoting a fair, secure, and user-friendly ecosystem.
Key Takeaways
Vesting is a widely adopted strategy in Web3 projects to stabilize token prices post-launch, preventing market dips due to early investor sell-offs. It ensures that vested tokens remain non-transferable until the end of the vesting period, maintaining security without the need to sell the associated wallet.
Dexola’s approach introduces a Smart Contract Account (SCA) tied to an NFT, enabling investors to receive vested tokens within this SCA and allowing them to trade the NFT in secondary markets.
Our method preserves the integrity of the project’s tokenomics by:
- Keeping the circulation of tokens unchanged, as it neither releases vested tokens prematurely nor alters the original vesting schedule.
- Maintaining stable token prices on exchanges (CEXes and DEXes) since it doesn’t impact the supply and demand dynamics.
- Providing vested token holders with a flexible option to monetize their assets if necessary.
Our solution seamlessly integrates with existing marketplaces and can also evolve into a token vesting platform tailor-made for SCA and NFT technologies.