🧪

Depths of Account Abstractions

This article covers everything that you need to know about account abstraction. I start explaining what is EOA and will end with multisig concepts and paymasters.

Account abstraction is remarkable feature that enables developers to craft a better user experience in a rather overengineered space of web3. We will cover a high level glimpse of account abstraction and talk why it came into being and where this set of tools is taking us.

Lets begin with basics

If you're leaning towards self-custody, your first stop is connecting to an EOA. Take, for instance, the Metamask extension—it serves as your custodian, safeguarding your assets by storing private keys in your browser. The flexibility extends to exporting your private key for importation elsewhere, facilitating asset transfer seamlessly. For an added layer of security, Ledger keeps private keys in a hardware device.

Yet, the EOA realm isn't the sole sanctuary for asset storage. We're well aware that smart contracts are also adept at asset management, spanning ETH, ERC20, ERC721, and more. Beyond storage, they wield the power to execute functions that influence asset states.

But what if a smart contract could double as a user account? That's the premise behind smart contract accounts. However, they fall short of acting as EOAs because every contract call necessitates EOA initiation—until account abstraction emerged, that is. With account abstraction in play, a wallet empowered by this feature can kickstart transactions. We'll circle back to this notion shortly.

Lets look into a couple of projects that use account abstraction.

Gnosis safe

Gnosis safe is a smart account wallet that runs on Ethereum and requires a minimum number of people to approva a transaction. This has been widely used in DAO treasuries where having multiple parties to accept moving funds is essential.

Lukso UPs

Lukso blockchain has recently launched their Universal Profile (UP) browser extension with Smart Account functionality. Universal Profiles try to provide a more coherent, secure, and user-friendly experience for individuals or entities interacting with the blockchain. They offer more flexibility and are designed to be updatable, meaning changes or improvements can be made without affecting the overall structure of the profile.

Daimo banking smart accounts

Daimo accounts are Ethereum accounts.

Under the hood, they're a new and much-improved type called an ERC-4337 contract account. Each device you add to your account stores a secret key. When you send money, your phone first authenticates you with FaceID or similar, then cryptographically signs the transaction using that key.

Daimo is non-custodial. Your keys, your coins.

Daimo offers stronger security than traditional wallets. Keys live in dedicated hardware made for storing secrets, such as Secure Enclave on iPhone, and never leave your device.

Fixing web3 user experience

EOA wallet experience is created by nerds for nerds. There's just a small, quite technical, number of people are comfortable dealing with private keys and writing down seed phrases.

What is more, for any catastrophic reason when seed phrase of your wallet is lost and you no longer have access to your device there is no way you can perform any kind of recovery of your funds. Self custody is innovative as well as it can be a curse.

How can we bring the best of self custody and web2 sign in experience combined together? This is exactly what account abstraction offers.

Multicalls

If you used a DeFi app before you might have noticed how annoying it is to click multiple approve buttons, signs etc. With Multicall you can do multiple tx calls in one atomic transaction.

Paymasters (gas abstraction)

What is more, there is a smart way how to handle gasless transactions using account apstraction and paymaster provider like Pimlico. Its a third party service that pays gas fees on behalf of a user. User can enabled erc-20 tokens like USDC to cover the costs, for more trad-fi approach one can pay with a credit card.

You can build different tier accounts where you group users into tiers where usage is completely sponsored, some are partially covered and discounted.

Final words

In conclusion, this article has delved into the intricate realm of account abstraction, providing a comprehensive understanding of its significance in the Web3 landscape. From elucidating the basics of EOAs to exploring advanced concepts like multisig and paymasters, we've traversed the spectrum of account abstraction's impact.

Account abstraction stands as a remarkable feature empowering developers to enhance user experiences within the complex Web3 ecosystem. By dissecting its origins, functionalities, and real-world applications, we've shed light on the transformative potential it holds.

Projects like Gnosis Safe, Lukso, and Daimo Smart Accounts exemplify the diverse ways account abstraction is leveraged to streamline operations and bolster security in blockchain interactions.

Moreover, account abstraction tackles the daunting challenge of user experience in Web3 by bridging the gap between self-custody and the seamless sign-in experiences of Web2. Multicalls offer a solution to the cumbersome process of multiple transaction approvals, while paymasters introduce a novel approach to gasless transactions, enhancing accessibility and usability.

As the Web3 landscape continues to evolve, account abstraction stands at the forefront, paving the way for a more intuitive, secure, and inclusive decentralized future.