secure efficient multiparty computing of multivariate polynomials and applications

29
Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications Dana Dachman-Soled, Tal Malkin, Mariana Raykova, Moti Yung

Upload: kathie

Post on 30-Jan-2016

29 views

Category:

Documents


6 download

DESCRIPTION

Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications. Dana Dachman-Soled, Tal Malkin, Mariana Raykova , Moti Yung. x 1. x 2. x 3. x 4. x 1. F 1 (x 1 ,x 3 ,x 3 ). x 2. x 3. F 2 (x 1 ,x 3 ,x 3 ). F 4 (x 1 ,x 3 ,x 3 ). x 4. F 3 (x 1 ,x 3 ,x 3 ). - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

Secure Efficient Multiparty Computing of Multivariate Polynomials and

Applications

Dana Dachman-Soled, Tal Malkin,Mariana Raykova, Moti Yung

Page 2: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

2

x1

x2

x3

x4

Page 3: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

3

x1

x2

x3

x4

F1(x1,x3,x3)

F2(x1,x3,x3)

F3(x1,x3,x3)

F4(x1,x3,x3)

Page 4: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

4

Secure Multiparty Computation

How to compute a function on the private inputs of multiple parties not leaking more than the result?

Secure Multiparty Computation

How to compute a function on the private inputs of multiple parties not leaking more than the result?

Page 5: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

5

Secure Multiparty Computation

Feasible – [Yao82], [GMW87], [CDv88], [BG89], [BG90], [Cha90], [Bea92], …

Not Efficient – communication and computation proportional to circuit size

Secure Multiparty Computation

Feasible – [Yao82], [GMW87], [CDv88], [BG89], [BG90], [Cha90], [Bea92], …

Not Efficient – communication and computation proportional to circuit size

Page 6: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

6

x1

x2

x3

x4

Multivariate Polynomials

Page 7: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

7

x1

x2

x3

x4

Multivariate Polynomials

Applications

Page 8: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

8

x1

x2

x3

x4

Multivariate Polynomials

Applications

MultipartySet Intersection

Page 9: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

9

x1

x2

x3

x4

Multivariate Polynomials

Applications

Linear Algebra matrix arithmetic, inverse, determinant, Eigen values

Page 10: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

10

x1

x2

x3

x4

Multivariate Polynomials

Applications

Statistics functions average, standard deviation, variance, chi-square test, computing Pearson’s correlation coefficients

Page 11: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

11

x1

x2

x3

x4

Multivariate Polynomials

Applications

Taylor series approximation trigonometric functions, logarithms, exponents, square root

Page 12: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

12

Outsourced computation• many workers• at least one honest

Page 13: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

13

Outsourced computation•Computation on shares,•Reconstruction of output

Page 14: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

Our results

• Multiparty computation protocol for functionalities that can be represented as multivariate polynomials– Improvement of generic complexity for multiple parties Left

as open problem in FM10• Security:

– Against malicious majority – Proofs in the standard simulation model

• Black box construction from homomorphic encryption with a natural property….– Instantiated through threshold Paillier encryption (decisional

composite residuosity)

14

Page 15: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

Our Results

• Efficiency:– Communication complexity – FM10 subexponential in the

number of parties, we achieve fully polynomial (in all parameters) complexity:

• Broadcast complexity• Round table complexity

– Constant number round table rounds• Application construction: Multiparty Set Intersection

– Improve complexity of existing multiparty solutions KS05, SS09, CJS10

15

Page 16: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

Building Blocks

• Input sharing using committed Shamir/Reed-Solomon codes

PX(0) = X shares PX(1), …, PX(D)• Vector Homomorphic Encryption

ENC(m1; r1) ENC(m⊗ 2; r2) = ENC(m1 + m2; r1 r⊕ 2)ENC(m; r)c = ENC(c · m; r c)⊙

– Instantiation: threshold Paillier encryption

16

Page 17: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

Building Blocks

• Polynomial code commutativityInterpolate (Poly-Eval (inputs shares)) =Poly-Eval (Interpolate (inputs shares)) = Poly-Eval(inputs)

• Incremental encrypted polynomial evaluation– Each monomial M = c i=1 hi(inputs of party i)

– b0 = ; = ⊕

17

bi+1bi+1Enc(c)Enc(c) bibi hi(inputs of party i)hi(inputs of party i)

#parties

Encryption of partial evaluation of M with inputs from first i+1/i parties

Constant for homomorphic property

Page 18: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

Building blocks• Lagrange Interpolation Protocol Over Encrypted Values:

– given A > d+1 encrypted points(1, ENCpk(y1, r1)), . . . (A, ENCpk(yA, rA))

– check that they lie on poly of degree dENCpk(yi,ri) = j=1 (ENCpk(yj,rj)) Lj(i)

– synchronized randomness• Randomness Interpolation

– given (1,y1),...,(A,yA),r1,...,rd+1

– compute rd+2, . . . , rA

– Encrypted interpolation holds for [i, ENCpk(yi, ri)]1≤i≤A

d+1

18

Page 19: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

Efficient Input Preprocessing

• Polynomial Degree Reduction• Change of variables• Polynomial Q(y) of degree n

Q(y)Q(y) Q(y0,y1,y2 …, ylog n )Q(y0,y1,y2 …, ylog n )

y0 = yy1 = y2

y2 = y4

……….

ylog n = y2log n

Deg: n Deg: log n

y

19

Page 20: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

Proof of Knowledge and Verification

• Correct computation of new variables• Correct degree of input sharing polynomials

Prover: x1,…,xn

Common: c1,…,cn, L(x1,…,xn) L ci = ENC(xi)

Input Proof Output

Verifier: Accept/Reject

enc(r1)enc(r1) enc(r2)enc(r2) enc(rn)enc(rn)

c1 * enc(r1)c1 * enc(r1) c2 * enc(r2)c2 * enc(r2)… cn * enc(rn)cn * enc(rn) (x1+r1,…,xn+rn) L

(r1,…,rn) L

open

0

1

ci * enc(ri) = enc(xi+ri) 20

Page 21: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

Protocol Outline

21

Page 22: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

• Efficient preprocessing for each variable in the multivariate polynomial

• Commit to shares of new variables

22

Page 23: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

• Each party Pi contributes his inputs – in each monomial s for each share j

= ·

23

bi+1,j,sbi+1,j,s bi,j,s h⊕ i(share j of Pi)bi,j,s h⊕ i(share j of Pi) Enc(0, ri,j,s)Enc(0, ri,j,s)

ri,j,s generated with randomness interpolation protocol

Page 24: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

• Each party re-randomizes the final output shares S1, …, S10kD

– Randomizng polynomial Pj,0(0) = 0

– Shares (1,Pj,0(1)),...,(10kD,Pj,0(10kD))

– Re-randomized output shares = ·

24

S’i S’i Si Si j=1 ENCpk(Pj,0(i);rj,i)j=1 ENCpk(Pj,0(i);rj,i)m

rj,kD+2,...,rj,10kD generated with randomness interpolation protocol

Page 25: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

• All parties verify that the encrypted output shares Si lie on a polynomial of degree kD

• Parties select a subset of the shares of size k and decommit corresponding shares

• Parties verify the computation of the open shares

25

P1(1)P1(1)

P2(1)P2(1)

Com(P1(2))Com(P1(2))

Com(P2(2))Com(P2(2))

Com(P1(3))Com(P1(3))

Com(P2(3))Com(P2(3))

P1(1)P1(1)

P2(4)P2(4)

Com(P1(10kD))Com(P1(10kD))

Com(P2(10kD))Com(P2(10kD))

Verify computation

Verify computation

Verify degree

Verify degree

Page 26: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

• The parties run threshold decryption for each of the output shares

• The output receiver interpolates the output value from the shares

26

Page 27: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

Protocol Complexities• Amortized – sharing with multiple secrets• Communication complexity

– Round table – between consecutive parties: intermediate protocol messages

• O(Dn(m-1)), m parties, n monomials, D sum of log variable degrees– Broadcast – input commitments, decommitments in

verification phase• Smaller than polynomial representation• O(D (j=1 j=1 log αj,t ))• αj,t highest degree of variable, Lj inputs for party j

• Computational complexity• O(Dnm)

m Lj

27

Page 28: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

Multiparty set intersection = · +

• Optimizations:– Only two parties have inputs per each monomial– Inputs that are used only once do not need to be shared• Complexity - m parties, d inputs each:– Communication - O(md + 10d log2 d); CJS10 – quadratic in

number of parties, other solutions worse complexity– Computation - O(md2 log d)

28

P(x) P(x) ri ri Pi(x)Pi(x) x x

ri = ri,1 + … + ri,m

ri,j randomness from party j

Pi(x) represents the input set of party i

j=1 j=1

m-1

Page 29: Secure Efficient Multiparty Computing of Multivariate Polynomials and Applications

Thank You!

• Questions?

29