On March 1st, 2023, the Ethereum Foundation successfully implemented the ERC-4337 account abstraction. This development sparked excitement around the potential of smart contract wallets. However, established providers were quick to remind everyone that similar solutions had already been in existence.
What sets them apart? How will blockchain wallet development change? And what is a smart contract wallet? In this article, we’ll answer these and many other questions. Let’s dive in!
What are Smart Contract Wallets?
A smart contract wallet is a device or app that empowers users to have greater control and customization over managing their self-custody crypto assets. It leverages a concept called ERC-4337 account abstraction.
ERC-4337 is an extension of EIP-4337. It transforms wallets into smart contracts, providing improved security and functionality compared to ERC20 token standards. It offers advantages over External Owned Accounts (EOAs), poses risks, and can be easily lost.
By abstracting these functions into a smart contract, developers can introduce new features and levers that give users a choose-your-own-adventure approach to self-custody.
A cryptocurrency smart contract wallet allows users to define their rules and logic for managing their digital assets. They can customize how transactions are approved, automate specific actions based on predefined conditions, delegate control to other addresses or smart contracts, and introduce additional functionality like greater privacy in identity management or customizable recovery options.
The Ethereum Account Model Explained
Before we delve into how ERC-4337 works, let’s briefly review the Ethereum account model.
The Ethereum network operates on an account model. It differs from the UTXO model used by Bitcoin and some other cryptocurrencies. Ethereum has two types of accounts: EOAs and smart contract accounts.
Both types have unique public addresses to send, receive, and hold ETH. However, they differ in how they are controlled and used. EOAs are controlled directly by users through a private key, allowing them to validate, execute, and pay transaction fees.
In turn, smart contract accounts are controlled by the embedded logic within the smart contract. They rely on EOAs to deploy smart contracts and initiate smart contract actions.
This model has limitations that impact wallet providers and users. Wallet providers often only offer users a seed phrase as a backup option, which can be vulnerable to lose or theft. It makes it challenging for users to manage their digital assets securely.
Interaction with smart contracts involves multiple steps and can be costly regarding gas fees. Each transaction requires a signature, which increases the risk of network congestion, smart contract errors, and technical issues.
Main Features of Smart Contract Wallet
A smart contract wallet can incorporate multi-signature functionality. It means multiple parties have to approve a transaction before its execution. This feature enhances security by reducing the risk of unauthorized access or malicious activity. The multi-sig wallet owner can specify the required number of signatures and the specific addresses or entities that must provide approval.
Customizable transaction controls
Smart contract wallets allow users to define custom rules and conditions for transaction approvals. For example, a user can set limits on transaction amounts, specify time-based restrictions, or define specific requirements that must be met to execute transactions. These controls offer high flexibility and allow users to tailor the wallet’s behavior to their needs.
Advanced security standards
Smart contract wallets can incorporate advanced security measures to protect users’ digital assets. These measures may include features such as time locks, which delay the execution of a transaction for a specified period, giving users a chance to cancel it if any suspicious activity is detected. Additionally, smart contract wallets can integrate with external security services or oracles to verify and validate transactions, further enhancing the security of asset management.
Different Approaches to Account Abstraction
The EOA and relayer approach
These smart contract wallets use EOA (External Owned Accounts) as their foundation. They employ a transaction relay service to bundle and handle transactions on behalf of the smart contract. Initially, users must set up the wallet using EOA per the Ethereum Virtual Machine (EVM) logic. Users can add customized authorization processes to enhance security and control.
Benefits of EOA wallet:
- Enhanced security through multi-sig confirmation method;
- Flexibility and convenience with the time-lock confirmation method;
- Increased security and flexibility with threshold signatures;
- The customizable account recovery process;
- Efficient execution of multiple transactions through a transaction relay service.
Limitations of the EOA model:
- Dependency on third-party relayers;
- Potential centralization risks;
- Lack of transparency in the operation of relayers;
- Challenges in evaluating the reliability and security of different relayers.
Layer-2 native account abstraction
Smart contract wallet platforms, like Argent, have joined forces with ZK-Era to introduce account abstraction via a layer-2 solution. This partnership eliminates the necessity for third-party relayers and removes the burden of users setting up an EOA.
ZK-Era’s native abstraction leverages zero-knowledge proof rollups to combine a group of transactions originating from an Argent smart contract account. These bundled transactions are settled using the ZK-Era smart contract directly on the Ethereum blockchain. This collaborative approach ensures enhanced efficiency and security in transaction processing for Argent’s smart contract wallet users. Now, let’s briefly overview the benefits and risks of layer-2 abstraction.
- No need for EOA during the initial setup and authorization;
- Enhanced scalability;
- Reduced complexity;
- Improved security;
- Increased efficiency.
- Dependency on layer-2 smart contract;
- Lack of transparency;
- Complexity for audits and upgrades.
How are Smart Accounts (ERC-4337) Different?
ERC-4337 is an innovative Ethereum standard that brings the concept of account abstraction to compatible blockchains. Smart accounts, a distinct departure from conventional smart contract wallets, are the key highlight of this standard.
Account abstraction entails the separation of an account from the underlying blockchain structure without any modifications. Smart accounts are a specific type of contract account created using this account abstraction mechanism.
Unlike traditional smart contract wallets, which necessitate a separate account with a private key (known as EOA) to initiate transactions and incur additional gas fees, smart accounts eliminate the need for EOAs. Instead, they leverage a UserOperation object, which encapsulates the transaction purpose and relevant verification data.
These UserOperations are placed in an alternative mempool, a dedicated waiting area for pending transactions associated with smart accounts. Nodes are known as bundlers collect and bundle these transactions, paying the transaction fees to include the UserOperations in a block.
Similar to miners or validators, bundlers follow a logic to prioritize transactions based on associated fees. They earn combined fees from the bundled UserOperations, ensuring an efficient and incentivized transaction processing mechanism.
Use Cases for Smart Contract Wallets and Smart Accounts
Smart accounts enable the creation of recoverable crypto wallets without relying on private keys or seed phrases, enhancing wallet security.
Auto-creation of wallets for app users
Companies can effortlessly generate non-custodial wallets for users upon sign-up. It eliminates the necessity to manage private keys or remember seed phrases.
Smart accounts allow the setup of team wallets with multiple users and tiered permissions, facilitating efficient collaboration and controlled access to funds.
Smart accounts provide flexibility for customizing transactions, such as setting transaction limits, specifying approval durations, blocking certain transactions, and more.
With ERC-4337, dApp developers can pay gas fees in different tokens on behalf of their users. It enables cost-saving options for activities like free NFT mints or airdrops.
Popular Smart Contract Wallets
Castle is an innovative smart contract wallet for NFT collectors. Powered by multi-signature technology, this platform empowers users to create and manage vaults effortlessly. It offers a secure, shared wallet that enables the pooling of funds, seamless NFT purchases, efficient management of collective treasuries, and fair distribution of profits.
- Native integrations with OpenSea, Gem.xyz and Genie.xyz;
- Buy NFTs and list single or many NFTs in one transaction;
- Track portfolio data.
Argent is an Ethereum-based wallet that prioritizes enhanced security measures. Currently, the wallet exclusively supports Ethereum coins, enabling seamless management of ETH and ERC-20 tokens. Simplicity and user-friendly approach set Argent apart in different solutions.
- High security;
- Interoperability with hard wallets;
- Quick transfers.
Soul Wallet is a groundbreaking smart contract wallet. By harnessing the power of the ERC-4337 standard and prioritizing Layer 2 scaling solutions, Soul Wallet stands out as a leading solution in meeting the evolving demands of an expanding decentralized ecosystem.
- Enhanced security measures;
- Simplified wallet setup;
- Decentralized ecosystem support.
Safe (formerly Gnosis Safe)
Safe is a recognized multi-sig smart contract wallet developed on the Ethereum blockchain. With its modular architecture, Safe allows for an effortless integration with various dApps, expanding its functionality and usability.
- Multi-sig security;
- Modular design;
- DeFi integration.
Braavos is a smart contract wallet with a user-friendly and secure cryptocurrency entry point. It caters to all your DeFi requirements, offering a comprehensive suite of features. Braavos ensures a seamless and consistent user experience across platforms, whether accessed through mobile devices or web browsers.
- User-friendly experience;
- Integrated NFT gallery;
- Multiple ways to buy, sell or transfer tokens.
Smart accounts revolutionize smart contract wallets by establishing a standardized approach to account abstraction across various EVMs. This breakthrough eliminates the reliance on EOAs and seed phrases for end-users, significantly enhancing the accessibility of crypto asset management.
By removing these barriers, smart contract wallets empower many users to conveniently access and control their digital assets. While EOAs will still have their place, smart contract wallets are poised to become the preferred option in the web3 ecosystem, particularly for newcomers joining the crypto world.
What chains support account abstraction or smart accounts?
Smart accounts, built on the Ethereum standard ERC-4337, are now accessible on various EVM-compatible Layer 1 and Layer 2 chains such as Ethereum, Polygon, Optimism, and more.
How do bundlers make money in the context of smart contract wallets?
Every transaction initiated from a smart account incurs fees the bundler earns when they send the transaction to the blockchain. Bundlers receive compensation for processing and forwarding the transaction to the blockchain.