What is MPC?

MPC, or Multi-Party Computation, is an advanced cryptographic method that allows multiple parties to jointly compute a result from their respective data without revealing their data to each other. In other words, it enables several parties to collaborate on a computation using their data without ever disclosing that data among themselves.

Origin and Utility

As a subfield of cryptography, the origins of MPC date back to the 1970s. Unlike traditional cryptographic techniques that aim to protect information from an intruder, MPC ensures data confidentiality among participants within the same system.

Illustration with a Simple Example of MPC

Imagine three workers at the same company who want to know their average salary without revealing how much each one earns. MPC uses a technique called additive secret sharing to divide the secret among the parties. Here’s how it works:

  1. Division of Salaries into 3 Fragments: Each worker divides their salary into three fragments.

  2. Distribution of Fragments Among Other Workers: Each worker distributes two of their three fragments to the other two workers, ensuring that communications between the parties remain confidential.

  3. Calculation of Individual Sums: Each party calculates the sum of the fragments they possess by adding the two fragments they received to the one they kept from their own salary.

  4. Calculation of the Total Sum and the Average: Each worker reveals their individual sum, and then they proceed to calculate the average.

Diagram

Thanks to this process, no worker knows the individual salaries of the others. A robust MPC protocol should prevent anyone from deceiving others or sharing secrets they are not supposed to disclose, even if some participants do not follow the rules.

MPC Wallet

MPC is now being used to secure crypto wallets, leading to the rise of MPC wallets. Eg: Binance Web3

How It Works:
In practice, instead of storing a single private key, the key is divided into multiple fragments distributed among several parties. Each party uses its fragment to sign transactions without ever reassembling the complete key, making the wallet much more difficult to compromise.

Avantages

Confidentialité accrue : les données sont chiffrées dans toutes les parties du processus et il n’est pas nécessaire de faire confiance à des tiers.

Sécurité accrue : supprime les points de défaillance uniques. La clé secrète est répartie entre plusieurs parties et emplacements.

Plus pratique : vous pouvez conserver vos actifs en ligne. Plus besoin de stockage hors ligne.

Inconvénients

Plus lent : une sécurité accrue entraîne souvent des performances plus lentes, car elle nécessite un travail de calcul supplémentaire, en particulier lors de la génération de clés privées et de leurs partages secrets.

Coûts plus élevés : le partage et le calcul de données entre plusieurs parties (et parfois plusieurs réseaux) peuvent augmenter considérablement les coûts.