What’s the difference between Account Abstraction and Multi-party Computation (MPC)?
Account abstraction (AA) and multi-party computation (MPC) based wallets are two different concepts in blockchain and cryptography, each with its own purpose, advantages, and implementation. They are not mutually exclusive, and can be used together to provide additional layers of security, flexibility, and convenience for crypto wallet services and their users.
Before I dive into how they can work together, I’ll quickly cover what they are individually.
Account abstraction is a term primarily used in the context of the Ethereum network. The main idea of account abstraction is to abstract away the need for a specific type of account (i.e. externally owned account vs smart contract account) and treat all accounts equally. The idea being, to improve the user experience for account holders.
Under the current Ethereum model, there are two types of accounts:
1. Externally Owned Accounts (EOAs)
EOAs are controlled by private keys and have no associated code.
2. Smart Contract Accounts
Smart Contract Accounts have associated code and are controlled by this code.
With account abstraction, the difference between these two types of accounts can be obscured. This would allow users to pay gas costs with tokens other than ETH, and to implement more complex access-control logic such as multi-party approvals.
Multi-Party Computation (MPC) Based Wallets
MPC-based wallets refer to wallets that use multi-party computation to securely manage the private keys associated with externally owned accounts. In an MPC-based wallet, the private key is never fully assembled; instead, it is divided into multiple “key shares”, each of which is stored on a different device or held by a different party.
One of the main advantages of this approach is that it allows for more secure key management: even if one share is compromised, the key as a whole remains secure. Additionally, this structure allows for the implementation of policies that require the cooperation of multiple parties (or devices) to sign transactions. You may already be familiar with multisig wallets, so similar to a multisig, MPC-based wallets can be set up to allow multi-party approvals, but in addition to this there are a host of other benefits which make MPC-based wallets far superior to multisig wallets.
Account Abstraction and MPC-Based Wallets: Can They Work Together?
AA and MPC are not mutually exclusive and can be used together for greater flexibility, security, and convenience.
With account abstraction, developers can build superior user experiences for wallet users that don’t require the use of pesky seed phrases, and users can use tokens other than Ethereum for transaction fees. This can be combined with MPC to securely manage the private keys required to authorize transactions from these wallets. The combination of AA and MPC provides users with greater operational flexibility and enhanced security.