What is MPC, Multi-Party Computation and Why is it Relevant in the Blockchain Industry?

The What

Multi-party computation (MPC) is a cryptographic technique that allows multiple parties to jointly compute a function over their inputs while keeping those inputs private. It uses complex encryption to distribute computation between multiple parties. MPC enables those multiple parties – each holding their own private data – to evaluate a computation without ever revealing any of the private data held by each party (or any otherwise related secret information). The two basic properties that an MPC protocol must ensure are:

  • Privacy: No party learns anything about the other parties’ inputs beyond what can be inferred from the output.
  • Correctness: The output is correct.

MPC has various applications such as secure voting systems, secure auctions, secure data sharing, and privacy-preserving machine learning.

The Why

In the blockchain world, a private key is used to sign transactions and prove ownership of a blockchain address and everything that is owned by that address, including cryptocurrencies. A private key is a long string of letters and numbers, unique to that address. Private keys should be kept secret and secure because anyone who has access to the private key can access the assets associated with the address. In other words, any user with the private key can steal your cryptocurrencies and digital assets.

MPC is used as a multi-signature technique by distributing the private key among multiple parties. Each party holds a fragment of the private key and they work together to reconstitute the private key and sign transactions. This makes it more difficult for an attacker to steal the key because they would need to compromise multiple parties in order to obtain the key. In some cases the private key can be recreated by a subset of the parties who hold a fragment of the key. For instance 2 out of 3 parties.

MPC is a common technique for institutions that provide custody services to their end users. No institution wants to lose a private key. Doing so would mean losing access to all of a user’s assets. They securely spread the key fragments out across geographically diverse parties, sometimes computer systems, and sometimes individuals. This way, in the case of a catastrophe with one of these parties, for instance where a key fragment and any backups of that key fragment are lost, the remaining parties can still reconstruct the private key and sign transactions.

Even when MPC is used, there are also typically other backups of the private key. After all, the institution still needs to consider other disaster scenarios. For example, if an MPC implementation required 2-of-3 signers and 2 of the parties suffered catastrophes, a transaction could not be signed using MPC. The private key would need to be brought out of backup storage – likely a more secure, completely offline backup – to regain access.

.

This entry was posted in blockchain, crypto, cryptocurrency and tagged , , . Bookmark the permalink.

Leave a comment