Kernel Ventures: Decrypting the Changes Brought By ERC4337 in Ethereum, What Opportunities Can We See?

Intermediate12/27/2023, 5:29:22 PM
This article describes the principles of ERC4337 wallets and their applications in areas such as intent, DeFi, and blockchain games. It also compares ERC4337 wallets with EOA, MPC, AA wallets, and points out the shortcomings of ERC4337 wallets.

Currently, there are two main types of wallets on Ethereum: EOA (Externally Owned Account) and SCW (Smart Contract Wallet). However, each of them faces issues with low execution efficiency and the inability to initiate transactions independently. After multiple explorations, Ethereum developers have found the optimal solution at this stage, which is the implementation of account abstraction through ERC4337.

  1. The ERC4337 wallet implements the separation of private keys and account entities through Bundler, enabling batch processing of transactions and the ability to initiate transactions proactively.

  2. Additionally, the built-in code of the smart contract wallet allows for automated transaction processing based on external information.

  3. However, this proposal still faces challenges from other solutions such as protocol-level account abstraction and native account abstraction wallets. Furthermore, the ERC4337 entry contract was only launched on the Ethereum mainnet in March of this year, so many issues are yet to be explored, and there is significant uncertainty regarding the final solution. Lastly, due to the single-point nature of the Entry Point contract, ERC4337 is heavily restricted in terms of upgrades.

  4. To address these issues, the developers of ERC4337 have also supplemented the EIP proposal to optimize it without modifying the entry contract. For the case of incompatibility between Dapps in the EOA era and ERC4337, supporters of ERC4337 have independently created numerous wallet projects and Dapp projects focused on the interaction with ERC4337 wallets. These projects provide various interactions that EOA accounts can enjoy in the original DeFi and SocialFi ecosystems, while also improving operability.

Overall, ERC4337 remains the optimal solution for implementing account abstraction at the current stage. Through the compensatory contract of Paymaster, it reduces the barriers for users to participate in Defi. Project owners can offer 0gas or low gas transactions to attract more user participation. By bundling and batch processing transactions, it greatly improves the user experience in Socialfi and Gamefi, providing participants in Socialfi and Gamefi with more diverse interaction options.

1. Background

The trade-off between decentralization and convenience has always been a major challenge for crypto participants. Embracing decentralization requires sacrificing the convenience of web2 operations, replacing simple button clicks with processes like managing mnemonic phrases, signing with private keys, and setting nonce values. On the other hand, pursuing convenience exposes the importance of account ownership, as witnessed by the collapses of centralized institutions like FTX and JPEX. To address this issue, Ethereum developers have made various attempts to make web3 accounts as convenient as web2 accounts through the concept of account abstraction. Among these attempts, the ERC4337 standard has gained significant consensus among developers, as highlighted by Ethereum founder Vitalik Buterin at this year’s ETHCC conference.

2. ERC4337 Account Abstraction Principle

ERC4337 involves three objects, UserOperation, Bundler, and on-chain contracts, in the process of separating control and ownership from the account entity. UserOperation primarily includes user input, Bundler completes the packaging and triggering of transactions, and the on-chain contracts consist of Entry Point, Paymaster Contract, and Wallet Contract, which mainly implement complex validation and execution logic.

  1. UserOperation: UserOperation contains all the information related to the user’s submitted transactions. The following diagram shows the parameters that need to be inputted in UserOperation, as well as the input parameters required for a regular EOA account to initiate a transaction.

Image source:Kernel Ventures

The main difference between ERC4337 wallets and EOA wallets is that in ERC4337 wallets, the sender can be specified, whereas in EOA wallets, the ECDSA recovery address is the default signer. As a result, ERC4337 wallets achieve a separation of account ownership and control. Next, the paymasterAndData parameter has been added in ERC4337 to set the specific information of the paymaster contract. We will explain the specific function of the paymaster contract later on.

  1. Bundler:Bundler is essentially an EOA (Externally Owned Account) that verifies the code logic related to the Wallet Contract in the calldata of the incoming UserOperation. If the calldata contains codes like TIMESTAMP, BLOCKHASH, or accesses beyond the wallet storage, Bundler rejects the UserOperation to prevent a malicious simulation attack. Once verified, Bundler packages multiple UserOperations and broadcasts them to the public or private mempool after validation. Additionally, since smart contracts on Ethereum must be triggered by an EOA account, Bundler interacts with the Entry Point Contract to execute the UserOperations. In this process, Bundler can benefit from the difference between the maximum priority fee and the actual gas, as well as the MEV (Miner Extractable Value) gains from sorted bundled transactions. Therefore, the rise of ERC4337 may introduce a new form of mining for Bundlers in Ethereum.
  2. Entry Point:The Entry Point is a smart contract used to verify and execute the contents of the UserOperation. It is triggered by the Bundler and achieves the separation of Bundler and smart contract wallet. In ERC4337, each Wallet Contract is assigned a special authentication to the Entry Point contract address, giving it special permissions during the interaction process. When the Bundler calls the Entry Point contract, it triggers the handleOps function in the contract. This function first checks if the wallet has enough gas compensation for the Bundler, and if not, the transaction is rolled back. In addition, the smart contract wallet can choose to have the gas paid by the Paymaster contract, which we will mention in the subsequent content. If all the verifications pass, the _executeUserOp internal function in the contract will gradually execute the contents of the UserOperation’s calldata, calling the corresponding function in the smart contract wallet. After everything is done, the remaining gas is compensated to the Bundler.
  3. Wallet Contract: The Wallet Contract is essentially a smart contract wallet that contains a multiCall function, which allows for the batch processing of data from UserOperation’s calldata, significantly reducing gas consumption. However, unlike the execution process of a regular smart contract, in the multiCall function, the content of UserOperation is not executed directly but divided into the validateOp and executeOp processes. If the content of UserOperation fails to pass the validateOp, the execution is automatically terminated, and all gas consumption generated during the entire process is borne by the Bundler, while once the executeOp function is reached, regardless of the reason for the termination of the contract execution, the gas consumption is borne by the Wallet Contract. This mechanism effectively ensures that the Bundler can obtain fair profits through its packaging behavior and prevents malicious Bundlers from launching DoS attacks that would deplete the ETH stored in the Wallet Contract.
  4. Paymaster:Paymaster is not a mandatory component in ERC4337. When the paymasterAndData parameter in UserOperation is not empty, the designated Paymaster contract will pay the gas on behalf of the Bundler. During this process, the Bundler triggers the validatePaymasterOp function in the Paymaster contract, which checks if the Paymaster has sufficient balance to support gas payment and pays the gas for the specified UserOperation based on user-defined requirements. It is worth noting that ERC4337 does not specify a standard for prioritizing the use of Paymasters. Bundlers need to select the optimal Paymaster and eliminate lower-quality Paymasters based on off-chain records of past gas payments. This competitive process among Paymasters helps improve network efficiency.
  5. Signature Aggregator:Since ERC4337 supports non-ECDSA signature algorithms, we first classify UserOperations that use different signature algorithms. Then, Bundler generates an aggregated signature through the Signature Aggregator, which can verify all the transactions included in it with a single verification process. This process greatly reduces the gas fee consumption.

