Ethereum Account Abstraction with BitGo
BitGo currently provides customers with arguably the most flexible Ethereum wallet in the market today. The combination of both multi-sig and TSS wallets enables transparency, fee saving, recoverability, accountability and customizability based on client needs. This is further exemplified with MetaMask Institutional (MMI) and DeFi access initiatives which makes it seamless for users to get the full benefits of permissionless finance, while keeping their assets secured with an array of wallet type options. Now, with account abstraction, they’re about to get even better.
What is Account Abstraction?
Currently, in Ethereum, there are two types of accounts: externally owned accounts (EOAs) and contract accounts.
Account abstraction is a proposed feature for the Ethereum blockchain that aims to make contract accounts more flexible and versatile. With Ethereum’s new improvement proposal EIP-4337, account abstraction will be supported on the Ethereum Mainnet without making core consensus level changes.
An EOA is an account controlled by a single private key that can be used to send transactions and interact with smart contracts on the Ethereum Network. If the key(s) backing the EOA are lost or stolen, the account cannot be recovered.
A contract account is an account controlled by a smart contract, which can be designed to have multiple owners or administrators, each with their own set of private keys. This allows for multisig configurability, which requires multiple parties to sign off on a transaction before it can be executed. In addition, contract accounts can also be designed to have built-in account recovery mechanisms, such as allowing designated “recovery” addresses or pre-determined trusted parties to authorize transactions of the account in case the owner loses their private keys or their account becomes compromised.
Interactions with contract accounts must be invoked by EOA accounts. Contract accounts cannot behave on their own, they need an EOA to trigger initial action. In the current system, only EOAs can pay for transaction fees, which limits the functionality of contract accounts. Account abstraction aims to solve this problem by enabling contract accounts to handle transaction fees. With account abstraction, contract accounts would be able to directly pay for transaction fees, which would make them more versatile and allow for a more streamlined experience.
Overall, replacing EOAs with contract accounts can provide additional security features that make the use of blockchain technology more secure and user-friendly.
BitGo‘s Answer
BitGo currently provides multiple features related to EVM account abstraction. Let’s look at some of the use cases envisioned for EIP-4337 and see how BitGo’s APIs play a role in the ecosystem.
Account recoverability
While account recoverability is one of the primary use cases for account abstraction, it may matter less to BitGo customers since BitGo already offers robust account recoverability features through its open-source multisig/TSS tools, which allow for easy wallet recovery in case of lost passwords or private keys, as well as support for wallet sharing among multiple users.
It’s worth noting that even though BitGo offers strong account recoverability features, the flexibility provided by account abstraction could still be beneficial for some customers. Different social recoverability features enable customers to recover their accounts through social means, and can be programmed directly into a smart contract for greater customization and control. For example, a customer could set up a smart contract that requires multiple trusted contacts to confirm their identity before an account can be recovered.
The ability to recover an account in case a password is forgotten or a private key is lost is one of the biggest use cases for account abstraction. With this additional flexibility, different social recoverability features can be programmed directly into the smart contract. The BitGo wallet in its current form already provides this benefit. BitGo is the only provider with multisig/TSS open-source tools, allowing you to recover your wallet in case BitGo goes away, passwords are lost, or wallet sharing across multiple users is required.
Browser wallets and dApp interactions
With account abstraction there is a lot of flexibility in who pays the fees for a transaction. This enables a much more user friendly dApp interaction. With account abstraction, dApps (or any other sponsor) can potentially pay the usage costs of user interactions. Additionally, network fees can be paid in various ERC20 tokens and do not have to be paid in ETH.
BitGo’s flexible key/keyshare creation mechanisms already provide for different types of wallet configurations and fee payment mechanisms like sponsored transactions through our fee address. Clients load up the fee address once and all subsequent transactions are sponsored.
One of the main drawbacks is that contract based fees continue to be more expensive than EOA accounts and Account Abstraction is yet to solve this problem fully.
Bundling transactions
Smart contracts in general provide ways by which multiple transactions can be bundled together. This gives a good dApp user experience and saves on cost in many cases. BitGo wallets already provide this feature and depending on how many transactions are bundled it is possible to spend even less than 21000 gwei on a per transaction basis.
Security upgradability
With account abstraction, the validation mechanism for a wallet/account can be upgraded if needed. This provides a higher level of security and the verification logic can use different signature schemes. This mechanism is currently not available on the BitGo wallet mainly because transaction fees were optimized for this particular need. BitGo will be looking into this in more detail and will provide clients with different options as new needs arise.
Key Takeaways
Account abstraction is a promising feature for the Ethereum blockchain that aims to enhance the flexibility and versatility of contract accounts. With Ethereum’s improvement proposal EIP-4337, account abstraction can be supported on the Ethereum mainnet without making core consensus level changes. The adoption of account abstraction can be a significant step towards a more robust and efficient blockchain ecosystem on Ethereum.
While BitGo’s wallets already offer many features of account abstraction, including robust account recoverability features through its open-source multi-sig/TSS tools, we believe in supporting the broader Ethereum ecosystem by leveraging and promoting the adoption of account abstraction. We will continue to support account abstraction to ensure that BitGo users have access to the latest and most innovative features in the blockchain space.
To learn more about BitGo’s offerings, including ETH Account Abstraction, schedule time with our team.
About BitGo
BitGo is the leading infrastructure provider of digital asset solutions, offering custody, wallets, staking, trading, financing and settlement out of regulated cold storage. Founded in 2013, BitGo is the first digital asset company to focus exclusively on serving institutional clients. BitGo is dedicated to advancing a digital financial services economy that is borderless and accessible 24/7. With multiple Trust companies around the world, BitGo is the preferred security and operational backbone for more than 1,500 institutional clients in 50 countries, including many of the world’s top brands, cryptocurrency exchanges and platforms. BitGo also secures approximately 20% of all on-chain Bitcoin transactions by value and is the largest independent digital asset custodian. For more information, please visit www.bitgo.com.
©2024 BitGo Inc. (collectively with its affiliates and subsidiaries, “BitGo”). All rights reserved. BitGo Trust Company, Inc., BitGo Inc., and BitGo Prime LLC are separately operated, wholly-owned subsidiaries of BitGo Holdings, Inc., a Delaware corporation headquartered in Palo Alto, CA. No legal, tax, investment, or other advice is provided by any BitGo entity. Please consult your legal/tax/investment professional for questions about your specific circumstances. Digital asset holdings involve a high degree of risk, and can fluctuate greatly on any given day. Accordingly, your digital asset holdings may be subject to large swings in value and may even become worthless. The information provided herein is not intended for distribution to, or use by, any person or entity in any jurisdiction or country where such distribution or use would be contrary to law or regulation. BitGo is not directing this information to any person in any jurisdiction where the publication or availability of the information is prohibited, by reason of that person’s citizenship, residence or otherwise.