Computational cryptography › Public-key encryption and key exchange › Classical number theory › Elliptic-curve discrete log
SECURE COMPUTATIONPrimitive

MPC, dishonest majority

In plain words

Several parties compute a result from their private inputs and nobody learns anything else, even if all but one of them cheat.

The idea: When most participants might cheat, secret sharing alone isn't enough, so these protocols use oblivious transfer wherever two parties' secrets meet. In Yao's approach, one party encrypts the whole computation as a "garbled circuit", and the other evaluates it after picking up the keys for their own inputs through oblivious transfer. Your input stays hidden even if everyone else colludes.

Why it matters: Used for shared custody of keys and for analyzing private data.

The details

On the map: Yao / GMW: OT + garbled circuits

Yao's garbled circuits (two parties) and GMW (many parties)[1, 2] let parties compute any function on private inputs while staying secure even if all but one participant are corrupted.

They need oblivious transfer, so public-key assumptions, plus symmetric cryptography. Where you meet it: threshold wallets and key management, private set intersection, sealed-bid auctions (Danish sugar-beet auction, 2008)[3], privacy-preserving analytics.

Rests on

If any of these breaks, this breaks too.

If it falls

If this breaks, these break with it.

Nothing on the map depends on it: it is an end point, something people use directly.

References

  1. Andrew Chi-Chih Yao. How to generate and exchange secrets. 27th Annual Symposium on Foundations of Computer Science (sfcs 1986). doi:10.1109/sfcs.1986.25
  2. O. Goldreich, S. Micali and A. Wigderson. How to play ANY mental game. Proceedings of the nineteenth annual ACM conference on Theory of computing - STOC '87, 1987. doi:10.1145/28395.28420
  3. Peter Bogetoft, Dan Lund Christensen, Ivan Damgård et al. Secure Multiparty Computation Goes Live. Financial Cryptography and Data Security, 2009. doi:10.1007/978-3-642-03549-4_20