Secure Systems Group
Menu×

Wiki Home

Secure multiparty computation

Definition

Secure multiparty computation (MPC) is a family of cryptographic protocols in which several parties, each holding a private input, jointly compute an agreed function and learn its output and nothing else about one another’s inputs. The two-party case (2PC) is the usual setting for client-server problems. Two technique families dominate: garbled circuits, where one party encrypts a boolean circuit gate by gate and the other evaluates it obliviously, and secret sharing, where each value is split into shares held by different parties who compute on the shares, often aided by oblivious transfer and by correlated randomness produced in an input-independent offline phase. Linear operations are cheap under secret sharing; the nonlinear ones (comparisons, maxima, exponentials) usually cost extra rounds of interaction.

Security is stated in the simulation paradigm: a protocol is secure if a corrupted party’s view can be reproduced by a simulator given only that party’s own input and the output, so the protocol reveals nothing beyond the output. The adversary model fixes how a corrupted party behaves. A semi-honest (honest-but-curious) adversary follows the protocol but tries to infer extra information from its transcript; a malicious adversary may deviate arbitrarily. Semi-honest security is the weaker and cheaper guarantee. The recurring cost of MPC is communication: protocols exchange data across many rounds, so bandwidth and round-trip latency, rather than local compute, often set the running time, especially over wide-area networks. This is the axis along which homomorphic encryption, where one party computes locally on ciphertexts with no interaction, makes the opposite trade.

Papers that use this concept

Variants and traps

  • Semi-honest security assumes the corrupted party follows the protocol; it does not protect against a party that deviates. Upgrading to malicious security generally costs more.
  • “Non-interactive” is a property of the whole protocol, not of a primitive: MPC is interactive by construction, while a scheme built only on homomorphic encryption can be non-interactive.

See also