New use cases and potential risks of the upcoming Ethereum account abstraction, EIP-4337, EIP-2938 in the Shanghai hard fork.
Background on EIP-4337 and EIP-2938
The ERC-4337 is the Ethereum Improvement Proposal for the account abstraction using a mempool. It allows smart contract-based Ethereum accounts or addresses. While such accounts have been possible before, e.g. in the form of Gnosis Safe multisignature wallets, this ERC will add some features to the Ethereum core proposal to increase the usability of Ethereum.
EIP-4337 is paired with the EIP-2938 proposal. The latter will introduce the new EVM op-codes needed to support the account abstraction.
EIP-4337 will enhance and create new features for Ethereum wallets. These changes are specially targeted to the end-user self-custodial wallets. Namely:
- Gasless transactions: the user pays the transaction cost in non-ETH tokens like USDC, and the block producer will then swap any USDC to ETH behind the scenes to cover the gas cost.
- Account recovery: Deploying multisignature wallets with social recovery features will be more gas efficient.
- Hardware signers: iPhone and Android mobile phones have security enclave chips. If the account abstraction makes it possible to use this chip to sign crypto transactions, it would effectively turn everyone's mobile phone into a hardware wallet (without the need to build a separate Solana Phone).
- More gas-efficient arbitrage trading.
Note that some of these use cases have already been available on Ethereum, but they are mostly very expensive regarding account creation gas cost.
- Gnosis multisignature wallets have been around for more than five years
- Gas Station Network has supported gasless transactions for more than four years now
One of the novel use cases is a new form of DEX where some of the trade processing cost is more heavily pushed towards Ethereum nodes, and more cost efficient arbitrage trades. Note that the transaction still needs to be processed, so the computation load does not change much). From EIP-2938:
Criticism about EIP-4337
The history of EIP-4337 is not entirely linear. There have been many competing proposals over time. You can find a good summary in this Ismael Darvish's 2017 blog post.
The EIP-4337 will make the Ethereum core protocol and wallets more complex. It is likely that new bugs, attack vectors and scams will be introduced that will make people likely to lose their cryptocurrency.
Further, it will make developing Ethereum wallets more complex, reducing the available feasible wallets for the end user. Also, Ethereum nodes will be complex, as account abstraction user operation simulation logic needs to be added. This and other complex logic changes could easily introduce unforeseen denial-of-service attack vectors where the impact would be halting or severely slowing down the Ethereum blockchain
ERC-4337 accounts will also not work on some existing smart contracts, but the impact should be small.
Ethereum is enjoying high fees. These high fees will not go down in the foreseeable future. Thus, it is unlikely this proposal will make Ethereum any more attractive to users. In Ethereum forks and layer twos like Arbitrum, Optimism, Avalanche C-Chain, Polygon or BNB Chain that are enjoying more end users, the benefits of adopting the proposal will be higher. The research work is done for Ethereum mainnet, but it will be the least likely blockchain to benefit from the account abstraction.
The social recovery and seedless wallet advocates often miss the point that if it is not your seed phrase, it is someone else's seed phrase.
EIP-4337 will likely mitigate the earlier bad design decisions like ERc-20
approve() that have led to thousands of scammed users. However, the problematic token standard logic is only hidden, not fixed. Thus it is likely that one form of scam is traded just another.
Other blockchains have had similar features without the need for EIP-4337 complexity. For example, the smart contract-based accounts have been held back by Ethereum gas cost - this has not been an issue for any other blockchain.
EIP-4337 is hoped to change the user experience for the better. However, its impact on the Ethereum mainnet might be light due to the Ethereum mainnet's high transaction cost for end users. Thus, adding complex protocol changes with a high risk for the protocol and are unlikely to cause any increase in real-world usage may not have a good risk-reward balance.
For example, StarkNet recognises the challenges in the account abstraction as an afterthought:
The real use will likely be on other layer ones or layer twos. Because these blockchains are more or less incompatible with Ethereum mainnet in the first place, the question is, why not fix issues properly in the deeper levels of EVM and blockchain core?