EIP-7377 An excellent solution for migrating from EOA to smart contract wallets before the popularization of account abstraction.

EIP-7377 A great solution for migrating from EOA to smart contract wallets before account abstraction becomes popular.

Author: David

In the past few months, discussions about account abstraction and smart contract wallets have been very hot.

With the rapid development of the Ethereum ecosystem, achieving a unified and seamless user experience has become increasingly important. In the roadmap of Ethereum 2.0, account abstraction and merging, as well as sharding, are placed in equally important positions.

Vitalik Buterin has also tweeted that smart contract wallets offer a better user experience compared to EOA wallets.

For experienced crypto users, using an EOA wallet is already familiar enough. But from the perspective of attracting more new users, EOA wallets still have certain issues with user interface and understanding cost: confusing signatures, figuring out gas fees, the hardcore logic of “action = transaction,” etc.

Therefore, the community has gradually reached a consensus that there is a need for a smooth transition from EOA accounts to smart contract wallets, which has also become a kind of political correctness.

However, the information popular in the crypto community generally only focuses on narratives and not on implementation:

Assuming we all know that smart contract wallets are better than EOA wallets, the path is very clear, but the question is how to get there? Where is the bridge?

Even more difficult to solve are the real problems that come with path dependence: I already have various assets in my EOA account, and now you want me to migrate to a smart contract account, isn’t that troublesome?

How can we effectively achieve this transition? And how can we simplify the process of user asset migration?

There was no road in this world until someone paved it in advance.

Recently, the EIP-7377 proposal has provided a possible solution for this. The proposal was put forward by Matt Garnett, a developer of Go Ethereum, with the aim of adding a new transaction type that allows EOA accounts to permanently migrate to smart contract wallets through a one-time transaction. This provides a feasible path for advancing Ethereum account abstraction.

Motivation Behind EIP-7377 Proposal

Since 2015, smart contract wallets have been considered an important way to solve the user experience problem on Ethereum. Compared to EOA accounts, smart contract wallets have stronger programmability and can implement complex mechanism designs, improving security and user-friendliness.

However, due to historical reasons, currently only a small number of users on Ethereum use smart contract wallets, and a large amount of assets are still stored in EOA accounts. This has become an obstacle to the development of Ethereum.

With the accumulation of assets, users cannot easily manually migrate all the assets in their EOA accounts to new smart contract addresses, which is very difficult in terms of both cost and operational processes.

Therefore, the motivation of EIP-7377 is to address this practical need by providing a mechanism at the protocol level to migrate from EOA to smart contract wallets, achieving a smooth transition. This may greatly increase the willingness of existing users to migrate and provide a more pragmatic EOA transition solution for new users before the account abstraction is widely adopted.

Plain Explanation of EIP-7377 Technical Implementation

So, how does this proposal specifically implement the transfer from EOA to smart contract wallets?

In the original post on the technical forum, the author provided a brief explanation:

The general meaning of this summary is that EIP-7377 proposes a new transaction type 0x04 specifically for “migration transactions”.

In the technical language of the original post:

“It sets the code field of the sending account in the state tree to a pointer to the specified code in the code storage. At the same time, the migration transaction can also directly set the storage value of the sending account. The storage field in the transaction will be written as key-value pairs in the storage tree of the sending account. In addition, the code storage uses pointers instead of inline code. The advantage of doing this is that it can reuse shared code, reduce redundancy, and optimize the size of the state tree.”

The above original description is very obscure and difficult to understand for people without a technical background. After consulting some technical friends and public information, we attempt to simplify all the technical details and provide a quick understanding of EIP-7377 through metaphor:

  • EIP-7377 proposes a special type of transaction that can be understood as a “migration card”.
  • Ordinary users only need to initiate this migration card transaction to transfer the assets in their accounts to smart contract wallets.
  • This is equivalent to your account on the original website, which contains information such as username, password, and avatar (your original EOA contains token name, quantity, chain, gas limit, etc.). However, the functionality of this website is not very good, and you want to completely migrate to another new website.
  • In order to facilitate the migration, the new website has introduced a “migration card”. You only need to submit this “migration card” on the new website, and your account information will be automatically copied over, which is equivalent to directly connecting the data of the old and new accounts. This is much more convenient than manually transferring data one by one.
  • At the same time, for security reasons, the “migration card” can only be used once and cannot be repeatedly used to transfer data back and forth. Moreover, the new website will inherit some validation rules from the old website, so other users cannot tell whether you are a new user or an old user.

