590 likes | 606 Views
Explore the challenges of round-efficient multi-party computation protocols in point-to-point networks compared to broadcast channels. Discover implications for round complexity and protocol composition in secure multi-party computation.
E N D
Round-Efficient Multi-Party Computation in Point-to-Point Networks Jonathan Katz Chiu-Yuen Koo University of Maryland
Round-Efficient Multi-Party Computation in Point-to-Point Networks Jonathan Katz Chiu-Yuen Koo University of Maryland
Motivation • Suppose we want to obtain a practical protocol for a given task • The protocol needs to be round-efficient • If we know round-efficient solutions exist, we can then turn our attention to improving other aspects (such as computation)
Motivation • Suppose we want to obtain a practical protocol for a given task • The protocol needs to be round-efficient • If we know round-efficient solutions exist, we can then turn our attention to improving other aspects (such as computation) • How do we know?
Motivation • Approach 1: • Determine whether round-efficient solutions are possible after we are given the task • Given task A, ask if round-efficient solutions for task A exist • Given task B, ask if round-efficient solutions for task B exist • Given task C, ask if round-efficient solutions for task C exist • …………………………………………………… • Repetitive! • Can we solve the problem once and for all?
Motivation • Approach 2: • Determine whether round-efficient solutions for secure multi-party computation (MPC) exist • A MPC protocol can solve almost every task • A round-efficient solution for MPC implies the existence of round-efficient solutions for (almost) every task!
Round-Efficient Multi-Party Computation in Point-to-Point Networks
Round-Efficient Multi-Party Computation in Point-to-Point Networks
Our Motivation • Previous work on round complexity (for the most part) has assumed a broadcast channel “for free” • A broadcast channel enables one party to send the same message to all parties • But in point-to-point networks, a broadcast channel does not come for free; it is emulated by a broadcast protocol • High overhead
Our Motivation • Previous work on round complexity (for the most part) has assumed a broadcast channel “for free” • A broadcast channel enables one party to send the same message to all parties • But in point-to-point networks, a broadcast channel does not come for free; it is emulated by a broadcast protocol • High overhead
Our Motivation • If the broadcast channel is emulated by a deterministic protocol, then the round complexity will be linear in the number of corrupted parties [FL82] • This will not lead to sub-linear-round protocols
Our Motivation • If the broadcast channel is emulated by arandomized protocol, then each round of broadcast can be emulated in an expected constant number of rounds (assuming honest majority) [FM88, FG03, KK06] • But the exact constant is rather high • If broadcast is used in more than one round, then we need to handle sequential composition of protocols without simultaneous termination — leads to complication and a substantial increase in round complexity [LLR02, BY03, KK06]
Our Motivation • If the broadcast channel is emulated by a randomized protocol, then each round of broadcast can be emulated in an expected constant number of rounds (assuming honest majority) [FM88, FG03, KK06] • But the exact constant is rather high • If broadcast is used in more than one round, then we need to handle sequential composition of protocols without simultaneous termination — leads to complication and a substantial increase in round complexity [LLR02, BY03, KK06]
Our Motivation Sequential composition of protocols without simultaneous termination • In a broadcast protocol, each party is assumed to start at the same round • However, parties may leave at different rounds • So parties may start execution of the next protocol in different rounds • If protocols are executed sequentially, additional rounds are needed to handle the composition
Our Motivation • If the broadcast channel is emulated by a randomized protocol, then each round of broadcast can be emulated in an expected constant number of rounds (assuming honest majority) [FM88, FG03, KK06] • But the exact constant is rather high • If broadcast is used in more than one round, then we need to handle sequential composition of protocols without simultaneous termination — leads to complication and a substantial increase in round complexity [LLR02, BY03, KK06]
Our Motivation • If the broadcast channel is emulated by a randomized protocol, then each round of broadcast can be emulated in an expected constant number of rounds (assuming honest majority) [FM88, FG03, KK06] • But the exact constant is rather high • If broadcast is used in more than one round, then we need to handle sequential composition of protocols without simultaneous termination — leads to complication and a substantial increase in round complexity [LLR02, BY03, KK06]
Our Motivation For example, • Consider the setting in which at most one-third of parties are corrupted • Micali and Rabin show a Verifiable Secret Sharing (VSS) protocol that uses 16 rounds but only a single round of broadcast • Compiling the above protocol for a point-to-point network, it runs in an expected 31 rounds • Any protocol that uses broadcast twice will require an expected 55 rounds after being compiled for a point-to-point network
Our Motivation • If the ultimate goal is a round-efficient protocol for point-to-point networks, then it is preferable to focus on minimizingthe number of rounds in which broadcast is used rather than minimizing the total number of rounds
Our Motivation • This raises the following question: Is it possible to construct a constant-round (or sub-linear-round) MPC protocol that uses only a single round of broadcast? (This is clearly optimal…) • We resolve the above question in the affirmative in a number of settings
The Rest of the Talk • Prior work • Results and constructions • Future directions
Prior Work • Broadcast/Byzantine agreement • Verifiable secrete sharing (VSS) • General secure MPC
Prior Work • Broadcast/Byzantine agreement • Reviewed in the last talk • Verifiable secrete sharing (VSS) • General secure MPC
Prior Work • Broadcast/Byzantine agreement • Verifiable secrete sharing (VSS) [CGMA85] • General secure MPC
Prior Work Round complexity of VSS (Let t be the number of corrupted parties; n be the total number of parties) • [GIKR01]: • n > 4t : Efficient 2-round protocol • n > 3t : No 2-round protocol exists Efficient 4-round protocol Inefficient3-round protocol • [FGGRS06]: Efficient 3-round protocol for n > 3t
Prior Work But… • Previous work studies the round complexity of VSS under the assumption that a broadcast channel is available • As we have seen, this is not necessarily the best way to optimize round complexity of VSS in a point-to-point setting
Prior Work • Broadcast/Byzantine Agreement • Verifiable Secrete Sharing (VSS) • General Secure MPC
Prior Work • Secure MPC • Allows a set of parties with private inputs to compute some joint function of their inputs. • Feasibility results • [BGW88, CDD88]: MPC for n > 3t in point-to point networks • [RB89, B89, CDDHR99]: MPC for n > 2t assuming a broadcast channel
Prior Work • Round-efficient solutions • [BMR90, DI05]: constant-round MPC for n> 2t assuming a broadcast channel and one-way functions • Both protocols can be converted to expected O(1)-round protocols in point-to-point networks using authenticated broadcast
Prior Work • Round-efficient solutions • [BMR90, DI05]: constant-round MPC for n> 2t assuming a broadcast channel and one-way functions • Both protocols can be converted to expected O(1)-round protocols in point-to-point networks using authenticated broadcast but the constant obtained is very high, on the order of hundreds of rounds
Prior Work • Round-efficient solutions • [GIKR01]: 3-round MPC for t < n/4 assuming a broadcast channel and one-way functions • The protocol uses only a single round of broadcast • Resilience is not optimal • [GL02]: round-efficient protocols for t < n • Fairness and output delivery not guaranteed
The Rest of the Talk • Prior work • Results and constructions • Future directions
Network Assumptions • Synchronous communication • Pairwise private and authenticated channels • A broadcast channel • With the understanding that it will be emulated by a round-efficient broadcast sub-routine • Recall, our goal is to use broadcast only once • Honest majority • n > 3t : do not assume setup • n > 2t : assume a PKI • Adaptive adversary
Results and Constructions • We start by sketching a MPC protocol that uses only a single round of broadcast • Call (a, b, c) a random multiplication triple if • c = ab • a, b, and c have been “shared” among the parties • a and b are uniformly distributed
Results and Constructions • Beaver shows that if, ina “setup” phase, parties share their inputs along with sufficiently-many multiplication triples,
Results and Constructions • Beaver shows that if, ina “setup” phase, parties share their inputs along with sufficiently-many multiplication triples, then the parties can carry out secure MPC in a round-efficient manner without using any further invocations of broadcast • Our task is now reduced to implement the setup phase using only a single round of broadcast
Results and Constructions Implementation of the setup phase • Recall the concept of moderated protocol from the previous talk • There is a distinguished party Pm known as the moderator • Given a protocol , designed under the assumption of a broadcast channel, the moderated version ’ does not use broadcast
Results and Constructions Implementation of the setup phase • ’ has the following properties: • By the end of the protocol, each party Pi outputs a binary value trusti(m) • If the moderator Pm is honest, then each honest party outputs trusti(m)= 1 • If an honest party that outputs trusti(m)=1, then achieves the functionality of ’
Results and Constructions Implementation of the setup phase • Previous talk has illustrated how to compile a protocol into its moderated version ’ while increasing the round complexity by at most a constant multiplicative factor
Results and Constructions Implementation of the setup phase • Let i denote some constant-round protocol, designed assuming a broadcast channel, that shares the input value of party Pi as well as sufficiently-many multiplication triples. • Such protocols are constructed in, e.g., [BGW88, B89, RB89, B91, GRR98, CDDHR99, DI05] • Compile iinto a moderated protocol i’ where Pi acts as the moderator
Results and Constructions • Implementation of the setup phase 1. Run protocols {1’,…,n’ } in parallel 2. Each party Pi broadcasts {trusti(1),…, trusti(n)} 3. A party Pi is disqualified if t or fewer parties broadcast trustj(i)=1. If a party is disqualified, then a default value is used as input of Pi 4. Let i* be the minimum value such that Pi* is not disqualified. The set of random multiplication triples that the parties will use is taken to be the set that was generated in i*
Results and Constructions • Implementation of the setup phase 1. Run protocols {1’,…,n’ } in parallel 2. Each party Pi broadcasts {trusti(1),…, trusti(n)} 3. A party Pi is disqualified if t or fewer parties broadcast trustj(i)=1. If a party is disqualified, then a default value is used as input of Pi 4. Let i* be the minimum value such that Pi* is not disqualified. The set of random multiplication triples that the parties will use is taken to be the set that was generated in i* • The above protocol uses broadcast in only one round
Results and Constructions • Implementation of the setup phase 1. Run protocols {1’,…,n’ } in parallel 2. Each party Pi broadcasts {trusti(1),…, trusti(n)} 3. A party Pi is disqualified if t or fewer parties broadcast trustj(i)=1. If a party is disqualified, then a default value is used as input of Pi 4. Let i* be the minimum value such that Pi* is not disqualified. The set of random multiplication triples that the parties will use is taken to be the set that was generated in i* • An honest party will not be disqualified
Results and Constructions • Implementation of the setup phase 1. Run protocols {1’,…,n’ } in parallel 2. Each party Pi broadcasts {trusti(1),…, trusti(n)} 3. A party Pi is disqualified if t or fewer parties broadcast trustj(i)=1. If a party is disqualified, then a default value is used as input of Pi 4. Let i* be the minimum value such that Pi* is not disqualified. The set of random multiplication triples that the parties will use is taken to be the set that was generated in i* • If Pi is not disqualified, then i’ achieves the functionality of i
Results and Constructions • Implementation of the setup phase 1. Run protocols {1’,…,n’ } in parallel 2. Each party Pi broadcasts {trusti(1),…, trusti(n)} 3. A party Pi is disqualified if t or fewer parties broadcast trustj(i)=1. If a party is disqualified, then a default value is used as input of Pi 4. Let i* be the minimum value such that Pi* is not disqualified. The set of random multiplication triples that the parties will use is taken to be the set that was generated in i* • The above protocol implements the setup phase using only one round of broadcast
Results and Constructions • Combined with [BGW88, CDDHR99, DI05], we obtain MPC using only one round of broadcast and: • O(depth of the circuit) rounds, assuming n > 3t (without computational assumption) • O(1) rounds, assuming n > 3t and the existence of one-way functions • O(1) rounds, assuming n > 2t, the existence of one-way functions, and a PKI
Results and Constructions • However, a naïve compilation will yield MPC protocols with relatively high round complexity • Existing construction of idoes not attempt to minimize the number of rounds of broadcast • for n > 3t, each round of broadcast in i is replaced by six rounds of interaction in i’ • for n > 2t, it is eight rounds • We construct a new set of protocols that minimize their use of broadcast as well as the total number of rounds
Results and Constructions • In the following, we illustrate one of the techniques used to reduce the number of rounds of broadcast— without compilation • We show how to obtain a 6-round VSS protocol that uses 2 rounds of broadcast from the 4-round VSS protocol in [GIKR01] (which uses 3 rounds of broadcast) • In the paper, this is improved to 7 rounds with 1 round of broadcast
Results and Constructions VSS – informal definitions • There is a dealer D with an input s. A VSS protocol is a 2-phase protocol: • Sharing phase: D shares s • Reconstruction phase: The parties reconstruct a value s’ • If D is honest, then: • During the sharing phase, the joint view of corrupted parties is independent of s • In the reconstruction phase, s is reconstructed
Results and Constructions VSS – informal definitions • If D is dishonest: • The view of the honest parties at the end of the sharing phase defines a value s’ that will be reconstructed in the reconstruction phase
Results and Constructions • Review of the [GIKR01] protocol: • Round 1: • D selects a random bivariate polynomial F(x,y) of degree t in each variable, s.t. F(0,0) = s; sends F(x,i) = gi(x) and F(i,y) = hi(y) to Pi. • Pi sends to Pj a random pad rij.