Overall, in this process, the user first sends a UserOperation to Bundler with user-defined parameters. If the paymasterAndData parameter is present, the paymaster contract will be called to pay for the gas fee. If the initCode parameter is present, the user will create a new smart contract wallet based on the code logic inside it. Finally, in order to reduce the gas consumption during the verification process, ERC4337 adopts the method of batch packing transactions. The Signature Aggregator is used to pack the same type of UserOperations into an aggregate signature for verification only once. After both the off-chain Bundler’s simulated verification and the on-chain actual verification pass, the smart contract wallet successfully executes the user’s custom functionality in the UserOperation and returns the excess gas to Bundler as a reward.

Image source: Kernel Ventures

Compared to using an EOA (Externally Owned Account) to initiate a transaction, it is much simpler. With an EOA, you only need to sign the transaction data with the account’s private key and broadcast it to the network. The broadcasted transaction will be validated by nodes, and then selected by the POS mechanism to be recorded on the blockchain by the chosen node with accounting rights. This process is straightforward, with minimal gas consumption and no intermediaries like Bundler and Entry Point contracts. It also offers security solely based on the ECDSA encryption algorithm, without the inherent security risks of complex contract logic. However, in this process, the private key and account control are tightly coupled and cannot be changed. Each transaction needs to be individually signed and verified, without the ability for automated processing.

Image source: Kernel Ventures

In summary, ERC4337 achieves the separation of private keys and account ownership, reduces gas consumption in complex transaction processes through batch processing, eliminates the Ethereum balance access threshold with the use of paymaster contracts, and enables various signing methods and customized account functionality through smart contract wallets. These improvements greatly enhance the convenience and versatility of web3 accounts.

3. Ethereum Wallet Types and Their Pros and Cons

  1. EOA (Externally Owned Account): An Ethereum EOA account is controlled by a private key, which is generated from a 12-word mnemonic phrase. While EOA accounts have the autonomy to initiate transactions, it requires users to securely store a 64-character hexadecimal string or a 12-word mnemonic phrase, which can be inconvenient. Additionally, transactions involving identity verification with EOA accounts require individual signing, which is cumbersome as each confirmation involves rewriting the state and confirming permission changes. Lastly, using an EOA account to initiate transactions requires pre-depositing Ethereum into the account, which increases the usability threshold of the wallet.
  2. SCW (Smart Contract Wallet): SCW wallets have significantly improved convenience and automation compared to EOA wallets. Through the built-in code of smart contracts, transactions can be bundled and complex operations can be automated according to user intentions. However, SCW wallets have lower permissions compared to EOA wallets and cannot autonomously initiate transactions. Transaction initiation with SCW wallets requires an EOA account to trigger the transaction.
  3. MPC (Multi-Party Computation Wallet): MPC wallets disperse the private key to multiple entities, who collectively safeguard it and concatenate it when signing is required. Although similar to multi-signature wallets, there are fundamental differences between the two. Firstly, MPC wallets have only one private key that is fragmented and safeguarded. Secondly, multi-signature verification is completely done through on-chain smart contracts, whereas threshold setting and signature generation in MPC wallets occur off-chain. MPC wallets effectively eliminate single points of failure and the risk of losing account ownership due to the loss of a private key, but the off-chain signature generation process is centralized and requires strict audit mechanisms to prevent possible malicious behavior. Additionally, most MPC wallets are currently customized and not open-source, making it difficult to modularly embed them in the development process and increasing development costs. It is important to note that MPC wallets and AA (Account Abstraction) wallets mentioned later do not compete with each other. MPC wallets address the pain point of private key storage, while AA wallets address the flexibility of the transaction process, and both can be used in combination in future development.
  4. AA (Account Abstraction): The concept of account abstraction can be traced back to EIP-86 proposed in 2017, which suggested turning all accounts into contracts and allowing users to define their own security models. However, this proposal involved changes to the Ethereum consensus layer and posed potential security issues, resulting in the indefinite postponement of EIP-86 and subsequent proposals involving changes to the Ethereum consensus or protocol layer. It wasn’t until the introduction of EIP-2938 that significant changes to the Ethereum underlying layer were greatly reduced, and the security concerns were addressed by setting memory pool rules for nodes. The overall approach to account abstraction shifted to how to achieve it by only modifying the smart contract layer. In 2021, ERC4337 was proposed, which fully achieved account abstraction by making changes only at the smart contract layer. In March of this year, the Entry Point contract of ERC4337 was deployed on the Ethereum network, marking the era of account abstraction with ERC4337.

4. Challenges and Responses

4.1 Undecided Account Abstraction Standard

  1. Consensus Layer Account Abstraction:First, for the account abstraction on Layer1 of Ethereum, ERC4337 is not the only solution. The dominance of EIP2938-led consensus layer account abstraction has been temporarily set aside rather than completely rejected. Perhaps from the current perspective, the benefits brought by account abstraction cannot drive developers to make changes at the Ethereum core level. However, as ERC4337-style account abstraction reaches its limits, people will seek better user experiences. At that time, consensus layer account abstraction solutions that enhance contract account permissions to allow them to initiate transactions autonomously, eliminate Bundler, and reduce transaction costs and complexity may once again come into consideration.
  2. Proposed EIPs to be confirmed: Next, the implementation of ERC4337 has been less than a year, and issues are continuously being discovered and improved. Since it is not possible to modify the Entry Point, the temporarily proposed optimization EIPs for ERC4337 mostly involve Bundler and opcode optimizations. For example, EIP-1589 introduces an endorser contract to prevent MEV attacks, and EIP-3974 adds an opcode that allows EOA account control to be delegated to a smart contract account, which involves changes at the consensus layer. Whether these proposals can be approved still depends on discussions within the Ethereum development community.
  3. Layer2 Native Account Abstraction: Finally, there are various native account abstraction wallets on Layer2, such as Starknet and Zksync Era. In Starknet, a different ECDSA signature scheme is used, significantly reducing the cost of signing and verifying, thus greatly reducing gas consumption. At the same time, in Starknet, there are only contract accounts, which are considered top-level accounts by default and can directly initiate transactions without the need for complex contract layer operations, providing developers with a more flexible and rich application design environment.

In summary, to abstract accounts on Ethereum, while ERC4337 is the most widely recognized option, it is not the only one.

4.2 ERC4337 Self-deficiencies

  1. Higher fixed gas cost: The gas consumption for basic operations in the ERC4337 wallet is 42000 gas, which is twice that of a regular EOA account. The specific reasons are as follows:

    Image Source: Kernel Ventures
    It can be seen that the introduction of smart contracts has resulted in significant gas consumption during the execution of contract businesses (unpacking UserOperation, performing conditional validations, on-chain hashing, etc.), as well as triggering events and publishing logs on the Ethereum network. At the same time, the transaction batching proposed in ERC4337 to reduce transaction costs has proven to be impractical in actual transactions. Most users do not need to pack a large number of transactions in a single call, and the advantage of ERC4337 batch transactions can only be utilized in rare scenarios such as project airdrops. Additionally, if the UserOperation, which was originally intended to distribute transaction costs, fails to execute on the chain, it can result in higher losses for wallet accounts or Bundlers.

  2. High upgrade cost: In the Entry Point smart contract, the entryPoint() function can be used to return a parameter that complies with the IEntryPoint interface. In the Wallet Contract, this parameter can be used to determine whether external transactions come from function calls in the entryPoint contract. However, this requires hardcoding the address of the EntryPoint in each generated smart contract account. If an upgrade to the EntryPoint contract is needed, it would require the agreement of all smart contract account holders. When ERC4337 is widely adopted, the difficulty of making this change will be comparable to changing the consensus layer. Therefore, the deployment of ERC4337 must be done with great caution and undergo thorough security audits. Additionally, optimizing performance in the future will also be a challenging task.

  3. Contract security issue: In the original EOA accounts, the transaction process is simple, and the security of transactions is ensured through cryptography and the consensus mechanism of the underlying blockchain. Cryptographic algorithms and distributed system consensus mechanisms have been extensively tested and verified by the academic community, making the likelihood of vulnerabilities very low. However, the ERC4337 wallet replaces many operations that were previously verified through blockchain consensus mechanisms with contract function judgments. This places extremely high demands on the security of the contracts themselves, and as transaction logic becomes more complex, the security risks increase sharply.