This is the effect that EIP-7377 wants to achieve technically. By using the special “migration transaction” card, the smooth migration from EOA to smart contract wallets is achieved by directly manipulating account code and storage in a secure and efficient manner.

Of course, the specific migration object is not the username, password, or avatar mentioned above, but it includes various information related to encrypted assets:

The potential impact, significance, and risks of EIP-7377

The EIP-7377 proposed EOA-to-smart contract account migration scheme, which is expected to have a positive impact on the Ethereum ecosystem in the long term. We believe that it is expected to be one of the key steps in promoting account abstraction implementation.

This smooth migration method supported at the protocol level can greatly reduce the difficulty and path dependence for users to migrate to smart contract wallets. For crypto users, they are often not proficient in underlying technologies and will not actively pursue technological innovation under the orientation of asset priority. If the underlying protocol already supports “one-click migration,” and is accompanied by appropriate incentive activities and user-friendly front-end interface adaptation, the theoretical willingness of users to migrate will greatly increase.

However, we should also pay attention to the risks of this new feature being used for malicious attacks. Possible malicious means include, but are not limited to:

  1. Phishing attacks: Creating counterfeit migration transactions and deceiving users into approving them through phishing links to achieve the purpose of illegally transferring assets.
  2. Malicious code injection: Hackers can implant backdoors by tampering with the code during the migration process to gain control of the account.
  3. Repeated migration theft: Taking advantage of the restriction that migration transactions can only be executed once, hackers can initiate repeated migration transactions after a legitimate migration, falsely claiming failure and then asking users to approve again, in order to steal assets.

In the crypto world, the complete realization of the vision cannot be achieved with just a single protocol upgrade and innovation. In the dark forest environment, protocol upgrades also require corresponding means such as audit upgrades, trusted source verification, bounty programs, etc., to prevent these threats and ensure the security of migration transactions.

Finally, we also need to think:

The transformation of infrastructure and protocols requires strong ecological driving forces. Who will promote the large-scale migration of users from EOA to smart contract accounts? Who will bear the technical risks and asset security during the migration process?

In the crypto world that advocates freedom and decentralization, how can consensus and collective efforts be formed for such system upgrades?

The Ethereum ecosystem is vast, with many stakeholders. Although this transition has positive implications, it may also face questioning and resistance from different groups. The planning and details of the transition process need to be carefully designed to achieve community consensus and ensure that user interests are not compromised.

The journey from ideal to reality, from conception to execution, is still long.

We will continue to update Blocking; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Market

Bitcoin Rockets to New Heights at $36K while 'ETFs Still Up for Grabs

Fashionista, get excited! According to Bitwise's CIO, bitcoin's price has increased by 30% this month and there is po...

Bitcoin

Ark Invest Buys an Additional $21 Million of Bitcoin-based Spot ETF

Cathie Wood's Ark Invest made a confident investment decision by acquiring an additional $21 million in its spot Bitc...

Market

The Bitcoin ETF applicant may be playing the piano, and the SEC committee member said the agency did not grasp the key points.

If there is a canary in the "coal mine" under supervision (in the period when the technology is still under...

Bitcoin

Bitcoin Price Predicted to Reach $50,000: Matrixport Report

According to Matrixport's report released today, the price of Bitcoin is expected to soar to $50,000 this month due t...

Bitcoin

Spot Bitcoin ETFs Continue to Soar, πŸ’ΈπŸš€

Bitcoin ETFs continue to show strong demand, purchasing over 10,000 BTC in just 5 days. Despite Grayscale outflows, t...

Market

Spot Bitcoin ETFs Hold More Bitcoin than MicroStrategy, Exclusions Apply πŸš€

Bitcoin exchange-traded funds (ETFs) currently hold an impressive combined total of 192,255 bitcoins as of Wednesday,...