Multi-party Computation
Multi-party Computation (MPC) refers to a process where more than a single organization analyzes subsets of data and the results of each are combined to produce a final result. Often MPC relies on sending more than a single piece of information from one organization to the other, but remains unaware (“oblivious”) to what information matches the receiver’s data set.
A simple example is where Alice wants to compare information with Bob, but not disclose Alice’s own information to Bob. By sending an array of data containing true signal and noise and Bob sending back an array of true signal and noise mapped to each item of the array, Alice can gain some knowledge from Bob without either party knowing what true data the other actually had.
The increase in computation cost and increase in processing latency has made MPC applications prohibitive for scaled data processing and especially for real-time decisioning. Moreover, given Alice and Bob are intentionally lying to one another (potentially sending true information and assuredly sending made up data), there is no guarantee that either of them actually send true information to the other.