4.3 Cost of Upgrading to ERC4337

  1. Traditional wallet giants are cautious:
    According to ChainCatcher news, Alex Jupiter, the Product Manager of MetaMask, stated in an interview with Decrypt that although various technologies such as account abstraction and EOA were mentioned multiple times during EthCC, MetaMask will carefully adopt these technologies.
    As a traditional wallet provider, MetaMask facilitates the creation of EOA accounts for users and charges fees by offering decentralized swap services. Most established wallet giants, which have already established stable profit models, are reluctant to take risks and make changes. Currently, they are also adopting a cautious approach towards account abstraction, actively exploring but maintaining a cautious attitude towards implementation.

  2. The cost of updating Dapps
    Existing Dapps on Ethereum, including Opensea, Uniswap, MetaMask Swap, etc., all default to serving EOA accounts. In order to make these Dapps fully compatible with ERC4337 wallets, changes need to be made to the Dapp’s interaction and auditing mechanisms, as well as the token staking mechanism. To achieve this change, the smart contract code of mainstream Dapps needs to be modified, which may introduce security risks and incur significant update costs. Additionally, considering the resistance to contract accounts caused by previous Tornado contracts, the workload of this update will be even greater.

4.4 ERC4337 and Cross-Chain

In cross-chain bridges between Ethereum and Layer2 networks, it is common for the receiving network to expect the payment to be sent from the same address as the one on the sending network. This is not an issue with traditional EOA (Externally Owned Account) wallets, as they can control both addresses with the same private key through signing. However, in ERC4337 wallets, the address initiating the transfer is a contract address and not controlled by a private key, which means that setting the receiving address to be the same as the sending network is not possible. As a result, there is almost always an incompatibility issue between ERC4337 wallets and most cross-chain bridges between Ethereum Layer1 and Layer2 networks.

4.5 Improvements to ERC4337

  1. EIP Proposal Improvements: Although the ERC4337 standard itself is difficult to modify, we can supplement it by proposing new EIPs. For example, EIP5189, proposed in June 2022, introduces the endoser contract to reduce the risks in the Bundler selection process and further prevent malicious attacks by MEV bots. In addition, there are numerous pending proposals related to 4337, such as EIP3074 and EIP5003, awaiting review.
  2. Supplement to Cross-Chain Protocol: The fundamental solution to the cross-chain problem between Ethereum Layer1 and Layer2 is to start from the bottom of the cross-chain bridge. Users can set their own receiving addresses on the receiving network, but this improvement comes with a high cost, involving the redeployment of the cross-chain bridge and the security issues of new contracts. Currently, the most ideal solution is to set a trusted third-party EOA account as an intermediary between the ERC4337 wallet and the cross-chain bridge. This intermediary needs to hold a large amount of ETH or Layer2 tokens as collateral, and each time it helps execute a cross-chain transaction, it must stake excess assets. After the smart contract wallet receiving the transfer returns the staked tokens, it provides a certain reward.
  3. ERC4337’s Self-built Dapps: Since the deployment of the entry point contract in March this year, a large number of wallet projects based on ERC4337 have been implemented on Ethereum. These projects are compatible with ERC4337 wallets, such as the highly scalable smart contract wallet project ZeroDev Kernel and the wallet abstraction project MynaWallet, which has collaborated with the Japanese government. These projects form a large ecosystem of account abstraction wallets. Despite the cautious attitude of traditional wallet merchants, the usage of UserOperations on Ethereum has continued to rise since March this year, indicating rapid expansion.

Image source:Dune

5. Opportunities brought by ERC4337

Image source: Kernel Ventures

5.1 Miner Bundler under ERC4337

In order to separate the account subject from the account control in ERC4337, Bundler was introduced. Any EOA account that holds a certain amount of ETH can act as a Bundler. Compared to traditional mining under the POW mechanism, this new mining method requires almost zero investment and also avoids potential legal risks. In contrast to staking mining under the POS mechanism, Bundlers have a very low entry barrier and do not require staking 32 ETH, only the gas needed for interaction with the Entry Point contract. The fundamental reason for this difference is that the difficulty of malicious behavior by Bundlers is much higher than that of validating nodes, and the profit from malicious behavior is much smaller than that of validating nodes. Therefore, there is no need to stake a large amount of ETH to ensure the overall balance of rewards and punishments in the ERC4337 protocol. Finally, compared to the staking rewards in liquidity pools, Bundlers have a shorter lock-up period, which provides higher liquidity for assets. When ETH faces significant selling pressure, users can withdraw their assets promptly to reduce losses. Given these advantages, Bundlers are likely to become a new investment method on Ethereum and may further evolve into Bundler pools similar to Bitcoin mining pools or ETH staking pools. They offer low costs, stable returns, and high liquidity.

Image source: Kernel Ventures

5.2 Intent Centric under ERC4337

Intent centric refers to a user-centric approach where users do not need to understand the specific execution steps but rather rely on underlying modules to automatically perform modularized actions based on their intentions. For new investors entering the web3 space, the complexity of tasks such as signing transactions and setting gas limits often discourages them from fully embracing crypto, leading them to rely on centralized exchanges (CEX) instead of fully immersing themselves in the web3 world. This discrepancy in user experience between decentralized exchanges (DEX) and CEX arises from the difference in operational intent. In DEX, users need to manually select the most optimal trading pool, sign authorizations, and confirm transactions, which involves multiple individual actions corresponding to underlying behaviors. On the other hand, CEX operates based on intent-driven actions. To achieve the intention of exchanging USDT for ETH in the most favorable way, for example, a user only needs to place a market order without specifying the specific order price. Most users simply desire a modularized process that fulfills their intentions without the need to comprehend the underlying operations. Although some argue that understanding the process can help identify potential issues within the modularized flow, the majority of users prefer a streamlined process tailored to their intentions, as opposed to understanding the specific actions behind it. Additionally, manually conducted processes carry a higher risk compared to well-established modularized flows. Prior to the advent of ERC4337 account abstraction, the efficiency of EOA accounts was hindered by the need to individually sign and confirm each transaction, which impeded the development of intent-centric applications on the Ethereum network. With ERC4337, the introduction of UserOperation and Bundler enables transactions to be sent to alternative mempools and aggregated with other UserOperations, waiting for Bundlers to bundle and submit them to the entry contract for validation and execution. In this process, users only need to declare or sign their preferences, while the specific actions are chosen and executed by Bundlers based on existing consensus or contract logic, eliminating the need for users to participate in the specific process. In DApps, we can design intent-centric logic, where users can simply sign their intentions to achieve specific goals without the need to manually select and sign individual transactions. It is foreseeable that with the widespread adoption of ERC4337, intent-centric DApps will become more prevalent on the Ethereum network, significantly reducing the entry barriers to web3.

5.3 Defi under ERC4337

