Secure two-party computation
Secure two-party computation (2PC) is sub-problem of secure multi-party computation (MPC) that has received special attention by researchers because of its close relation to many cryptographic tasks. The goal of 2PC is to create a generic protocol that allows two parties to jointly compute an arbitrary function on their inputs without sharing the value of their inputs with the opposing party. One of the most well known examples of 2PC is Yao's millionaire problem, in which two parties, Alice and Bob, are millionaires who wish to determine who is wealthier without revealing their wealth. Formally, Alice has wealth , Bob has wealth , and they wish to compute without revealing the values or .
Yao's garbled circuit protocol for two-party computation  only provided security against passive adversaries. 2PC protocols that are secure against active adversaries were proposed by Lindell and Pinkas, Ishai, Prabhakaran and Sahai  and Nielsen and Orlandi. Another solution for this problem, that explicitly works with committed input was proposed by Jarecki and Shmatikov.
The security of a two-party computation protocol is usually defined through a comparison with an idealised scenario that is secure by definition. The idealised scenario involves a trusted party that collects the input of the two parties over secure channels and returns the result if none of the parties chooses to abort. The cryptographic two-party computation protocol is secure, if it behaves no worse than this ideal protocol, but without the additional trust assumptions. This is usually modeled using a simulator. The task of the simulator is to act as a wrapper around the idealised protocol to make it appear like the cryptographic protocol. The simulation succeeds with respect to an information theoretic, respectively computationally bounded adversary if the output of the simulator is statistically close to, respectively computationally indistinguishable from the output of the cryptographic protocol. A two-party computation protocol is secure, if for all adversaries there exists a successful simulator.
- Yao, A. C. (1982). "Protocols for secure computations": 160–164. doi:10.1109/SFCS.1982.38.
- Lindell, Y.; Pinkas, B. (2007). "An Efficient Protocol for Secure Two-Party Computation in the Presence of Malicious Adversaries". 4515: 52–78. doi:10.1007/978-3-540-72540-4_4.
- Ishai, Y.; Prabhakaran, M.; Sahai, A. (2008). "Founding Cryptography on Oblivious Transfer – Efficiently". 5157: 572–591. doi:10.1007/978-3-540-85174-5_32.
- Nielsen, J. B.; Orlandi, C. (2009). "LEGO for Two-Party Secure Computation". Theory of Cryptography. Lecture Notes in Computer Science. 5444. pp. 368–386. doi:10.1007/978-3-642-00457-5_22. ISBN 978-3-642-00456-8.
- Jarecki, S.; Shmatikov, V. (2007). "Efficient Two-Party Secure Computation on Committed Inputs". 4515: 97–114. doi:10.1007/978-3-540-72540-4_6.
|This cryptography-related article is a stub. You can help Wikipedia by expanding it.|