EIP-3074 will grant smart contract functionalities to regular EOA addresses, including batch transactions, wallet asset recovery, gas subsidies, and more, greatly improving user experience. This article is based on a piece written by cygaar, an advisor for Mocaverse, and compiled, translated, and edited by Odaily.
Summary:
EIP-3074 gives regular EOA addresses (commonly used wallet addresses) the functionalities of smart contracts, including batch transactions, wallet asset recovery, gas subsidies, and authorization for individual transactions, making the user experience on the wallet side more streamlined, cost-effective, and rich.
Background:
Wall Street’s VanEck predicts that Ethereum L2 valuation will surpass trillions, with thousands of applications for rollups.
Table of Contents:
– Transaction flow diagram under EIP-3074
– Three major reforms brought by EIP-3074
– Risks associated with EIP-3074
On April 12th, the Ethereum Core Developers’ Execution Meeting (ACDE) held its 185th meeting, continuing the discussion on the content planning for two major upgrades of Ethereum (Prague upgrade, Osaka upgrade).
The most important outcome of this meeting is that EIP-3074, which adds smart contract functionalities to regular addresses, has been confirmed to be included in the Prague upgrade. The following is an analysis of the utility and significance of EIP-3074.
In summary, the functionality of EIP-3074 can be described as granting smart contract functionalities to regular EOA addresses (i.e., commonly used wallet addresses), including batch transactions, wallet asset recovery, gas subsidies, authorization for individual transactions, and more, enhancing the user experience on the wallet side in terms of simplicity, affordability, and richness.
First, let’s talk about the problems currently faced by regular wallets. @lightclients has previously analyzed EIP-3074, and here, we will directly quote their PPT. The following are some user experience problems faced by current regular wallets:
– Transactions need to be conducted one by one when authorizing tokens.
– All operations are often associated one-to-one with transactions.
– There is no protection against lost private keys.
– Transactions cannot be executed without ETH.
These problems can be solved by smart contract wallets, but it would force users to migrate addresses, resulting in a poor user experience and consuming a significant amount of costs. Therefore, this is not a good solution.
So how can we grant smart contract functionalities to existing regular addresses? The answer is to achieve this by adding two new opcodes (computer instructions), AUTH and AUTHCALL, which will work together to allow smart contracts to execute specific operations on behalf of regular addresses.
Here is a brief overview of how the AUTH and AUTHCALL opcodes work:
– AUTH is responsible for accepting the user’s signature and the intended action, and verifying the correctness of the signature. It also sets a variable indicating the initiating address of the transaction.
– AUTHCALL is responsible for calling the target contract and allowing the initiating address of the transaction to replace the caller address (i.e., the smart contract address that actually calls the target contract) as the calling source.
Through this new transaction process, we will enable some new functionalities. For example, the first potential new functionality is the implementation of “gas subsidies.” After EIP-3074, major applications can assist users in paying for gas if their wallets do not have any ETH, eliminating the need for users to buy or bridge ETH themselves. This functionality is crucial for Ethereum’s mass adoption on the consumer side.
The second potential new functionality is executing multiple operations in a single transaction. Currently, when a user wants to trade a new token on Uniswap, they have to authorize Uniswap to use the token first before executing the actual trade. This experience is also poor. With EIP-3074, both operations can be completed in a single transaction.
The third potential new functionality is asset recovery. With EIP-3074, users can set up a special caller contract and, in case of a lost private key, use verified social media information to recover assets. If the recovery conditions are met, users can submit a signature to the caller contract to transfer the assets from the original address.
However, in addition to these significant advantages, the emergence of EIP-3074 also brings some new risks. The biggest risk comes from the caller contract—it must undergo comprehensive audits, be non-upgradable, and require no trust; otherwise, users’ funds can easily be stolen. In addition, some existing reentrancy checks may not be applicable to EIP-3074.
Since EIP-3074 adds two new opcodes, a hard fork upgrade is required to introduce this update. This is partially why EIP-3074 has been delayed until now and why ERC-4337 (an asset standard for account abstraction) was adopted first. ERC-4337 does not require a hard fork because it is purely a change at the smart contract and off-chain system level.
This is a summary of the content of ACDE#185 compiled by Tim Beiko. As seen in the figure below, EIP-3074 is now officially included in the scope of the Pectra hard fork upgrade.
We would like to express our gratitude to @lightclients for their contributions to this work. They are also one of the original authors of EIP-3074, and they have been dedicated to promoting the implementation of this EIP for many years.
If you want to further understand the content of EIP-3074, you can start with the following resources:
– Official proposal of EIP-3074: [link]
– @lightclients’ video analysis: [link]
In conclusion, EIP-3074 is expected to significantly change the current on-chain interaction mode. The EVM environment will have two new opcodes that almost allow regular addresses to function as smart contracts. It will be exciting to see how developers utilize this paradigm shift in the future.
Related Reports:
– Vitalik Buterin: Ethereum’s path to mass adoption, L2 improvements needed in four major directions
– How much does Vitalik Buterin love Taiwan? Visiting Taiwan twice this year, taking photos with Elephant Mountain and Taipei 101, praising Taiwan’s developer community
– Vitalik Buterin’s latest interview: The advantages of AI + cryptocurrencies, challenges for Ethereum, advice for Taiwanese developers, favorite Farcaster?