Defi, closely integrated with EOA accounts during the last bull market, has improved the diversity of on-chain interaction for crypto investors, offering various financial services such as staking, liquidity provision, and lending, ultimately leading to the rise of Defi Summer. However, the complex transaction process and on-chain fees pose a significant barrier for ordinary users to participate, hindering the further adoption of Defi. When combined with ERC4337 wallets, Defi can provide an intent-centric interaction approach, allowing users to experience a user-friendly interface similar to centralized exchanges (CEX). Additionally, through the Paymaster feature in ERC4337, gasless transactions can be achieved, enabling certain operators to reduce the entry barrier for Defi and attract more participants. However, unlike sectors such as Socialfi and Gamefi, Defi involves a large number of token transfers and staking, which requires high security standards. The contract layer of account abstraction introduces complexity, making it prone to security vulnerabilities that could result in the loss of user funds. Furthermore, since the US government issued a ban on many privacy-focused contracts such as Tornado, many Defi platforms strictly scrutinize or even suspend interactions with these smart contracts. As a result, there are significant incompatibilities between smart contract wallets and existing Defi systems. In the process of interacting with Defi contracts, there is even a possibility of being wrongly blacklisted. These factors present challenges for the widespread adoption of ERC4337 wallets in the Defi space.

5.4 Fully On-Chain Games under ERC4337

Different from the “semi on-chain” games in early gamefi, which only processed game assets and items on the chain to ensure their security, fully on-chain games write the core logic and economic model of the game into blockchain smart contracts, enabling game interactions on-chain and achieving full decentralization and high security. However, the current web3 games have paid a significant price to achieve fully on-chain functionality. One major challenge is the skyrocketing gas fees. Every interaction in a fully on-chain game, including game mechanics, in-game items, and scenes, needs to be recorded on the blockchain, resulting in increased costs. To address this issue, the interaction logic of current fully on-chain games is often simplified, limiting the user’s gaming experience. Additionally, when using traditional EOA accounts, the interaction process in fully on-chain games requires cumbersome signature verification, with users needing to confirm each interaction individually, significantly reducing the gaming experience. The introduction of account abstraction addresses these challenges. It greatly reduces transaction costs, with transaction confirmation only requiring BLS aggregate signatures and one verification step, saving gas consumption in cryptographic verification processes. Furthermore, batched transactions eliminate the need for repeated confirmations in the previous process. The introduction of personalized smart contract accounts enables modular construction in fully on-chain games, improving development efficiency. However, so far, the combination of account abstraction and fully on-chain games is mainly seen on Layer2 solutions such as StarkNet, with projects like Loot Realms and Cartridge. This is not due to Ethereum being unsuitable for combining fully on-chain games with ERC4337 wallets, but because the Entry Point contract was only deployed on the Ethereum mainnet in March of this year. As a result, most ERC4337-based fully on-chain games on Ethereum are still under development. It is foreseeable that there will be many ERC4337-based fully on-chain games launching on Ethereum in the near future, greatly enhancing the interactive experience and reducing interaction costs. Existing large-scale fully on-chain games on Ethereum, such as Dark Forest and Wolf Games, may also consider making changes to the contract layer to be compatible with ERC4337 account interactions.

5.5 Socialfi under ERC4337

Trapped in the bundling mechanism of private key accounts and limited interaction capabilities of EOA accounts, Socialfi has long faced issues with high entry barriers and difficult account management. The introduction of account abstraction will completely change this situation, but the trade-off between convenience, recoverability, and security needs to be weighed based on the specific importance of web3 accounts in Socialfi. Firstly, the separation of private keys and account control eliminates the need for users to manage complex and unordered private keys or mnemonic phrases, while allowing for dynamic adjustment of account passwords. For example, the Ambire project, launched at the end of 2021, achieved web3 account creation and private key recovery through email. Secondly, the batch processing of transactions provided by ERC4337 solves the web3 barrier issue raised at the beginning of this article. Just as a button can solve a problem in web2, it can also be solved with a button in web3. Finally, the introduction of custom code logic in ERC4337 accounts is more in line with the personalized design of web2 accounts, allowing each Socialfi account to introduce different account functionalities according to their preferences, similar to the option of opening or not opening channel functionality in QQ based on user preferences.

6. Future Outlook

As of the time of writing, the number of web3 users is approximately around 300 million, accounting for only about 4% of the global population of 6 billion internet users. There is still significant room for growth compared to the total number of internet users. In order for web3 to catch up with the scale of web2 and surpass the milestone of 1 billion users, lower entry barriers and more customizable account functionalities are prerequisites. Among all the options to achieve this goal, ERC4337 stands out as a relatively low-risk solution with a mature framework, and it has received recognition from the Ethereum Foundation and key developers. Since the deployment of the Entry Point contract on Ethereum, the number of users adopting Account Abstraction has experienced explosive growth.

Image source: Dune

Although ERC4337 has gained widespread recognition and support from the Ethereum community, it still faces several challenges in its practical implementation. Firstly, there is uncertainty around the final form of ERC4377 due to pending proposals, which poses obstacles to the development of the ERC4377 ecosystem. Secondly, there are high costs associated with updating ERC4377. Deploying the entry point contract requires the majority of wallets in the network to adopt the new standard, which can be a costly and time-consuming process. Lastly, there is an issue of compatibility with existing Dapps and cross-chain bridges. Achieving widespread adoption of ERC4337 would require extensive upgrades to existing Ethereum Dapps, which come with significant security risks and costs.

However, ERC4377 has actively addressed these challenges. For example, by adding external smart contracts, the bundler’s efficiency can be improved. Additional opcodes can enhance the permissions of smart contract accounts. Supplementary EIP proposals aim to resolve the difficulty of upgrading the entry point contract. Furthermore, in response to the compatibility issue with traditional Dapps, ERC4337 has built its own ecosystem, promoting the wider application of account abstraction wallets on the Ethereum network. The comprehensive implementation of ERC4337 wallets enables evm intent-centric at the Ethereum Virtual Machine (EVM) level, which can further abstract operations in Dapps, making them as user-intent-oriented and user-friendly as web2 applications. If intent-centric functionality can be fully realized in Ethereum Dapps, it will greatly enhance the user experience and attract more users from outside the crypto community to participate. However, the growth of sectors like Defi, which involve direct token transfers, may be more conservative due to the stricter security requirements. On the other hand, sectors like Socialfi and Gamefi prioritize user experience over security concerns. Previously, due to the limitations of EOA accounts, complex interaction design was not possible. With ERC4337, these sectors can overcome the barriers of high user entry requirements and poor user experience, leading to significant user growth and potentially serving as a major catalyst in the next crypto bull market.

Kernel Ventures is a crypto venture capital fund driven by research and development communities, with over 70 early-stage investments, focusing on infrastructure, middleware, dApps, especially ZK, Rollup, DEX, modular blockchains, and vertical areas that will onboard billions of future crypto users, such as account abstraction, data availability, scalability, etc. Over the past seven years, we have been committed to supporting the development of core development communities and university blockchain associations around the world.

Disclaimer:

  1. This article is reprinted from [mirror]. All copyrights belong to the original author [Kernel Ventures Jerry Luo]. If there are objections to this reprint, please contact the Gate Learn team, and they will handle it promptly.
  2. Liability Disclaimer: The views and opinions expressed in this article are solely those of the author and do not constitute any investment advice.
  3. Translations of the article into other languages are done by the Gate Learn team. Unless mentioned, copying, distributing, or plagiarizing the translated articles is prohibited.

Kernel Ventures: Decrypting the Changes Brought By ERC4337 in Ethereum, What Opportunities Can We See?

