Understanding Account Abstraction
Did you know that you can now carry out multiple transactions at once from your wallet at a scheduled time? 🤔
That is where magic in the latest Innovation comes in
Before now, using a blockchain like Ethereum, requires you to own an account or wallet
address for transactions.
There were two main types of accounts: Externally owned Accounts
(EOA) and Contract Accounts (CA).
EXTERNALLY OWNED ACCOUNTS
EOA are the accounts most of us use. We have direct control through private keys. Think of it as your key to accessing the blockchain. These private keys, give us a unique signature that we can use to interact with applications on the blockchain.
Metamask, Coinbase and other popular wallet accounts utilize EOA.
CONTRACT ACCOUNTS
CA on the other hand are also known as Smart Accounts and are controlled by smart contract code. They can also do more complex things. A contract account serves as an independent account facilitating interaction among different Ethereum smart contracts and their stakeholders. The utilization of contract accounts ensures a stable and seamless framework for conducting business on the Ethereum network.
EOA’s have a few limitations.
For instance, they cannot perform multiple operations at once,
and if someone steals your private keys, they can take your assets.
Scary, right?
This is where Account Abstraction comes in.
What is Account Abstraction(AA)?
Account abstraction is a proposed upgrade of the Ethereum network to ERC -4337.
This upgrade provides flexibility that allows users to establish their own transaction rules for their crypto wallets.
Comparison of Transaction Processes between EOA and AA
EOA
đź“ŚEvery transaction on the blockchain starts with an EOA, when the sender initiates a transaction.
đź“ŚThe sender needs to have enough ether to cover gas fees, and then sign the transaction with their private keys
đź“ŚThis transaction is then broadcast to the network where miners validate and add it to a block.
This process can be frustrating, especially for people with little or no knowledge about blockchain technology.
But all these changes with Account Abstraction. Here, instead of signing a transaction, you create a contract account which defines the rules
on how a transaction should be processed in the future.
AA
đź“ŚFLEXIBILITY: You can design how your contracts should be designed
đź“Ś ENHANCED SECURITY: With AA, you can write the rules, to make it harder for unauthorized transactions.
For example, you can require multiple signatures for each transaction (multisig), or only allow certain transactions at certain times.
📌GOOD USER EXPERIENCE: You don’t need to worry about technical details like gas payment, and contract interactions.
đź“ŚMORE OPPORTUNITIES FOR SMART CONTRACT DEVELOPMENT: Developers can create sophisticated contracts.
AN ILLUSTRATION 👇🏾
Let’s say you’re a business owner, with AA you can;
âś… Set daily transaction limits
âś… Combine multiple transactions to save fees
âś… Establish account recovery options.
âś… Require multiple approvals for business transactions.
âś… And even automate payments on specific days (salary days).
âś… You can also set specific salary amounts based on the names, and accounts of your employees, etc.
Account Abstraction (AA) is an upgrade that gives you the power to define your own transaction rules for your crypto wallet.
Once this contract is written and deployed on the network, it automatically starts to interact according to the rules you initiated.
A few protocols that are currently using account abstraction include:
@biconomy
@cresowallet
@PlenaFinance
@argentHQ
@HoldstationW
@AmbireWallet
Imagine a blockchain where you can customize your account exactly the same ways as your smartphone, have full control of your funds and also design the rules of interaction of those funds.
Interesting right?
All these are achievable with the power of upgraded smart contracts. Thanks to Vitalik Buterin for this wonderful innovation. There is so much we can achieve with account abstraction and this is just the beginning.