This week, Ethereum core developers have just approved the inclusion of EIP-3074 in the upcoming Pectra hard fork (scheduled to launch later this year or early 2025).
EIP-3074 is the next important step in the development of Ethereum’s future account model. It is a short-term remedy before the launch of ERC-4337, but it significantly improves the user experience (UX) level.
Let’s take a look at the contents of EIP-3074:
Fundamental principles of account abstraction
Externally Owned Accounts (EOAs) are the most basic form of Ethereum accounts, directly controlled by private keys and without associated code. EOAs can send ETH and interact with smart contracts, but they lack more complex functionalities.
Unlike EOAs, Smart Contract Accounts (SCAs) are directly controlled by their contract code, through which users can hold and control funds and make decisions automatically based on other contract calls. This makes SCAs widely applicable and seen as the future of digital wallets.
In this context, Account Abstraction (AA) refers to a series of development work aimed at making Ethereum accounts more flexible. The goal is to reduce the differences between EOAs and SCAs, make account behavior more programmable, and meet a wider range of user needs.
Ethereum’s AA roadmap
Ethereum’s AA roadmap includes multiple parallel efforts to address different challenges.
Currently, there is consensus on embracing ERC-4337 more deeply as the main development direction. ERC-4337 is an AA standard that supports various functionalities not typically available to EOAs, such as paying Gas fees with tokens other than ETH, more complex account recovery mechanisms, and advanced transaction batching and scheduling capabilities.
However, ERC-4337 will be complemented and enhanced by other approaches, such as EIP-5003 (a proposed method for a permanent transition from EOA to SCA) and EIP-3074, which paves the way for EOAs to delegate transaction execution rights to SCAs.
What is EIP-3074?
EIP-3074 introduces a new Ethereum opcode. This system allows EOA users to authorize smart contracts to perform operations on their behalf in a single transaction, while retaining the security and control of their private keys without permanently transferring them.
The user-friendly utilities brought by these new opcodes include:
– Transaction batching: processing multiple transactions (such as many token transfers) as a single operation.
– Sponsored transactions: enabling third parties to pay transaction fees, providing a new way for applications to help users cover Gas fees.
– Conditional transactions: connecting multiple steps through a complex transaction structure and achieving conditional execution, such as only executing a transaction when specific conditions are met without conducting separate transactions for each step.
– Meta-transactions: signing transactions that can be submitted by another party, such as offline signed transactions or transactions signed from different interfaces without using ETH as Gas fees.
– Delegated security: allowing trusted callers to manage transactions, enabling users to benefit from advanced security models, such as those involving multisignature setups.
Overall, these features can bring a range of improvements to user experience, such as DAO sponsoring its members’ transactions or wallets introducing automatic payments, subscription services, and programmatic withdrawals.
On the other hand, EIP-3074 also brings significant security risks, such as new users making mistakes due to misunderstandings about the workings of the new caller system or an invaded caller executing unauthorized transactions. However, these issues can be addressed through clear information transmission implemented by wallets around EIP-3074 signatures.
The bigger picture
ERC-4337 focuses on creating a powerful off-chain transaction relay network and is currently a guiding star on Ethereum’s AA roadmap, while EIP-3074 achieves more direct on-chain flexibility and execution abstraction with existing EOAs.
Both are steps towards achieving full AA but cater to different needs in the Ethereum ecosystem. The smooth integration of EIP-3074 into the existing Ethereum ecosystem and the acceptance by wallets and applications will be crucial, and continuous improvements to address security issues and ensure safe and user-friendly operations will be key in the future.