Intermediate12/27/2023, 5:29:22 PM
This article describes the principles of ERC4337 wallets and their applications in areas such as intent, DeFi, and blockchain games. It also compares ERC4337 wallets with EOA, MPC, AA wallets, and points out the shortcomings of ERC4337 wallets.

Currently, there are two main types of wallets on Ethereum: EOA (Externally Owned Account) and SCW (Smart Contract Wallet). However, each of them faces issues with low execution efficiency and the inability to initiate transactions independently. After multiple explorations, Ethereum developers have found the optimal solution at this stage, which is the implementation of account abstraction through ERC4337.

  1. The ERC4337 wallet implements the separation of private keys and account entities through Bundler, enabling batch processing of transactions and the ability to initiate transactions proactively.

  2. Additionally, the built-in code of the smart contract wallet allows for automated transaction processing based on external information.

  3. However, this proposal still faces challenges from other solutions such as protocol-level account abstraction and native account abstraction wallets. Furthermore, the ERC4337 entry contract was only launched on the Ethereum mainnet in March of this year, so many issues are yet to be explored, and there is significant uncertainty regarding the final solution. Lastly, due to the single-point nature of the Entry Point contract, ERC4337 is heavily restricted in terms of upgrades.

  4. To address these issues, the developers of ERC4337 have also supplemented the EIP proposal to optimize it without modifying the entry contract. For the case of incompatibility between Dapps in the EOA era and ERC4337, supporters of ERC4337 have independently created numerous wallet projects and Dapp projects focused on the interaction with ERC4337 wallets. These projects provide various interactions that EOA accounts can enjoy in the original DeFi and SocialFi ecosystems, while also improving operability.

Overall, ERC4337 remains the optimal solution for implementing account abstraction at the current stage. Through the compensatory contract of Paymaster, it reduces the barriers for users to participate in Defi. Project owners can offer 0gas or low gas transactions to attract more user participation. By bundling and batch processing transactions, it greatly improves the user experience in Socialfi and Gamefi, providing participants in Socialfi and Gamefi with more diverse interaction options.

1. Background

The trade-off between decentralization and convenience has always been a major challenge for crypto participants. Embracing decentralization requires sacrificing the convenience of web2 operations, replacing simple button clicks with processes like managing mnemonic phrases, signing with private keys, and setting nonce values. On the other hand, pursuing convenience exposes the importance of account ownership, as witnessed by the collapses of centralized institutions like FTX and JPEX. To address this issue, Ethereum developers have made various attempts to make web3 accounts as convenient as web2 accounts through the concept of account abstraction. Among these attempts, the ERC4337 standard has gained significant consensus among developers, as highlighted by Ethereum founder Vitalik Buterin at this year’s ETHCC conference.

2. ERC4337 Account Abstraction Principle

ERC4337 involves three objects, UserOperation, Bundler, and on-chain contracts, in the process of separating control and ownership from the account entity. UserOperation primarily includes user input, Bundler completes the packaging and triggering of transactions, and the on-chain contracts consist of Entry Point, Paymaster Contract, and Wallet Contract, which mainly implement complex validation and execution logic.

  1. UserOperation: UserOperation contains all the information related to the user’s submitted transactions. The following diagram shows the parameters that need to be inputted in UserOperation, as well as the input parameters required for a regular EOA account to initiate a transaction.

Image source:Kernel Ventures

The main difference between ERC4337 wallets and EOA wallets is that in ERC4337 wallets, the sender can be specified, whereas in EOA wallets, the ECDSA recovery address is the default signer. As a result, ERC4337 wallets achieve a separation of account ownership and control. Next, the paymasterAndData parameter has been added in ERC4337 to set the specific information of the paymaster contract. We will explain the specific function of the paymaster contract later on.

  1. Bundler:Bundler is essentially an EOA (Externally Owned Account) that verifies the code logic related to the Wallet Contract in the calldata of the incoming UserOperation. If the calldata contains codes like TIMESTAMP, BLOCKHASH, or accesses beyond the wallet storage, Bundler rejects the UserOperation to prevent a malicious simulation attack. Once verified, Bundler packages multiple UserOperations and broadcasts them to the public or private mempool after validation. Additionally, since smart contracts on Ethereum must be triggered by an EOA account, Bundler interacts with the Entry Point Contract to execute the UserOperations. In this process, Bundler can benefit from the difference between the maximum priority fee and the actual gas, as well as the MEV (Miner Extractable Value) gains from sorted bundled transactions. Therefore, the rise of ERC4337 may introduce a new form of mining for Bundlers in Ethereum.
  2. Entry Point:The Entry Point is a smart contract used to verify and execute the contents of the UserOperation. It is triggered by the Bundler and achieves the separation of Bundler and smart contract wallet. In ERC4337, each Wallet Contract is assigned a special authentication to the Entry Point contract address, giving it special permissions during the interaction process. When the Bundler calls the Entry Point contract, it triggers the handleOps function in the contract. This function first checks if the wallet has enough gas compensation for the Bundler, and if not, the transaction is rolled back. In addition, the smart contract wallet can choose to have the gas paid by the Paymaster contract, which we will mention in the subsequent content. If all the verifications pass, the _executeUserOp internal function in the contract will gradually execute the contents of the UserOperation’s calldata, calling the corresponding function in the smart contract wallet. After everything is done, the remaining gas is compensated to the Bundler.
  3. Wallet Contract: The Wallet Contract is essentially a smart contract wallet that contains a multiCall function, which allows for the batch processing of data from UserOperation’s calldata, significantly reducing gas consumption. However, unlike the execution process of a regular smart contract, in the multiCall function, the content of UserOperation is not executed directly but divided into the validateOp and executeOp processes. If the content of UserOperation fails to pass the validateOp, the execution is automatically terminated, and all gas consumption generated during the entire process is borne by the Bundler, while once the executeOp function is reached, regardless of the reason for the termination of the contract execution, the gas consumption is borne by the Wallet Contract. This mechanism effectively ensures that the Bundler can obtain fair profits through its packaging behavior and prevents malicious Bundlers from launching DoS attacks that would deplete the ETH stored in the Wallet Contract.
  4. Paymaster:Paymaster is not a mandatory component in ERC4337. When the paymasterAndData parameter in UserOperation is not empty, the designated Paymaster contract will pay the gas on behalf of the Bundler. During this process, the Bundler triggers the validatePaymasterOp function in the Paymaster contract, which checks if the Paymaster has sufficient balance to support gas payment and pays the gas for the specified UserOperation based on user-defined requirements. It is worth noting that ERC4337 does not specify a standard for prioritizing the use of Paymasters. Bundlers need to select the optimal Paymaster and eliminate lower-quality Paymasters based on off-chain records of past gas payments. This competitive process among Paymasters helps improve network efficiency.
  5. Signature Aggregator:Since ERC4337 supports non-ECDSA signature algorithms, we first classify UserOperations that use different signature algorithms. Then, Bundler generates an aggregated signature through the Signature Aggregator, which can verify all the transactions included in it with a single verification process. This process greatly reduces the gas fee consumption.

Overall, in this process, the user first sends a UserOperation to Bundler with user-defined parameters. If the paymasterAndData parameter is present, the paymaster contract will be called to pay for the gas fee. If the initCode parameter is present, the user will create a new smart contract wallet based on the code logic inside it. Finally, in order to reduce the gas consumption during the verification process, ERC4337 adopts the method of batch packing transactions. The Signature Aggregator is used to pack the same type of UserOperations into an aggregate signature for verification only once. After both the off-chain Bundler’s simulated verification and the on-chain actual verification pass, the smart contract wallet successfully executes the user’s custom functionality in the UserOperation and returns the excess gas to Bundler as a reward.

