Ethereum co-founder Vitalik Buterin, along with collaborators Sam Wilson, Ansgar Dietrichs, and Matt Garnett, has proposed a new Ethereum Improvement Proposal (EIP) numbered 7702, designed to significantly enhance the functionality of Ethereum’s externally owned accounts (EOAs). EIP-7702 aims to integrate smart contract functionalities temporarily into EOAs, a transformative concept that might redefine user interactions on the Ethereum network.
Evolution Of Account Abstraction On Ethereum
Ethereum’s account model includes two primary types: externally owned accounts (EOAs) and contract accounts. EOAs are controlled by private keys and have limited capabilities and security features, which restrict their use in more complex transactions typically reserved for smart contracts.
To address these limitations, several EIPs have been introduced:
- EIP-4337: Implemented in March 2023, it established a framework allowing smart contracts to act as accounts that can validate and execute transactions, known as User Operations (UserOps). This proposal significantly enhanced user experience by integrating advanced functionalities like biometrics, especially in applications developed by platforms such as Polygon and Coinbase.
- EIP-3074: Proposed before EIP-4337, it aimed to empower EOAs by allowing them to delegate their transaction authority to smart contracts temporarily. This proposal included two new opcodes, AUTH and AUTHCALL, to facilitate this delegation, although it raised security concerns regarding potential misuse by malicious contracts.
- EIP-5003: Building on EIP-3074, this proposal introduced the AUTHUSURP opcode to enable a permanent transformation of an EOA into a smart contract account, addressing some compatibility issues with EIP-4337 but also creating potential fragmentation in account abstraction methodologies.
Innovative Aspects of EIP-7702
The introduction of EIP-7702 is a response to the complex landscape shaped by its predecessors. It proposes a leaner, more integrated approach by allowing EOAs to temporarily adopt smart contract code during transactions, thereby combining the security and simplicity of EOAs with the versatility of smart contracts.
EIP-7702 has risen pic.twitter.com/bwInPdWaE5
— ً (@lightclients) May 7, 2024
Here’s how EIP-7702 works: At the start of a transaction, the EOA’s contract_code field is temporarily set to a specific smart contract code necessary for the transaction. This code executes the transaction, leveraging smart contract functionalities. Upon completion of the transaction, the contract_code is cleared, reverting the EOA to its original state.
This process bypasses the need for new opcodes and the associated hard forks, as it uses callable functions (verify for AUTH and execute for AUTHCALL) instead, which can integrate seamlessly with the existing Ethereum infrastructure.
Jarrod Watts, a developer relations engineer at Polygon, highlighted the significance of EIP-7702, remarking, “Vitalik just proposed EIP-7702. It’s one of the most impactful changes Ethereum is going to have… EVER.” The community’s reaction underscores the transformative potential of EIP-7702 in bridging the gap between traditional EOAs and more dynamic smart contract accounts.
“EIP-7702 represents a fusion of the flexibility of smart contracts with the foundational security model of EOAs,” Watts commented. “It’s a significant stride towards making Ethereum more accessible and secure for everyday users.”
Vitalik just proposed EIP-7702.
It's one of the most impactful changes Ethereum is going to have… EVER.
So, here's everything you need to know about how it works and how we got here:
— Jarrod Watts (@jarrodWattsDev) May 8, 2024
If adopted, EIP-7702 could fundamentally change how users interact with decentralized applications (dApps) and manage digital assets on the Ethereum network. By enabling EOAs to temporarily operate with the advanced features of smart contracts, EIP-7702 promises a seamless, more secure user experience that could accelerate the adoption of Ethereum’s more sophisticated capabilities.
However, the success of EIP-7702 depends on thorough testing, community consensus, and careful consideration of security implications, particularly how temporary smart contract codes are managed and revoked.
At press time, ETH traded at $2,997.