Accounts abstraction (AA) has been a key factor contributing to the influx of new users to crypto wallets.
The idea of account abstraction was first proposed in 2015 by Vitalik Buterin, founder of Ethereum, with the aim of creating flexible and adaptable accounts controlled by smart contracts.
Accounts on Ethereum are objects that constitute the state of the blockchain, including nonce, ETH balance, contract code-hash, and storage.
Solana accounts are more like storage capable of holding any type of data ranging from tokens to a program’s state variables such as integers, public keys, and entire programs.
Account Abstraction models describe the process of abstracting away the rigid and built-in structures of accounts within a blockchain, allowing them to be more flexible and adaptable.
Developers can utilize AA models to create customized and fluid user-friendly on-chain accounts where they can define their own custom logic for storing assets and executing transactions over the network.
Account Abstraction is an ongoing area of research and development on Ethereum, while Solana has already implemented it through features like Program Derived Addresses (PDAs) and Cross-Program Invocations (CPI).
One of the core use cases for AA models is the implementation of smart wallets, which offers social account recovery, permissionless asset management, and other advanced features.
However, one of the challenges to AA models is restraint in limitation of program composability, a practice typically referred to as security through obscurity.