two party computation
play

Two-party computation By Shuoyao Zhao 2018.1.4 1 Problem - PowerPoint PPT Presentation

Two-party computation By Shuoyao Zhao 2018.1.4 1 Problem Abstraction Bob Alice Public function f y {0,1} t x {0,1} s Holds Holds z = f(x, y) Reveal z Security but nothing more ! requirement: 2 Ideally, with a Trusted Party z = f (


  1. Two-party computation By Shuoyao Zhao 2018.1.4 1

  2. Problem Abstraction Bob Alice Public function f y Î {0,1} t x Î {0,1} s Holds Holds z = f(x, y) Reveal z Security but nothing more ! requirement: 2

  3. Ideally, with a Trusted Party z = f ( x , y ) x y z z 3

  4. In the Real World z = f ( x , y ) Secure computation enables this! x y …… z z f ( x , y ) f ( x , y ) but nothing more ! but nothing more ! 4

  5. A Binary Gate (Evaluator) Bob Alice 0 NAND 0 x =0 y =0 B A NAND Z [Yao, FOCS’86 ] 5

  6. A Binary Gate (Evaluator) Bob Alice (Generator) a 0 B A a 1 a 0 , a 1 are random bit strings NAND Z [Yao, FOCS’86 ] 6

  7. A Binary Gate Alice (Generator) a 0 b 0 B A a 1 b 1 a 0 , a 1 , b 0 , b 1 , z 0 , z 1 are independent random bit strings NAND Z z 0 z 1 [Yao, FOCS’86 ] 7

  8. A Binary Gate Alice (Generator) a 0 b 0 keys messages B A a 1 b 1 Enc a 0 , b 0 ( z 1 ) Enc a 0 , b 1 ( z 1 ) NAND Enc a 1 , b 0 ( z 1 ) Enc a 1 , b 1 ( z 0 ) Z z 0 z 1 [Yao, FOCS’86 ] 8

  9. A Binary Gate Alice (Generator) a 0 b 0 B A a 1 b 1 Enc a 0 , b 0 ( z 1 ) Enc a 0 , b 1 ( z 1 ) AND Enc a 1 , b 0 ( z 1 ) Enc a 1 , b 1 ( z 0 ) Z z 0 z 1 [Yao, FOCS’86 ] 9

  10. A Binary Gate (Evaluator) Bob Alice (Generator) a 0 b 0 B A a 1 b 1 Enc a 0 , b 0 ( z 1 ) Enc a 0 , b 1 ( z 1 ) NAND Enc a 1 , b 0 ( z 1 ) Enc a 1 , b 1 ( z 0 ) Z z 0 z 1 [Yao, FOCS’86 ] 10

  11. Prevent the Leak (Evaluator) Alice (Generator) Bob a 0 b 0 ✗ Enc a 1 , b 1 ( z 0 ) Enc a 1 , b 1 ( z 0 ) ✗ Enc a 1 , b 0 ( z 1 ) Enc a 1 , b 0 ( z 1 ) ✗ Enc a 0 , b 1 ( z 1 ) Enc a 0 , b 1 ( z 1 ) ✔ Enc a 0 , b 0 ( z 1 ) Enc a 0 , b 0 ( z 1 ) [Yao, FOCS’86 ] 11

  12. Transferring b 0 obliviously (Evaluator) Alice (Generator) Bob y =0 b 0 Oblivious b 0 b 1 Transfer 12

  13. Transferring b 0 obliviously (Evaluator) Alice (Generator) Bob y b 0 Oblivious Transfer b 1 b y Output [Naor-Pinkas, SODA’00 ] 13

  14. Security of NPOT • Receiver’s Privacy – h is uniformly random, independent of y • Sender’s Privacy – Receiver cannot learn b y as it doesn’t know log g C Output 14

  15. Paper • A Proof of Security of Yao’s Protocol for Two - Party Computation Author: Yehuda Lindell , Benny Pinkas 15

  16. The differences • f (x,y) = (f 1 (x,y),f 2 (x,y)) • Description of Garbled gate 16

  17. Parameter table Symbol Meaning g(α,β) Circuit-output gate 𝑥 𝑗 , ex: 𝑥 1 Circuit-output wire 0,1 Corresponding real values 0 , 𝑙 𝑥 1 𝑙 𝑥 Random keys 0 ) (0, 𝑙 𝑥 Output decryption tables 0 )) 𝐹 𝑙 1 0 (𝐹 𝑙 2 0 (𝑙 3 Garbled computation box 𝐹 1 , 𝐹 2 , 𝐹 3 , 𝐹 4 Garbled computation table Each pair of keys open only one box for each gate!!!

  18. Modeling Adversaries Semi-Honest Malicious/Active Absolutely no restriction (Honest-but-curious) on polynomial time Always follow the adversaries protocol but tries to learn extra from the execution transcripts 18

  19. Definition(1) • Let 𝑔 = (𝑔 1 , 𝑔 2 ) be a probabilistic polynomial- time functionality, and let π be a two-party protocol for computing f . • The view of the i_th party (i ∈ {1, 2}) during an execution of π on ( x,y) is denoted: 𝑤𝑗𝑓𝑥 i π (𝑦, 𝑧) = (𝑦, 𝑠 𝑗 , 𝑛 1 𝑗 , … , 𝑛 𝑢 𝑗 ) where 𝑠 𝑗 equals the contents of the i_th 𝑗 represents party’s internal random tape, and 𝑛 𝑘 the j_th message that it received. 19

  20. Definition(2) • The output of the i_th party during an execution of π on ( x,y) is denoted π (𝑦, 𝑧) and can be computed from its 𝑝𝑣𝑢𝑞𝑣𝑢 𝑗 own view of the execution. Denote: π 𝑦, 𝑧 , 𝑝𝑣𝑢𝑞𝑣𝑢 2 π 𝑦, 𝑧 𝑝𝑣𝑢𝑞𝑣𝑢 π 𝑦, 𝑧 = 𝑝𝑣𝑢𝑞𝑣𝑢 1 Differ from f(x,y) 20

  21. Definition(3) • Definition 1 : Let 𝑔 = (𝑔 1 , 𝑔 2 ) be a functionality. We say that π securely computes f in the presence of static semi-honest adversaries if there exist probabilistic polynomial-time algorithms 𝑇 1 and 𝑇 2 such that: 𝐷 {(𝑤𝑗𝑓𝑥 1 π 𝑦, 𝑧 , 𝑝𝑣𝑢𝑞𝑣𝑢 π 𝑦, 𝑧 )} 𝑦,𝑧∈ 0,1 ∗ 𝑇 1 𝑦, 𝑔 1 𝑦, 𝑧 , 𝑔 𝑦, 𝑧 𝑦,𝑧∈ 0,1 ∗ ֞ And: 𝐷 {(𝑤𝑗𝑓𝑥 2 π 𝑦, 𝑧 , 𝑝𝑣𝑢𝑞𝑣𝑢 π 𝑦, 𝑧 )} 𝑦,𝑧∈ 0,1 ∗ 𝑇 2 𝑧, 𝑔 2 𝑦, 𝑧 , 𝑔 𝑦, 𝑧 𝑦,𝑧∈ 0,1 ∗ ֞ 21

  22. Definition(4) • A Simpler Formulation for Deterministic Functionalities: In the case that the functionality f is deterministic, a simpler definition can be used. Specifically, we do not need to consider the joint distribution of the simulator’s output with the protocol output. Rather, we separately require that: 𝑝𝑣𝑢𝑞𝑣𝑢 π 𝑦, 𝑧 = 𝑔(𝑦, 𝑧) And in addition, that there exist S1 and S2 such that: 𝐷 {𝑤𝑗𝑓𝑥1 π 𝑦, 𝑧 } 𝑦,𝑧∈ 0,1 ∗ } 𝑦,𝑧∈ 0,1 ∗ ֞ {𝑇 1 𝑦, 𝑔 1 𝑦, 𝑧 𝐷 {𝑤𝑗𝑓𝑥 2 π 𝑦, 𝑧 } 𝑦,𝑧∈ 0,1 ∗ } 𝑦,𝑧∈ 0,1 ∗ ֞ {𝑇 2 𝑧, 𝑔 2 𝑦, 𝑧 22

  23. Definition(5) • Deterministic Same-Output Functionalities We say that a functionality f = (f1,f2) is same- output if f1 = f2. • In our presentation, we will show how to securely compute deterministic same output functionalities only. This suffices for obtaining secure protocols for arbitrary probabilistic functionalities. 23

  24. Definition(6) • Proof of the last slide: From deterministic Functionalities to probabilistic polynomial-time: f ’ ((x,r) , (y,s)) = f (x , y , r ⊕ s) Deterministic Same-Output Functionalities : f ’ ((x,r) , (y,s)) = f 1 (x,y) ⊕ r||f 2 (x,y) ⊕ s 24

  25. Tools — private-key encryption (1) • Let (G,E,D) be a private-key encryption scheme and denote the range of a key in the scheme by: , 𝑦 ∈ {0,1} 𝑜 𝑆𝑏𝑜𝑕𝑓𝑜 𝑙 = 𝐹 𝑙 𝑦 25

  26. Tools — private-key encryption (2) • We say that (G,E,D) has an elusive range if for every probabilistic polynomial time machine A, every polynomial p(·), and all sufficiently large n, 𝑄𝑠 𝑙←𝐻(1 𝑜 ) 𝐵 1 𝑜 ∈ 𝑆𝑏𝑜𝑕𝑓𝑜 𝑙 1 < 𝑞(𝑜) 26

  27. Tools — private-key encryption (3) • We say that (G,E,D) has an efficiently verifiable range if there exists a probabilistic polynomial-time machine M such that : M(k,c) = 1 if and only if c ∈ Rangen(k) 27

  28. Tools — private-key encryption (4) • Construction: • Let 𝐺 = {𝑔 𝑙 } be a family of pseudorandom 𝑙 : {0,1} 𝑜 → {0,1} 2𝑜 for k ∈ functions, where 𝑔 {0,1} 𝑜 . Then, define: 𝑙 𝑠 ⨁(𝑦| 0 𝑜 } 𝐹 𝑙 𝑦 = {𝑠, 𝑔 This 𝐹 𝑙 has an efficiently verifiable range. Proof: 𝑔 𝑙 𝑦 and 𝑔 𝑠𝑏𝑜𝑒 𝑦 is indistinguishable. 28

  29. Tools — private-key encryption (5) • Other properties needed for ( G,E,D): • For every two (known) vectors of messages x and y, no polynomial-time adversary can distinguish an encryption of the vector x from an encryption of the vector y. • an encryption under one key will fall in the range of an encryption under another key with negligible probability. Easy to fulfill. 29

  30. Proof of correctness(1) • If 𝐹 𝑙 (𝑦) has an efficiently verfiable range , then the Yao’s Two -Party Protocol constructed by 𝐹 𝑙 (𝑦) is correct. 0 , 𝑙 2 0 , 𝑙 1 1 , 𝑙 2 1 , 𝑙 3 are • All we need is to prove: if 𝑙 1 uniformly independently chosen, then: 1 0 , 𝑙 2 0 Pr 𝐹 𝑙 1 𝐹 𝑙 2 𝑘 𝑙 3 ∈ 𝑆𝑏𝑜𝑕𝑓𝑜 𝑙 1 < 𝑗 𝑞(𝑜) For each (i,j)=(0,1),(1,0),(1,1) 30

  31. Proof of correctness(2) (1) i=0, j=1: 0 , 𝑙 2 0 Pr 𝐹 𝑙 1 0 𝐹 𝑙 2 1 𝑙 3 ∈ 𝑆𝑏𝑜𝑕𝑓𝑜 𝑙 1 = 1 0 1 𝑙 3 ∈ 𝑆𝑏𝑜𝑕𝑓𝑜 𝑙 2 Pr 𝐹 𝑙 2 < 𝑞(𝑜) (2)i=1: 0 , 𝑙 2 0 1 𝐹 𝑙 2 Pr 𝐹 𝑙 1 𝑘 𝑙 3 ∈ 𝑆𝑏𝑜𝑕𝑓𝑜 𝑙 1 ≤ 1 0 Pr 𝐹 𝑙 1 1 𝑙′ ∈ 𝑆𝑏𝑜𝑕𝑓𝑜 𝑙 1 < 𝑞(𝑜) 31

  32. Transferring b 0 obliviously (Evaluator) Alice (Generator) Bob y b 0 Oblivious Transfer (f,t) is a permutation-trapdoor pair in a b 1 b y family of enhanced trapdoor permutation and B() is a hard-core of f 𝑥 0 , 𝑥 1 𝑤 𝑧 ← 𝐸 𝑔 , 𝑥 𝑧 = 𝑔(𝑤 𝑧 ) 𝑤 0 = 𝑔 −1 𝑥 0 𝑥 1−𝑧 ← 𝑊 𝑔 𝑤 1 = 𝑔 −1 𝑥 1 𝑛 0 = 𝐶 𝑤 0 ⨁𝑐 0 𝑛 0 , 𝑛 1 𝑛 1 = 𝐶 𝑤 1 ⨁𝑐 1 𝑐 𝑧 = 𝐶 𝑤 𝑧 ⨁𝑐 𝑧 Bob have no information of t (the trapdoor), means (f,t) should be sampled by Alice and then be sent to Bob. 32

  33. Tools — OT • About: 𝑥 1−𝑧 ← 𝑊 𝑔 • An enhanced trapdoor permutation has the property that it is possible to sample from the range, so that given the coins used for sampling. • The comparison of two Ots: 𝑤 𝑧 ← 𝐸 𝑔 , 𝑥 𝑧 = 𝑔 𝑤 𝑧 , 𝑥 1−𝑧 ← 𝑊 𝑔 VS ℎ 𝑧 ← 𝑕 𝑙 , ℎ 1−𝑧 ← 𝐷𝑕 −𝑙 33

  34. Transferring b 0 obliviously (Evaluator) Alice (Generator) Bob y b 0 Oblivious Transfer b 1 b y Output [Naor-Pinkas, SODA’00 ] 34

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