Image source: Kernel Ventures

Compared to using an EOA (Externally Owned Account) to initiate a transaction, it is much simpler. With an EOA, you only need to sign the transaction data with the account’s private key and broadcast it to the network. The broadcasted transaction will be validated by nodes, and then selected by the POS mechanism to be recorded on the blockchain by the chosen node with accounting rights. This process is straightforward, with minimal gas consumption and no intermediaries like Bundler and Entry Point contracts. It also offers security solely based on the ECDSA encryption algorithm, without the inherent security risks of complex contract logic. However, in this process, the private key and account control are tightly coupled and cannot be changed. Each transaction needs to be individually signed and verified, without the ability for automated processing.

Image source: Kernel Ventures

In summary, ERC4337 achieves the separation of private keys and account ownership, reduces gas consumption in complex transaction processes through batch processing, eliminates the Ethereum balance access threshold with the use of paymaster contracts, and enables various signing methods and customized account functionality through smart contract wallets. These improvements greatly enhance the convenience and versatility of web3 accounts.

3. Ethereum Wallet Types and Their Pros and Cons

  1. EOA (Externally Owned Account): An Ethereum EOA account is controlled by a private key, which is generated from a 12-word mnemonic phrase. While EOA accounts have the autonomy to initiate transactions, it requires users to securely store a 64-character hexadecimal string or a 12-word mnemonic phrase, which can be inconvenient. Additionally, transactions involving identity verification with EOA accounts require individual signing, which is cumbersome as each confirmation involves rewriting the state and confirming permission changes. Lastly, using an EOA account to initiate transactions requires pre-depositing Ethereum into the account, which increases the usability threshold of the wallet.
  2. SCW (Smart Contract Wallet): SCW wallets have significantly improved convenience and automation compared to EOA wallets. Through the built-in code of smart contracts, transactions can be bundled and complex operations can be automated according to user intentions. However, SCW wallets have lower permissions compared to EOA wallets and cannot autonomously initiate transactions. Transaction initiation with SCW wallets requires an EOA account to trigger the transaction.
  3. MPC (Multi-Party Computation Wallet): MPC wallets disperse the private key to multiple entities, who collectively safeguard it and concatenate it when signing is required. Although similar to multi-signature wallets, there are fundamental differences between the two. Firstly, MPC wallets have only one private key that is fragmented and safeguarded. Secondly, multi-signature verification is completely done through on-chain smart contracts, whereas threshold setting and signature generation in MPC wallets occur off-chain. MPC wallets effectively eliminate single points of failure and the risk of losing account ownership due to the loss of a private key, but the off-chain signature generation process is centralized and requires strict audit mechanisms to prevent possible malicious behavior. Additionally, most MPC wallets are currently customized and not open-source, making it difficult to modularly embed them in the development process and increasing development costs. It is important to note that MPC wallets and AA (Account Abstraction) wallets mentioned later do not compete with each other. MPC wallets address the pain point of private key storage, while AA wallets address the flexibility of the transaction process, and both can be used in combination in future development.
  4. AA (Account Abstraction): The concept of account abstraction can be traced back to EIP-86 proposed in 2017, which suggested turning all accounts into contracts and allowing users to define their own security models. However, this proposal involved changes to the Ethereum consensus layer and posed potential security issues, resulting in the indefinite postponement of EIP-86 and subsequent proposals involving changes to the Ethereum consensus or protocol layer. It wasn’t until the introduction of EIP-2938 that significant changes to the Ethereum underlying layer were greatly reduced, and the security concerns were addressed by setting memory pool rules for nodes. The overall approach to account abstraction shifted to how to achieve it by only modifying the smart contract layer. In 2021, ERC4337 was proposed, which fully achieved account abstraction by making changes only at the smart contract layer. In March of this year, the Entry Point contract of ERC4337 was deployed on the Ethereum network, marking the era of account abstraction with ERC4337.

4. Challenges and Responses

4.1 Undecided Account Abstraction Standard

  1. Consensus Layer Account Abstraction:First, for the account abstraction on Layer1 of Ethereum, ERC4337 is not the only solution. The dominance of EIP2938-led consensus layer account abstraction has been temporarily set aside rather than completely rejected. Perhaps from the current perspective, the benefits brought by account abstraction cannot drive developers to make changes at the Ethereum core level. However, as ERC4337-style account abstraction reaches its limits, people will seek better user experiences. At that time, consensus layer account abstraction solutions that enhance contract account permissions to allow them to initiate transactions autonomously, eliminate Bundler, and reduce transaction costs and complexity may once again come into consideration.
  2. Proposed EIPs to be confirmed: Next, the implementation of ERC4337 has been less than a year, and issues are continuously being discovered and improved. Since it is not possible to modify the Entry Point, the temporarily proposed optimization EIPs for ERC4337 mostly involve Bundler and opcode optimizations. For example, EIP-1589 introduces an endorser contract to prevent MEV attacks, and EIP-3974 adds an opcode that allows EOA account control to be delegated to a smart contract account, which involves changes at the consensus layer. Whether these proposals can be approved still depends on discussions within the Ethereum development community.
  3. Layer2 Native Account Abstraction: Finally, there are various native account abstraction wallets on Layer2, such as Starknet and Zksync Era. In Starknet, a different ECDSA signature scheme is used, significantly reducing the cost of signing and verifying, thus greatly reducing gas consumption. At the same time, in Starknet, there are only contract accounts, which are considered top-level accounts by default and can directly initiate transactions without the need for complex contract layer operations, providing developers with a more flexible and rich application design environment.

In summary, to abstract accounts on Ethereum, while ERC4337 is the most widely recognized option, it is not the only one.

4.2 ERC4337 Self-deficiencies

  1. Higher fixed gas cost: The gas consumption for basic operations in the ERC4337 wallet is 42000 gas, which is twice that of a regular EOA account. The specific reasons are as follows:

    Image Source: Kernel Ventures
    It can be seen that the introduction of smart contracts has resulted in significant gas consumption during the execution of contract businesses (unpacking UserOperation, performing conditional validations, on-chain hashing, etc.), as well as triggering events and publishing logs on the Ethereum network. At the same time, the transaction batching proposed in ERC4337 to reduce transaction costs has proven to be impractical in actual transactions. Most users do not need to pack a large number of transactions in a single call, and the advantage of ERC4337 batch transactions can only be utilized in rare scenarios such as project airdrops. Additionally, if the UserOperation, which was originally intended to distribute transaction costs, fails to execute on the chain, it can result in higher losses for wallet accounts or Bundlers.

  2. High upgrade cost: In the Entry Point smart contract, the entryPoint() function can be used to return a parameter that complies with the IEntryPoint interface. In the Wallet Contract, this parameter can be used to determine whether external transactions come from function calls in the entryPoint contract. However, this requires hardcoding the address of the EntryPoint in each generated smart contract account. If an upgrade to the EntryPoint contract is needed, it would require the agreement of all smart contract account holders. When ERC4337 is widely adopted, the difficulty of making this change will be comparable to changing the consensus layer. Therefore, the deployment of ERC4337 must be done with great caution and undergo thorough security audits. Additionally, optimizing performance in the future will also be a challenging task.

  3. Contract security issue: In the original EOA accounts, the transaction process is simple, and the security of transactions is ensured through cryptography and the consensus mechanism of the underlying blockchain. Cryptographic algorithms and distributed system consensus mechanisms have been extensively tested and verified by the academic community, making the likelihood of vulnerabilities very low. However, the ERC4337 wallet replaces many operations that were previously verified through blockchain consensus mechanisms with contract function judgments. This places extremely high demands on the security of the contracts themselves, and as transaction logic becomes more complex, the security risks increase sharply.

