Multi-Party Computation (MPC)
Multi-party computation (MPC) is a cryptographic protocol that allows a group of participants to collaboratively compute a function over their private inputs without revealing those inputs to one another
2. It sits at the intersection of data sharing, processing, and privacy, enabling the extraction of new information from aggregate data while maintaining the confidentiality of the individual components
2.
How MPC Works
The core mechanism of MPC involves splitting secret data into multiple "shares" or "masked inputs"
3. These pieces are distributed among different computational nodes or participants
34.
- Data Splitting: A user's secret data (e.g., a number) is divided into several parts. For example, a value of 100 might be split into three parts: 20, 80, and 0 3.
- Distributed Computation: Each node receives one part of the data from every participant and performs a computation on those specific pieces 3.
- Aggregation: The results from each node are combined to produce a final public output 34.
- Privacy Preservation: Throughout this process, no single node or participant has access to the full original data of any other user 3. The system is designed so that there are infinite combinations that could sum up to a secret value, preventing malicious actors from compromising individual secrets 2.
Key Applications in Blockchain
MPC is widely used in the cryptocurrency ecosystem to eliminate single points of failure and enhance security:
- Private Key Management: MPC is used to split a private key among multiple authorized parties 2. This is often implemented through Threshold Signature Schemes (TSS), where a transaction can only be authorized if a specific threshold of parties (e.g., 2 out of 3) provide their partial signatures 2.
- MPC Wallets: These wallets divide secret keys between many parties using cryptographic codes, offering enhanced security compared to traditional hot or cold storage methods 5.
- Trusted Setups: MPC is used in "ceremonies" for privacy-preserving technologies like ZK-SNARKs (e.g., Zcash's Powers of Tau) to ensure that as long as at least one participant is honest, the setup remains secure 2.
- Cross-Chain Authorization: Projects apply MPC to authorize messages and transactions across different blockchain networks 2.
Comparison with Other Technologies
Benefits and Trade-offs
MPC provides
distributed trust, as nodes collaborate without needing to trust each other or access raw data
3. Because MPC is typically executed off-chain, it can be extended to an arbitrary number of members without increasing on-chain security costs
2. However, MPC implementations can sometimes slow down processes and require more communication between parties compared to simpler, less secure methods
5.