A quick read on EIP-3074: What is it and what impact does it have on Ethereum?

EIP-3074 is included in the next Ethereum hard fork Pectra upgrade, which supports delegating EOA control to smart contracts.

Written by Karen, Foresight News

In the latest conference call conducted by Ethereum core developers, EIP-3074 proposal developers were included in the improvements that will be implemented in the Ethereum hard fork Pectra upgrade. The proposal supports delegating control of ordinary addresses to smart contracts to execute more complex transaction plans, thereby significantly enhancing the wallet user experience. So, what exactly is EIP-3074, and what does it mean for Ethereum?

What is EIP-3074?

In fact, as early as October 2020, EIP-3074 was proposed by Ethereum core developers and researchers Sam Wilson, Ansgar Dietrichs, lightclients, and Micah Zoltu. The core idea is to delegate control of externally owned accounts (EOA) to smart contracts. This innovation provides developers with a powerful and flexible framework for designing and implementing novel EOA transaction strategies.

So how do we turn the existing EOA into a smart contract? According to a demonstration video released by lightclients two years ago, the key to achieving this transformation lies in two instructions, "AUTH" and "AUTHCALL", where the former sets the context variable "authorized" based on the ECDSA signature, and the latter initiates the call as an "authorized" account. At the same time, more logic can be implemented around the "AUTHCALL" instruction to provide more control for the caller and initiator without sacrificing the security or user experience of the initiator.

In actual operation, the EOA address user first signs the transaction off-chain, and then the EOA user or Gas sponsor sends the transaction to the Invoker contract. The Invoker contract uses "AUTH" and "AUTHCALL" to verify and call each target contract.

Patrick McCorry, a team member of Arbitrum and Lemniscap, said that EIP-3074 solves the "msg.sender" problem that plagues almost all transaction relay services and can really improve the user experience. Essentially, if the relayer pays for the user's transaction, the relayer's address will be set to msg.sender instead of the user's address. One way to solve the above problem is for users to rely on smart contract wallets, and the other is for smart contracts to have "meta transaction capabilities" and accept messages signed by users, but this kills startups that want to provide users with gas-free transactions. There is also an alternative way to solve the above problem, which is to change the transaction format, rename tx.origin to Gas.payer, and include two new fields "gas payer" and "nonce" in the transaction. When the transaction is executed, it increases the nonce of the user and the Gas payer, and deducts the fee from the Gas payer. This allows the relayer to forward the user's transaction, but it still has limitations, mainly the ability to refund ERC-20 tokens after the transaction is completed. EIP-3074 is a clever solution as it allows ERC-20 tokens to be refunded to relayers, allowing relayers to carry user-signed messages and be confirmed on Ethereum, without changing the transaction format and breaking existing tools.

What does EIP-3074 mean for Ethereum?

EIP-3074 allows any EOA to act as a smart contract wallet without deploying a contract, and thus can execute more complex transaction schemes. This brings many exciting use cases to Ethereum, including Gas sponsorship, batch transactions, and wallet asset recovery.

Among them, Gas sponsorship allows DApps, project parties, and third parties to provide Gas to users without the need for users to hold ETH themselves. This is extremely friendly to new Web3 users who do not hold ETH, and will also help promote the large-scale adoption of Ethereum.

At the same time, since it supports executing multiple operations in one transaction, users only need to sign a transaction once when trading non-ETH tokens, without having to go through the cumbersome token approval process before signing the transaction, thereby improving transaction efficiency and reducing costs.

EIP-3074 can also play an important role in wallet asset recovery. By setting up a special Invoker contract, users can recover their assets through a social recovery mechanism when they lose their private keys.

Of course, EIP-3074 is also quite controversial. As DefiLlama founder 0xngmi said, now only one wrong signature is needed to completely drain the assets of an address, including all tokens, all NFTs, all DeFi positions, etc.

In addition, it is worth noting that although EIP-3074 supports delegating control of ordinary addresses to smart contracts, EIP-3074 is not an account abstraction proposal. Ethereum Foundation researcher ansgar.eth said that his biggest concern is that we will now build two parallel account technology stacks using 3074/EOA and 4337/AA, and it will take a lot of effort and attention to make these things interoperable. Hayden Adams, founder of Uniswap, also emphasized that the industry should work hard to ensure compatibility between 4337 wallets and 3074 contracts.

In summary, EIP-3074 is expected to bring unprecedented innovation and opportunities to Ethereum, but it also comes with some challenges and controversies. With its upcoming implementation in the Pectra upgrade, we look forward to seeing how it will shape the future of Ethereum and bring a richer and more convenient user experience to the Web3 ecosystem. At the same time, we also need to be aware of its potential risks and challenges and ensure that appropriate security measures are taken when using this feature.

Reference:

View Original
The content is for reference only, not a solicitation or offer. No investment, tax, or legal advice provided. See Disclaimer for more risks disclosure.
  • Reward
  • Comment
  • Share
Comment
0/400
No comments