EIP-3074 has become a point of contention in the Ethereum community, and Vitalik has proposed a new improvement plan EIP-7702

This article is machine translated
Show original

Recently, there has been a lot of controversy in the Ethereum community regarding the account abstraction proposal EIP-3074 that will be included in Pectra upgrades in the future. Opponents including Vitalik and others believe that it has doubts about future compatibility, so yesterday Vitalik directly proposed an New scheme — EIP-7702 .

Background knowledge: Account abstraction

Account abstraction: improving blockchain user experience

Account Abstraction (AA) is Ethereum's direction to improve the user experience in the blockchain interaction process. Account abstraction refers to optimizing the way users interact with the blockchain, making the operation easier and more practical. Looking forward to it This could usher in mass adoption.

How does account abstraction improve user experience? for example:

  • Batch transactions: Allow the same user to perform multiple operations in one atomic transaction. For example, on a decentralized exchange, users can complete approvals and transactions at the same time.
  • Sponsored transactions : Third-party accounts can pay transaction fuel costs on behalf of the transaction account, and can be used to subsidize users for the project.
  • Permission management : Users can sign subkeys and grant specific permissions. For example, a user could be given access to an ERC-20 token but not ETH, a maximum daily spending total, or limited interaction with specific applications.

Recommended reading: Intention-centric design | NGC Venture Capital summarizes industry trends
Reason for recommendation: Account abstraction is the first step in intent-oriented design. This article starts from the meaning and importance of intent-oriented design and account abstraction, describes the implementation direction of existing technologies and the specific methods of combining blockchain, and takes stock. The technical introduction and development status of mainstream projects in the industry is recommended for readers who are unfamiliar with this field.

As important issues such as Ethereum network security and decentralization are gradually resolved, user experience proposals have gradually been put on the table for discussion recently. Proposals including EIP-2938, EIP-3074, EIP-4337, etc. are all key proposals.

ERC-4337 is considered final but has a long development cycle

EIP-4337 introduces the concept of User Operations, allowing smart contract wallets to customize transaction functions, such as sponsored transactions or batch transactions.

User Operations will enter the alternative memory pool (alt mempool), which is a new memory pool created by EIP-4337, separated from the original general transaction and memory pool.

EIP-4337 Operational Structure (Source)

However, to implement ERC-4337 even to the point where it can be adopted on a large scale, a lot of effort is required, including infrastructure design, manual updates of user wallets, etc.

EIP-3074 floating and sinking

EIP-3074 is expected to add two new opcodes (opcode): AUTH and AUTHCALL, so that EOA can use these two opcodes to authorize contracts (invokers) to call and interact with other external contracts on its behalf. That is to say, the current EOA has the function of smart contract.

Recommended reading: What is EIP-3074 in the next update of Ethereum? How to achieve account abstraction?
Reason for recommendation: This article introduces the basic operating principles of EIP-3074 and the differences with EIP-4337, so that you can have a better understanding of the potential risks behind the principles.

Although EIP-3074 was proposed three years ago, the "final" perfect solution of EIP-4337 later appeared, making the former disappear from the community's view.

Recently, the importance of user experience has gradually increased, and competition from other public chains has gradually accelerated. However, to implement EIP-4337 and operate it smoothly on the Ethereum main network, a lot of development work and resources are still required. The Ethereum community believes that EIP-3074 should be implemented first.

( What is chain abstraction? It improves user experience more comprehensively than account abstraction )

EIP-3074 enables externally owned accounts (EOA) to operate like smart contract wallets. The process does not require the deployment of additional contracts and users do not need to manually upgrade. Therefore, the Ethereum community will include it in the next hard fork upgrade. .

EIP-3074 continues to be controversial

Although it has been scheduled to be upgraded to Pectra, EIP-3074 is actually quite controversial, and even Vitalik publicly opposed it.

EIP-3074 Disputes

Vitalik pointed out that EIP-3074 has compatibility issues with future updates:

  • The two opcodes AUTH and AUTHCALL introduced in Vitalik's final accounting abstraction proposal EIP-4337 are not available and are not needed.
  • EIP-3074 The development of the caller contract ecosystem may become separate from the smart contract wallet ecosystem, leading to technology fragmentation.
  • In addition, community member Yoav Weiss pointed out that EIP-3074 requires full trust in the invokers contract, which increases trust risks and requires delaying the censorship-resistant Inclusion Lists mechanism.

Vitalik believes that EIP-3074 can be regarded as an expansion of EOA but not necessary. If it has a negative impact on the future development of Ethereum, then simply don't do it.

The supporter of EIP-3074 said: "People who postpone or delete EIP-3074 often think that although the Ethereum user experience is not ideal, it is currently good." If there is no way to meaningfully improve Ethereum in the next Pectra update User experience may lag behind other competitors.

The biggest controversial point of EIP-3074 is actually "Is EIP-4337 the most suitable ending for Ethereum?" If the answer is yes, then EIP-3074 should be opposed; if the answer is no, then it should be supported.

However, the above discussion is too narrow and cannot resolve the community's dispute. Vitalik fully understands this truth and does not just talk about it but also directly implements new solutions. This allows the EIP-3074 controversy to continue to be discussed.

Vitalik proposed EIP-7702 to replace EIP-3074

The design of EIP-7702 will replace the two opcodes AUTH and AUTHCALL required by EIP-3074 by calling EOA:

  • AUTH will be replaced by calling verify, setting authorized[msg.sender, …]
  • AUTHCALL will be replaced by calling execute, verify authorized[msg.sender, …] and execute.

The content of the proposal indicates that these two small changes will avoid the potential negative impact of EIP-3074 on subsequent updates to the protocol.

The purpose of EIP-7702 is to implement all use cases of EIP-3074 without these two opcodes that may cause problems.

Will the future development of Ethereum include EIP-7702?

Now there is a third solution besides simply supporting and opposing EIP-3074 - EIP-7702. If it can indeed solve "Ethereum needs a fast and effective user experience solution" and "do not affect future EIP-4337 and other protocols" at the same time "The development process" may become a direction that the community has a consensus on.

The proposal is still under discussion, and you may be able to look forward to the next Ethereum ACDE meeting for the latest progress.

But no matter what, there is no doubt that the Ethereum community is still trying to progress in the best way possible.

Source
Disclaimer: The content above is only the author's opinion which does not represent any position of Followin, and is not intended as, and shall not be understood or construed as, investment advice from Followin.
Like
Add to Favorites
Comments