4.3 Cost of Upgrading to ERC4337

  1. Traditional wallet giants are cautious:
    According to ChainCatcher news, Alex Jupiter, the Product Manager of MetaMask, stated in an interview with Decrypt that although various technologies such as account abstraction and EOA were mentioned multiple times during EthCC, MetaMask will carefully adopt these technologies.
    As a traditional wallet provider, MetaMask facilitates the creation of EOA accounts for users and charges fees by offering decentralized swap services. Most established wallet giants, which have already established stable profit models, are reluctant to take risks and make changes. Currently, they are also adopting a cautious approach towards account abstraction, actively exploring but maintaining a cautious attitude towards implementation.

  2. The cost of updating Dapps
    Existing Dapps on Ethereum, including Opensea, Uniswap, MetaMask Swap, etc., all default to serving EOA accounts. In order to make these Dapps fully compatible with ERC4337 wallets, changes need to be made to the Dapp’s interaction and auditing mechanisms, as well as the token staking mechanism. To achieve this change, the smart contract code of mainstream Dapps needs to be modified, which may introduce security risks and incur significant update costs. Additionally, considering the resistance to contract accounts caused by previous Tornado contracts, the workload of this update will be even greater.

4.4 ERC4337 and Cross-Chain

In cross-chain bridges between Ethereum and Layer2 networks, it is common for the receiving network to expect the payment to be sent from the same address as the one on the sending network. This is not an issue with traditional EOA (Externally Owned Account) wallets, as they can control both addresses with the same private key through signing. However, in ERC4337 wallets, the address initiating the transfer is a contract address and not controlled by a private key, which means that setting the receiving address to be the same as the sending network is not possible. As a result, there is almost always an incompatibility issue between ERC4337 wallets and most cross-chain bridges between Ethereum Layer1 and Layer2 networks.

4.5 Improvements to ERC4337

  1. EIP Proposal Improvements: Although the ERC4337 standard itself is difficult to modify, we can supplement it by proposing new EIPs. For example, EIP5189, proposed in June 2022, introduces the endoser contract to reduce the risks in the Bundler selection process and further prevent malicious attacks by MEV bots. In addition, there are numerous pending proposals related to 4337, such as EIP3074 and EIP5003, awaiting review.
  2. Supplement to Cross-Chain Protocol: The fundamental solution to the cross-chain problem between Ethereum Layer1 and Layer2 is to start from the bottom of the cross-chain bridge. Users can set their own receiving addresses on the receiving network, but this improvement comes with a high cost, involving the redeployment of the cross-chain bridge and the security issues of new contracts. Currently, the most ideal solution is to set a trusted third-party EOA account as an intermediary between the ERC4337 wallet and the cross-chain bridge. This intermediary needs to hold a large amount of ETH or Layer2 tokens as collateral, and each time it helps execute a cross-chain transaction, it must stake excess assets. After the smart contract wallet receiving the transfer returns the staked tokens, it provides a certain reward.
  3. ERC4337’s Self-built Dapps: Since the deployment of the entry point contract in March this year, a large number of wallet projects based on ERC4337 have been implemented on Ethereum. These projects are compatible with ERC4337 wallets, such as the highly scalable smart contract wallet project ZeroDev Kernel and the wallet abstraction project MynaWallet, which has collaborated with the Japanese government. These projects form a large ecosystem of account abstraction wallets. Despite the cautious attitude of traditional wallet merchants, the usage of UserOperations on Ethereum has continued to rise since March this year, indicating rapid expansion.

Image source:Dune

5. Opportunities brought by ERC4337

Image source: Kernel Ventures

5.1 Miner Bundler under ERC4337

In order to separate the account subject from the account control in ERC4337, Bundler was introduced. Any EOA account that holds a certain amount of ETH can act as a Bundler. Compared to traditional mining under the POW mechanism, this new mining method requires almost zero investment and also avoids potential legal risks. In contrast to staking mining under the POS mechanism, Bundlers have a very low entry barrier and do not require staking 32 ETH, only the gas needed for interaction with the Entry Point contract. The fundamental reason for this difference is that the difficulty of malicious behavior by Bundlers is much higher than that of validating nodes, and the profit from malicious behavior is much smaller than that of validating nodes. Therefore, there is no need to stake a large amount of ETH to ensure the overall balance of rewards and punishments in the ERC4337 protocol. Finally, compared to the staking rewards in liquidity pools, Bundlers have a shorter lock-up period, which provides higher liquidity for assets. When ETH faces significant selling pressure, users can withdraw their assets promptly to reduce losses. Given these advantages, Bundlers are likely to become a new investment method on Ethereum and may further evolve into Bundler pools similar to Bitcoin mining pools or ETH staking pools. They offer low costs, stable returns, and high liquidity.

Image source: Kernel Ventures

5.2 Intent Centric under ERC4337

Intent centric refers to a user-centric approach where users do not need to understand the specific execution steps but rather rely on underlying modules to automatically perform modularized actions based on their intentions. For new investors entering the web3 space, the complexity of tasks such as signing transactions and setting gas limits often discourages them from fully embracing crypto, leading them to rely on centralized exchanges (CEX) instead of fully immersing themselves in the web3 world. This discrepancy in user experience between decentralized exchanges (DEX) and CEX arises from the difference in operational intent. In DEX, users need to manually select the most optimal trading pool, sign authorizations, and confirm transactions, which involves multiple individual actions corresponding to underlying behaviors. On the other hand, CEX operates based on intent-driven actions. To achieve the intention of exchanging USDT for ETH in the most favorable way, for example, a user only needs to place a market order without specifying the specific order price. Most users simply desire a modularized process that fulfills their intentions without the need to comprehend the underlying operations. Although some argue that understanding the process can help identify potential issues within the modularized flow, the majority of users prefer a streamlined process tailored to their intentions, as opposed to understanding the specific actions behind it. Additionally, manually conducted processes carry a higher risk compared to well-established modularized flows. Prior to the advent of ERC4337 account abstraction, the efficiency of EOA accounts was hindered by the need to individually sign and confirm each transaction, which impeded the development of intent-centric applications on the Ethereum network. With ERC4337, the introduction of UserOperation and Bundler enables transactions to be sent to alternative mempools and aggregated with other UserOperations, waiting for Bundlers to bundle and submit them to the entry contract for validation and execution. In this process, users only need to declare or sign their preferences, while the specific actions are chosen and executed by Bundlers based on existing consensus or contract logic, eliminating the need for users to participate in the specific process. In DApps, we can design intent-centric logic, where users can simply sign their intentions to achieve specific goals without the need to manually select and sign individual transactions. It is foreseeable that with the widespread adoption of ERC4337, intent-centric DApps will become more prevalent on the Ethereum network, significantly reducing the entry barriers to web3.

5.3 Defi under ERC4337

