Over the past 12 months if you talk to anyone about gasless transactions, improved UX, secure recovery and general user onboarding the conversation inevitably gravitates towards account abstraction and more specifically ERC 4337. ERC4337 is amazing, so is EIP 3074 and Vitalik's recent EIP 7702. All of these proposals give developers and users more flexibility around account management making interacting with any EVM chain easier and more secure.
The Essential Role of EOAs in Account Abstraction
Something that is often lost in conversations about account abstraction is the role that EOAs will continue to play under any currently proposed form of account abstraction. The EVM allows for both EOAs and smart contracts to execute transactions, but only EOAs can initiate a transaction and in cases where transactions are relayed by a downstream, managed EOA (e.g. meta transactions, 4337 tx bundling) a signature from the initiating EOA is still required to authorize the transaction. Another super power of EOAs is that you can also use them cross-chain out of the box! In all cases EOAs remain paramount to using the EVM.
Secure EOAs on Mobile Devices
As a team fully focused on bringing crypto developers and users out of the browser and onto their phones, we've spent a lot of time thinking about and implementing secure, performant EOAs on mobile devices. It turns out most modern phones have similar security properties to hardware wallets, they have a segregated, secure computing environment where cryptographic keys can be generated, stored and used without being exposed to any external actors. Properly using this secure computing environment in conjunction with secure cloud backup gives users an EOA that is similar to what they use on a hardware wallet with the added benefit of cloud backup.
The Progressive Wallet Journey: From EOAs to Smart Contract Accounts
A secure, on device EOA is the first step in a user's progressive wallet journey. This EOA allows a user to onboard quickly and without cost. You can also send gasless transactions from these accounts! These accounts can be used for things like identity in a social app or small transactions without huge financial implications. In some cases users will hit a point where it makes sense for them to graduate to a smart contract wallet for additional security, more granular control over their transactions or any of the other awesome 4337 features being imagined. If this proggressive approach to account managament on mobile excites you, stay tuned! We are currently working on rolling out progressive 4337 support in the Rally Protocol SDK and will have some fun announcements over the next couple of weeks and at the Rally Mobile Summit at Consensus.
About RallyProtocol
RallyProtocol is an all-in-one Web3 mobile toolkit that enables developers to create seamless, end-to-end onchain experiences for native mobile apps, featuring embedded wallets and gasless transactions. Whether you’re building an iOS or Android app in Flutter, Unity, React Native, Expo, Swift, or Kotlin, our mission is to give developers the power to create user-friendly mobile UX with fewer taps and zero web3 touchpoints. Want to learn more? Dive into our developer documentation here.