Forward the Original Title:EIP-3074: Risks/Opportunities for Smart Account Adoption (and why we need EIP-5003)
On the journey to full account abstraction (AA) on Ethereum, we stand at a crossroads: ERC-4337 lies behind us, while ahead, EIP-3074 opened up a new path towards full AA. However, there is a risk to diverge onto the dangerous path of EOA Enshrinement. To prevent this it’s critical to support EIP-3074 with the addition of EIP-5003 in the upcoming hardfork. This builds a sturdy bridge to full AA, avoiding the risk of fragmentation and leading Ethereum safely towards the bright future of smart accounts.
The Ethereum Core Developers have aligned to incorporate EIP-3074 in the upcoming Prague/Electra hardfork, targeted for Q4 2024 / early 2025. EIP-3074 allows externally owned accounts (EOAs) to delegate their transaction capabilities to smart contracts, enhancing functionalities like transaction sponsorship and batch processing. While EIP-3074 serves as a short-term fix to improve the UX of EOAs, most of the Ethereum community is still aligned that the end-goal is to move all users to smart accounts. EIP-3074 brings some improvements to smart accounts and is a stepping stone towards full AA, but it absolutely requires EIP-5003 to fully get there. Without EIP-5003, we would enshrine EOAs further.
EIP-3074 modifies the Ethereum protocol to allow EOAs to delegate (AUTH) their transaction capabilities to smart contracts (so-called “invokers”), enabling additional functionality like:
These features were so far only accessible to smart accounts. Which meant that applications had to build two different user experiences for EOAs and smart accounts.
EIP-3074 primarily empowers EOAs, but it also brings some new beneficial side-effects for smart accounts:
While EIP-3074 allows to delegate control over an EOA to smart accounts, the original private key can still authorize any action on the EOA. This prevents EIP-3074 to introduce any (security) features such as:
There is a viable migration path discussed that would close the gap and allow a full migration of existing EOAs into smart accounts: EIP-5003. This upgrade extends EIP-3074, allowing for deployment of smart contract code at the address of the EOA, while revoking access of the original private key in the process. This allows fully converting EOAs into smart accounts while keeping the public address, soulbound tokens and non-transferable reputation and generally guaranteeing forward-compatibility with the future account abstraction roadmap.
However, there have been some concerns on the viability of this upgrade path, particularly related to edge-cases where the private key, that was assumed to be revoked, could still authorize actions on the account:
Over the last months, the community leaned into ERC-4337 as a first step towards full AA. It allowed kick-starting a developer ecosystem, stabilizing the spec and tooling for bundlers and creating learnings. It was subsequently planned to implement native AA on L2s (RIP-7560) and eventually bring a similar EIP on L1.
ERC-4337 initially got started with hugely inflated expectations, which helped gather momentum and attract developers. There have been positive signals that we are close to reaching the tipping point, with major exchanges (OKX, Coinbase) and wallets (Trust, Metamask) investing into support for ERC-4337. But the inflated expectations also meant the inevitable sobering moment that full AA (via RIP-7560 or similar) will take longer than initially expected, as the appetite / urgency for L2s to work on RIP-7560 is still small today.
AA-related Ethereum standards/upgrade going through their respective “hype-cycles”
This is one of the reasons, parts of the community turned to EIP-3074. As the migration of users to smart accounts seemed too far out, some voices became loud to at least partially fix EOAs in the meantime. EIP-3074 does not replace ERC-4337, they are actually @yoav/eip-3074-erc-4337-synergy">quite synergetic, but it does shift the focus further away from ERC-4337/RIP-7560.
In order for full AA to be feasible, we need to find ways to migrate existing EOAs. As EOAs still make up a majority of users in Ethereum, impacting priorities of developers and teams. This can happen in two ways, (1) have users manually switch to smart accounts, or (2) implement ways to turn EOAs into smart accounts.
The inclusion of EIP-3074 carries the risk that it will bring us further away from achieving full AA. It enhances EOAs, so it negatively contributes to (1), while not actually solving for
(2).
Without EIP-5003, EIP-3074 is currently lacking any clear pathway to full AA and has a net-negative impact on AA adoption. Even more, after the Prague/Electra hard fork there might not be a window to include AA-related upgrades for another 2 years as focus will shift towards verkle trees. Therefore we should include EIP-5003 in the Prague/Electra hardfork, to prevent having EOAs enshrined further.
Effects of EIP-3074 on AA roadmap, with/without EIP-5003
The debate around EIP-3074 is a critical juncture for Ethereum’s account abstraction trajectory.
Original AA Roadmap
Experiment with application-level AA (ERC-4337), showcase native AA via L2s (RIP-7560) and eventually bring native AA to L1. Solve for legacy EOAs via migration transaction (EIP-5003, EIP-7377 or even force-migration). This path is likely to take significantly longer than expected and is held back by EOA dominance.
What we SHOULD be doing instead
Implement EIP-3074, but also include EIP-5003 in the Prague/Electra hardfork, allowing for a full migration to smart accounts. This allows not leaving legacy users behind while ensuring that they don’t hold up AA efforts.
What we are currently planning to do (Worst case)
Only implement EIP-3074, and risk enshrining EOAs, or at least holding up the adoption of smart accounts significantly.
The cross-road of Ethereum’s AA roadmap (thanks to Vitalik for the improvement ideas)
This article is reprinted from [safe], the original title is “EIP-3074: Risks/Opportunities for Smart Account Adoption (and why we need EIP-5003)”, the copyright belongs to the original author [Lukas Schor, Richard Meissner, Tobias Schubotz]. If you have any objections to the reprint, please contact the Gate Learn team, the team will handle it as quickly as possible according to the relevant process.
Disclaimer: The views and opinions expressed in this article are solely those of the authors and do not constitute any investment advice.
Other language versions of the article are translated by the Gate Learn team. Unauthorized copying, dissemination, or plagiarism of translated articles is not allowed without specific reference to Gate.io.
Forward the Original Title:EIP-3074: Risks/Opportunities for Smart Account Adoption (and why we need EIP-5003)
On the journey to full account abstraction (AA) on Ethereum, we stand at a crossroads: ERC-4337 lies behind us, while ahead, EIP-3074 opened up a new path towards full AA. However, there is a risk to diverge onto the dangerous path of EOA Enshrinement. To prevent this it’s critical to support EIP-3074 with the addition of EIP-5003 in the upcoming hardfork. This builds a sturdy bridge to full AA, avoiding the risk of fragmentation and leading Ethereum safely towards the bright future of smart accounts.
The Ethereum Core Developers have aligned to incorporate EIP-3074 in the upcoming Prague/Electra hardfork, targeted for Q4 2024 / early 2025. EIP-3074 allows externally owned accounts (EOAs) to delegate their transaction capabilities to smart contracts, enhancing functionalities like transaction sponsorship and batch processing. While EIP-3074 serves as a short-term fix to improve the UX of EOAs, most of the Ethereum community is still aligned that the end-goal is to move all users to smart accounts. EIP-3074 brings some improvements to smart accounts and is a stepping stone towards full AA, but it absolutely requires EIP-5003 to fully get there. Without EIP-5003, we would enshrine EOAs further.
EIP-3074 modifies the Ethereum protocol to allow EOAs to delegate (AUTH) their transaction capabilities to smart contracts (so-called “invokers”), enabling additional functionality like:
These features were so far only accessible to smart accounts. Which meant that applications had to build two different user experiences for EOAs and smart accounts.
EIP-3074 primarily empowers EOAs, but it also brings some new beneficial side-effects for smart accounts:
While EIP-3074 allows to delegate control over an EOA to smart accounts, the original private key can still authorize any action on the EOA. This prevents EIP-3074 to introduce any (security) features such as:
There is a viable migration path discussed that would close the gap and allow a full migration of existing EOAs into smart accounts: EIP-5003. This upgrade extends EIP-3074, allowing for deployment of smart contract code at the address of the EOA, while revoking access of the original private key in the process. This allows fully converting EOAs into smart accounts while keeping the public address, soulbound tokens and non-transferable reputation and generally guaranteeing forward-compatibility with the future account abstraction roadmap.
However, there have been some concerns on the viability of this upgrade path, particularly related to edge-cases where the private key, that was assumed to be revoked, could still authorize actions on the account:
Over the last months, the community leaned into ERC-4337 as a first step towards full AA. It allowed kick-starting a developer ecosystem, stabilizing the spec and tooling for bundlers and creating learnings. It was subsequently planned to implement native AA on L2s (RIP-7560) and eventually bring a similar EIP on L1.
ERC-4337 initially got started with hugely inflated expectations, which helped gather momentum and attract developers. There have been positive signals that we are close to reaching the tipping point, with major exchanges (OKX, Coinbase) and wallets (Trust, Metamask) investing into support for ERC-4337. But the inflated expectations also meant the inevitable sobering moment that full AA (via RIP-7560 or similar) will take longer than initially expected, as the appetite / urgency for L2s to work on RIP-7560 is still small today.
AA-related Ethereum standards/upgrade going through their respective “hype-cycles”
This is one of the reasons, parts of the community turned to EIP-3074. As the migration of users to smart accounts seemed too far out, some voices became loud to at least partially fix EOAs in the meantime. EIP-3074 does not replace ERC-4337, they are actually @yoav/eip-3074-erc-4337-synergy">quite synergetic, but it does shift the focus further away from ERC-4337/RIP-7560.
In order for full AA to be feasible, we need to find ways to migrate existing EOAs. As EOAs still make up a majority of users in Ethereum, impacting priorities of developers and teams. This can happen in two ways, (1) have users manually switch to smart accounts, or (2) implement ways to turn EOAs into smart accounts.
The inclusion of EIP-3074 carries the risk that it will bring us further away from achieving full AA. It enhances EOAs, so it negatively contributes to (1), while not actually solving for
(2).
Without EIP-5003, EIP-3074 is currently lacking any clear pathway to full AA and has a net-negative impact on AA adoption. Even more, after the Prague/Electra hard fork there might not be a window to include AA-related upgrades for another 2 years as focus will shift towards verkle trees. Therefore we should include EIP-5003 in the Prague/Electra hardfork, to prevent having EOAs enshrined further.
Effects of EIP-3074 on AA roadmap, with/without EIP-5003
The debate around EIP-3074 is a critical juncture for Ethereum’s account abstraction trajectory.
Original AA Roadmap
Experiment with application-level AA (ERC-4337), showcase native AA via L2s (RIP-7560) and eventually bring native AA to L1. Solve for legacy EOAs via migration transaction (EIP-5003, EIP-7377 or even force-migration). This path is likely to take significantly longer than expected and is held back by EOA dominance.
What we SHOULD be doing instead
Implement EIP-3074, but also include EIP-5003 in the Prague/Electra hardfork, allowing for a full migration to smart accounts. This allows not leaving legacy users behind while ensuring that they don’t hold up AA efforts.
What we are currently planning to do (Worst case)
Only implement EIP-3074, and risk enshrining EOAs, or at least holding up the adoption of smart accounts significantly.
The cross-road of Ethereum’s AA roadmap (thanks to Vitalik for the improvement ideas)
This article is reprinted from [safe], the original title is “EIP-3074: Risks/Opportunities for Smart Account Adoption (and why we need EIP-5003)”, the copyright belongs to the original author [Lukas Schor, Richard Meissner, Tobias Schubotz]. If you have any objections to the reprint, please contact the Gate Learn team, the team will handle it as quickly as possible according to the relevant process.
Disclaimer: The views and opinions expressed in this article are solely those of the authors and do not constitute any investment advice.
Other language versions of the article are translated by the Gate Learn team. Unauthorized copying, dissemination, or plagiarism of translated articles is not allowed without specific reference to Gate.io.