Defi, closely integrated with EOA accounts during the last bull market, has improved the diversity of on-chain interaction for crypto investors, offering various financial services such as staking, liquidity provision, and lending, ultimately leading to the rise of Defi Summer. However, the complex transaction process and on-chain fees pose a significant barrier for ordinary users to participate, hindering the further adoption of Defi. When combined with ERC4337 wallets, Defi can provide an intent-centric interaction approach, allowing users to experience a user-friendly interface similar to centralized exchanges (CEX). Additionally, through the Paymaster feature in ERC4337, gasless transactions can be achieved, enabling certain operators to reduce the entry barrier for Defi and attract more participants. However, unlike sectors such as Socialfi and Gamefi, Defi involves a large number of token transfers and staking, which requires high security standards. The contract layer of account abstraction introduces complexity, making it prone to security vulnerabilities that could result in the loss of user funds. Furthermore, since the US government issued a ban on many privacy-focused contracts such as Tornado, many Defi platforms strictly scrutinize or even suspend interactions with these smart contracts. As a result, there are significant incompatibilities between smart contract wallets and existing Defi systems. In the process of interacting with Defi contracts, there is even a possibility of being wrongly blacklisted. These factors present challenges for the widespread adoption of ERC4337 wallets in the Defi space.

5.4 Fully On-Chain Games under ERC4337

Different from the “semi on-chain” games in early gamefi, which only processed game assets and items on the chain to ensure their security, fully on-chain games write the core logic and economic model of the game into blockchain smart contracts, enabling game interactions on-chain and achieving full decentralization and high security. However, the current web3 games have paid a significant price to achieve fully on-chain functionality. One major challenge is the skyrocketing gas fees. Every interaction in a fully on-chain game, including game mechanics, in-game items, and scenes, needs to be recorded on the blockchain, resulting in increased costs. To address this issue, the interaction logic of current fully on-chain games is often simplified, limiting the user’s gaming experience. Additionally, when using traditional EOA accounts, the interaction process in fully on-chain games requires cumbersome signature verification, with users needing to confirm each interaction individually, significantly reducing the gaming experience. The introduction of account abstraction addresses these challenges. It greatly reduces transaction costs, with transaction confirmation only requiring BLS aggregate signatures and one verification step, saving gas consumption in cryptographic verification processes. Furthermore, batched transactions eliminate the need for repeated confirmations in the previous process. The introduction of personalized smart contract accounts enables modular construction in fully on-chain games, improving development efficiency. However, so far, the combination of account abstraction and fully on-chain games is mainly seen on Layer2 solutions such as StarkNet, with projects like Loot Realms and Cartridge. This is not due to Ethereum being unsuitable for combining fully on-chain games with ERC4337 wallets, but because the Entry Point contract was only deployed on the Ethereum mainnet in March of this year. As a result, most ERC4337-based fully on-chain games on Ethereum are still under development. It is foreseeable that there will be many ERC4337-based fully on-chain games launching on Ethereum in the near future, greatly enhancing the interactive experience and reducing interaction costs. Existing large-scale fully on-chain games on Ethereum, such as Dark Forest and Wolf Games, may also consider making changes to the contract layer to be compatible with ERC4337 account interactions.

5.5 Socialfi under ERC4337

Trapped in the bundling mechanism of private key accounts and limited interaction capabilities of EOA accounts, Socialfi has long faced issues with high entry barriers and difficult account management. The introduction of account abstraction will completely change this situation, but the trade-off between convenience, recoverability, and security needs to be weighed based on the specific importance of web3 accounts in Socialfi. Firstly, the separation of private keys and account control eliminates the need for users to manage complex and unordered private keys or mnemonic phrases, while allowing for dynamic adjustment of account passwords. For example, the Ambire project, launched at the end of 2021, achieved web3 account creation and private key recovery through email. Secondly, the batch processing of transactions provided by ERC4337 solves the web3 barrier issue raised at the beginning of this article. Just as a button can solve a problem in web2, it can also be solved with a button in web3. Finally, the introduction of custom code logic in ERC4337 accounts is more in line with the personalized design of web2 accounts, allowing each Socialfi account to introduce different account functionalities according to their preferences, similar to the option of opening or not opening channel functionality in QQ based on user preferences.

6. Future Outlook

As of the time of writing, the number of web3 users is approximately around 300 million, accounting for only about 4% of the global population of 6 billion internet users. There is still significant room for growth compared to the total number of internet users. In order for web3 to catch up with the scale of web2 and surpass the milestone of 1 billion users, lower entry barriers and more customizable account functionalities are prerequisites. Among all the options to achieve this goal, ERC4337 stands out as a relatively low-risk solution with a mature framework, and it has received recognition from the Ethereum Foundation and key developers. Since the deployment of the Entry Point contract on Ethereum, the number of users adopting Account Abstraction has experienced explosive growth.

Image source: Dune

Although ERC4337 has gained widespread recognition and support from the Ethereum community, it still faces several challenges in its practical implementation. Firstly, there is uncertainty around the final form of ERC4377 due to pending proposals, which poses obstacles to the development of the ERC4377 ecosystem. Secondly, there are high costs associated with updating ERC4377. Deploying the entry point contract requires the majority of wallets in the network to adopt the new standard, which can be a costly and time-consuming process. Lastly, there is an issue of compatibility with existing Dapps and cross-chain bridges. Achieving widespread adoption of ERC4337 would require extensive upgrades to existing Ethereum Dapps, which come with significant security risks and costs.

However, ERC4377 has actively addressed these challenges. For example, by adding external smart contracts, the bundler’s efficiency can be improved. Additional opcodes can enhance the permissions of smart contract accounts. Supplementary EIP proposals aim to resolve the difficulty of upgrading the entry point contract. Furthermore, in response to the compatibility issue with traditional Dapps, ERC4337 has built its own ecosystem, promoting the wider application of account abstraction wallets on the Ethereum network. The comprehensive implementation of ERC4337 wallets enables evm intent-centric at the Ethereum Virtual Machine (EVM) level, which can further abstract operations in Dapps, making them as user-intent-oriented and user-friendly as web2 applications. If intent-centric functionality can be fully realized in Ethereum Dapps, it will greatly enhance the user experience and attract more users from outside the crypto community to participate. However, the growth of sectors like Defi, which involve direct token transfers, may be more conservative due to the stricter security requirements. On the other hand, sectors like Socialfi and Gamefi prioritize user experience over security concerns. Previously, due to the limitations of EOA accounts, complex interaction design was not possible. With ERC4337, these sectors can overcome the barriers of high user entry requirements and poor user experience, leading to significant user growth and potentially serving as a major catalyst in the next crypto bull market.

Kernel Ventures is a crypto venture capital fund driven by research and development communities, with over 70 early-stage investments, focusing on infrastructure, middleware, dApps, especially ZK, Rollup, DEX, modular blockchains, and vertical areas that will onboard billions of future crypto users, such as account abstraction, data availability, scalability, etc. Over the past seven years, we have been committed to supporting the development of core development communities and university blockchain associations around the world.

Disclaimer:

  1. This article is reprinted from [mirror]. All copyrights belong to the original author [Kernel Ventures Jerry Luo]. If there are objections to this reprint, please contact the Gate Learn team, and they will handle it promptly.
  2. Liability Disclaimer: The views and opinions expressed in this article are solely those of the author and do not constitute any investment advice.
  3. Translations of the article into other languages are done by the Gate Learn team. Unless mentioned, copying, distributing, or plagiarizing the translated articles is prohibited.
Bắt đầu giao dịch
Đăng ký và giao dịch để nhận phần thưởng USDTEST trị giá
$100
$5500