Secure Multi-Party Computations
Secure Multi-Party Computations
An Introduction
Christian Zielinski
Last updated in 2015
1 / 52
Secure Multi-Party Computations
Outline
1 Introduction
The problem
Motivation and applications
2 Basic Terminology
Corrupted parties
Definitions of security
3 Protocols for Multi-Party Computations
Overview
Passive secure protocol
Active secure protocol
References
2 / 52
Secure Multi-Party Computations
Introduction
Outline
1 Introduction
The problem
Motivation and applications
2 Basic Terminology
Corrupted parties
Definitions of security
3 Protocols for Multi-Party Computations
Overview
Passive secure protocol
Active secure protocol
References
3 / 52
Secure Multi-Party Computations
Introduction
The problem
Secure multi-party computations
• Consider n parties, with private inputs x1, . . . , xn
• They want to compute a function f (x1, . . . , xn) in a secure way
• Security means here
• Privacy: The respective inputs remain private
• Correctness: The output is guaranteed to be correct
• Fairness: Each party learns the result
• This should even hold when some parties try to cheat
• The following presentation is primarily based on Ref. [1, 2]
4 / 52
Secure Multi-Party Computations
Introduction
The problem
Questions at hand
• How to carry out computations without revealing the inputs?
• How to deal with cheating (corrupted) parties?
• How to define security formally?
• What is the upper limit of corrupted parties allowed?
• How does this bound depend on the assumption made about the
attacker?
5 / 52
Secure Multi-Party Computations
Introduction
Motivation and applications
Motivation and applications
• Multi-party computations (MPCs) have a wide
range of applications
• Auctions
• Several parties are bidding for a product
• Winning party and maximum bid should be determined, without
revealing bids of other parties
• Electronic voting schemes
• Each party votes for a candidate
• Only the result is made public, the votes remain secret
• Yao’s Millionaires’ Problem, c.f. Ref. [3]
• A group of millionaires wants to find out who is the richest
• Nobody wants to reveal how wealthy they are
6 / 52
Secure Multi-Party Computations
Basic Terminology
Outline
1 Introduction
The problem
Motivation and applications
2 Basic Terminology
Corrupted parties
Definitions of security
3 Protocols for Multi-Party Computations
Overview
Passive secure protocol
Active secure protocol
References
7 / 52
Secure Multi-Party Computations
Basic Terminology
Corrupted parties
Adversaries
• To discuss secure MPCs, we have to define security
• Hence we have to make assumptions about cheating parties
• Typically one models them by considering an adversary
• This adversary can take over (corrupt) certain subsets of parties
• We assume one adversary, assuming the worst-case scenario of
coordinated corrupted parties (monolithic adversary)
• We assume that at the beginning of the protocol honest (i.e. not
corrupted) parties do not know which parties are corrupted
8 / 52