hiding the input size in secure two party computation
play

Hiding the Input Size in Secure Two-Party Computation Yehuda Lindell - PowerPoint PPT Presentation

Hiding the Input Size in Secure Two-Party Computation Yehuda Lindell , Kobbi Nissim, Claudio Orlandi (or a more privacy Privacy on sensitive social network) My friends should only see our common friends Secure Computation 8dx2rru3d0fW2TS y


  1. Hiding the Input Size in Secure Two-Party Computation Yehuda Lindell , Kobbi Nissim, Claudio Orlandi

  2. (or a more privacy Privacy on sensitive social network) My friends should only see our common friends

  3. Secure Computation 8dx2rru3d0fW2TS y x muv6tbWg32flqIo f(x,y) z 1 z 2 s1e4xq13OtTzoJc Trusted Party Cryptographic Protocol  Privacy  Correctness  Input Indepe n dence  “The protocol is as secure as the ideal world” Or is it?

  4. (or a more privacy Privacy on sensitive social network) Friend list Friend list PSI Intersection

  5. (or a more privacy Privacy on sensitive social network) Friend list Friend list Yao’s protocol Intersection + size of friend list!

  6. (or a more privacy Privacy on sensitive social network) You learned more than you were Friend list Friend list supposed to! Yao’s protocol Don’t worry, it’s only metadata! Intersection + size of friend list!

  7. Padding? X=x 1 …… x n Y=y 1.. y m X=x 1 …… x n Y=y 1.. y m … x B ….… y B 8dx2rru3d0fW2TS 𝑌 ∩ 𝑍 muv6tbWg32flqIo s1e4xq13OtTzoJc Z , m , n B Z Z B Z  Just add a lot of “fake entries” to your DB  Requires an upper bound   Inherent inefficiency 

  8. Impossibility of Size-Hiding: Proof by Authority [G04] “…making no restriction on the relationship among the lengths of the two inputs disallows the existence of secure protocols for computing any nondegenerate functionality…” [IP07] “…hiding the size of both inputs is impossible for interesting functions…” [HL10] “…We remark that some restriction on the input lengths is unavoidable because, as in the case of encryption, to some extent such information is always leaked…”

  9. Impossibility of Size-Hiding: Proof by Authority [G04] “…making no restriction on the relationship among the lengths of the two inputs disallows the existence of secure protocols for computing any nondegenerate functionality …” [IP07] “…hiding the size of both inputs is impossible for interesting functions …” [HL10] “…We remark that some restriction on the input lengths is unavoidable because, as in the case of encryption, to some extent such information is always leaked …”

  10. Impossibility  Is it impossible for  Any nondegenerate functionality?  What is nondegenerate?  What does no restriction mean?  All interesting functions?  What is interesting?  What about hiding one party’s input?  Is it really like encryption? Is length information always leaked?

  11. This Work  Part of a general research effort to revisit the foundations of secure computation  Do we have any proof that it’s impossible?  If yes, where and for what functions?  Is it impossible always or sometimes?  If sometimes, can we characterize when?  How do we define size hiding?  Compare to recent work on fairness…

  12. Input Size Can be Hidden Sometimes  M icali R abin K ilian ’03 (and many subsequent work…): Zero Knowledge Sets (check membership without revealing the size of the set)  I shai P askin ’07:  Branching programs (reveal length of the branching program but nothing else about input size)  Implies set intersection, server input size is hidden  A tenieseDe C ristofaro T sudik ’11:  Specific protocol for set intersection, client input size is hidden; efficient, in random oracle model  Note: all these are for specific problems /restricted class, and all hide only one party’s input

  13. A Test Case: Standard Definition  Standard definition, e.g. [Gol04] y x if |x|=|y| z=f(x,y) else z z z = fail  Need to know other party’s size in advance  Introduces problem of input size dependence  One party can choose its input after knowing the size of the other party’s input (outside the scope of the protocol)

  14. Defining Non-Input-Size Hiding  Formulation [G04]: y x if |x|=|y| z=f(x,y) Else z z z = fail  Our formulation: x y z=f(x,y) z,|y| z,|x|  Security guarantees incomparable

  15. Defining Non-Input-Size Hiding  Formulation [G04]: y x if |x|=|y| z=f(x,y) Else z z z = fail Standard protocols are  Our formulation: not secure for either x y formulation! z=f(x,y) z,|y| z,|x|  Security guarantees incomparable

  16. Ideal Model - Classes  Classes  0: both input-sizes are leaked  1: Bob learns |𝑦| , Alice does not learn 𝑧  2: both input-sizes are not revealed  Subclasses  Who gets output?  Is the output size leaked?  Our classification is complete for symmetric functions 𝑔 𝑦, 𝑧 = 𝑔(𝑧, 𝑦)

  17. Class 0 𝑧 𝑦 Class 0 1 𝑧 , 𝑔(𝑦, 𝑧) 1 𝑦 , 𝑔(𝑦, 𝑧)

  18. Class 1 𝑦 𝑧 𝑦 𝑧 Class Class 1 𝑦 , 𝑔(𝑦, 𝑧) 𝑔(𝑦, 𝑧) 1 𝑦 𝑔(𝑦, 𝑧) 1.a 1.b 𝑦 𝑧 𝑦 𝑧 Class Class 1 𝑦 , 1 𝑔 𝑦,𝑧 1 𝑦 , 𝑔(𝑦, 𝑧) 𝑔(𝑦, 𝑧) 1.c 1.d 𝑦 𝑧 Essentially equivalent classes Class 1 𝑦 , 𝑔(𝑦, 𝑧) 1 𝑔 𝑦,𝑧 1.e (outputs have same length)

  19. Class 2 𝑦 𝑦 𝑧 𝑧 Class Class 𝑔(𝑦, 𝑧) 𝑔(𝑦, 𝑧) 𝑔(𝑦, 𝑧) 2.b 2.a 𝑦 𝑧 Class 1 𝑔(𝑦,𝑧) 𝑔(𝑦, 𝑧) 2.c

  20. Positive Results 𝑦 𝑧 𝑦 𝑧 Class Class 1 𝑦 , 𝑔(𝑦, 𝑧) 𝑔(𝑦, 𝑧) 1 𝑦 , 𝑔(𝑦, 𝑧) 1.a 1 𝑔 𝑦,𝑧 1.e 𝑦 𝑧 Class 1 𝑦 , 1 𝑔 𝑦,𝑧 𝑔(𝑦, 𝑧) 1.c

  21. Tools  Fully Homomorphic Encryption 𝐻, 𝐹, 𝐸, 𝐹𝑤𝑏𝑚  Correctness: 𝐸 𝑡𝑙 (𝐹𝑤𝑏𝑚 𝑞𝑙 𝑔, 𝐹 𝑞𝑙 𝑦 = 𝑔(𝑦)  Circuit privacy: 𝐹𝑤𝑏𝑚 𝑞𝑙 𝑔, 𝐹 𝑞𝑙 𝑦 ≈ 𝐹 𝑞𝑙 (𝑔 𝑦 )

  22. 𝑦 𝑧 Class 1.a Class 1 𝑦 , 𝑔(𝑦, 𝑧) 𝑔(𝑦, 𝑧) 1.a 𝑞𝑙, 𝑡𝑙 ← 𝐻𝑓𝑜(1 𝑙 ) 𝑞𝑙, 𝑑 𝑦 𝑑 𝑦 ← 𝐹𝑜𝑑 𝑞𝑙 (𝑦) 𝑑 𝑨 𝑑 𝑨 = 𝐹𝑤𝑏𝑚 𝑞𝑙 (𝑔(⋅, 𝑧), 𝑑) 𝑨 = 𝐸𝑓𝑑 𝑡𝑙 (𝑑 𝑨 ) 𝑨

  23. Class 1.a  The devil is in the details  In order to compute 𝑑 𝑨 , a circuit computing 𝑔(⋅, 𝑧) must be known, but this involves knowing the output length  Solution: 𝑄 2 computes an upper bound (it can do this since it knows |𝑦| and 𝑧

  24. Computing an Upper Bound  Example: set union  𝑨 = 𝑦 ∪ 𝑧 𝐹(𝑦)  Clear that 𝑨 ≤ 𝑦 + |𝑧|  But how long exactly? Any upper bound reveals 𝑔(⋅, 𝑧) information about |𝑧| 𝐹(𝑨)

  25. The Solution 𝐹(𝑦) 𝐹(𝑦) 𝑡𝑗𝑨𝑓𝑝𝑔(𝑔 ⋅, 𝑧 ) 𝑔 ℓ (⋅, 𝑧) 𝑔(⋅, 𝑧) 𝐹(|𝑨|) 𝐹(𝑨) 𝐹(𝑨) Send to Alice Alice opens ℓ = |𝑨| ℓ

  26. 𝑦 𝑧 Class 1.a Class 1 𝑦 , 𝑔(𝑦, 𝑧) 𝑔(𝑦, 𝑧) 1.a 𝑞𝑙, 𝑡𝑙 ← 𝐻𝑓𝑜(1 𝑙 ) 𝑞𝑙, 𝑑 𝑦 𝑑 𝑦 ← 𝐹𝑜𝑑 𝑞𝑙 (𝑦) 𝑑 ℓ 𝑑 ℓ = 𝐹𝑤𝑏𝑚 𝑞𝑙 (𝒕𝒋𝒜𝒇𝒑𝒈(𝑔 ⋅, 𝑧 ), 𝑑) ℓ = 𝐸𝑓𝑑 𝑡𝑙 (𝑑 ℓ ) ℓ 𝑑 𝑨 𝑑 𝑨 = 𝐹𝑤𝑏𝑚 𝑞𝑙 (𝒈 ℓ (⋅, 𝑧), 𝑑) 𝑨 = 𝐸𝑓𝑑 𝑡𝑙 (𝑑 𝑨 ) 𝑨 The circuit for output of length exactly ℓ  Thm: FHE ⇒ ∀𝑔 can be securely computed in Classes 1.a/c/e

  27. Positive Results 𝑦 𝑦 𝑧 𝑧 Class Class 𝑔(𝑦, 𝑧) 𝑔(𝑦, 𝑧) 𝑔(𝑦, 𝑧) 2.b 2.a 𝑦 𝑧 Class 1 𝑔(𝑦,𝑧) 𝑔(𝑦, 𝑧) 2.c

  28. Two-Size Hiding Protocols  Theorem: If FHE exists, then the following functions can be securely computed in class 2 (semi-honest)  Greater than (Millionaire’s problem)  And other functions:  Equality  Mean  Variance  Median

  29. Two-Size Hiding Protocols  Theorem: If FHE exists, then the following functions can be securely computed in class 2 (semi-honest) First example of protocols for  Greater than (Millionaire’s problem) interesting functions  And other functions: where the size of the input of  Equality  Mean both parties is protected  Variance  Median

  30. Size Independent Protocols  𝜌 is size independent for 𝑔 if  Correct (except for 𝑜𝑓𝑕𝑚(𝑙) )  Computation efficient (runtime 𝑞𝑝𝑚𝑧 ( 𝑗𝑜𝑞𝑣𝑢 + 𝑙 ))  Communication efficient (bounded by 𝑞𝑝𝑚𝑧 ( 𝑙 ))  Construction idea: “compile” these insecure protocols using FHE.  (Concrete protocol for “greater than” in the paper)

  31. Negative Results

  32. 𝑦 𝑧 Class Lower Bounds 𝑔(𝑦, 𝑧) 𝑔(𝑦, 𝑧) 2.a  Theorem: There exist functions that cannot be computed while hiding both parties’ input size  Not everything can be computed in Class 2  Examples: Inner product, Set Intersection, Hamming distance, etc.  Any protocol with “high” communication complexity

  33. 𝑦 𝑧 Class Class 1.b 𝑔(𝑦, 𝑧) 1 𝑦 1.b  Theorem: There exist functions that cannot be securely computed in class 1.b  Proof: size-hiding OT  𝑦 = selection bit  𝑧 = (𝑧 0 , 𝑧 1 ) two strings of different length  𝑔 𝑦, 𝑧 = 𝑧 𝑦 𝑦 𝑧 0 𝑧 1 OT 𝑧 𝑦

  34. Conclusions and Open Problems

  35. Conclusions and Open Problems  Open Problems  (More) efficient protocols for specific tasks?  Malicious security?  Dealing with side-channel attacks (timing)?  Hiding the input size is (sometimes) possible.  Don’t give up!  Landscape of size-hiding 2PC is very rich  Many positive and negative results.

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend