broadcast channels adversary central adversary
play

Broadcast channels Adversary Central adversary (collaborating - PDF document

Sum Protocol 2 Goal: Compute sum of inputs Protocol Specification 0. P i : input x i random r y 1 = r + x 1 y 7 Cryptographic Protocols 1. P i : send x i to TTP y 7 = y 6 + x 7 y 1 x i s = y 7 r y 6 2. TTP: y = Spring 2020 y 2 =


  1. Sum Protocol 2 Goal: Compute sum of inputs Protocol Specification 0. ∀ P i : input x i random r y 1 = r + x 1 y 7 Cryptographic Protocols 1. ∀ P i : send x i to TTP y 7 = y 6 + x 7 y 1 � x i s = y 7 − r y 6 2. TTP: y = Spring 2020 y 2 = y 1 + x 2 3. TTP: send y to ∀ P i y 6 = y 5 + x 6 y 2 y 5 MPC Part 1 y 5 = y 4 + x 5 y 3 = y 2 + x 3 y 3 y 4 y 4 = y 3 + x 4 Analysis: 1 passive cheater? 2 passive? 1 active? 2 active? Multi-Party Computation: Goal Model 3 4 Parties and Channels • n parties P 1 , . . . , P n • Secure channels among parties ⇒ • Broadcast channels Adversary • Central adversary (collaborating parties) • Corrupts t parties Specification Protocol • Passive vs active A protocol is secure if the adversary cannot achieve anything in Security the protocol that he could not achieve in the specification. • Information-theoretic vs. Cryptographic Intuition: ∀ Adv ∃ Sim : ProtAdv ∼ SpecSim Sum Protocol II More Examples 5 6 Protocol: · · · Examples • Statistics (first sex, tax evading, etc.) x 1 x 11 x 12 x 13 x 14 · · · x 1 n • Elections / Votes / Auctions x 2 x 21 x 22 x 23 x 24 · · · x 2 n • Millionaires problem • Loans (several banks, same guarantee) x 3 x 31 x 32 x 33 x 34 · · · x 3 n • ZK-proofs (Peggy sends witness to TTP , who checks & sends 0/1 to Vic) x 4 x 41 x 42 x 43 x 44 · · · x 4 n Secure Function Evalutation (evaluate function f on all inputs) . . . . . . . . . . . . 1. ∀ P i : send input x i to TTP 2. TTP: compute ( y 1 , . . . , y n ) = f ( x 1 , . . . , x n ) x n x n 1 x n 2 x n 3 x n 4 · · · x nn 3. TTP: send output y i to ∀ P j n y 1 y 2 y 3 y 4 · · · y n y = � y i i =1 Limitations Analysis: 1 passive cheater? 2 passive? 1 active? 2 active? • Poker, etc (not realizable with TTP)

  2. Known Results Oblivious Transfer 7 8 Rabin-OT Sender Receiver r =0: s − → Setting Condition Literature s r ∈ R { 0 , 1 } − → r =1: ⊥ Cryptographic, passive t < n [GMW87] Cryptographic, active t < n/ 2 [GMW87] 1-2-OT Sender Receiver Information-theoretic, passive t < n/ 2 [BGW88,CCD88] ← − b − s 0 , s 1 → s b − → Information-theoretic, active t < n/ 3 [BGW88,CCD88] Information-theoretic, active t < n/ 2 [RB89,Bea91] assuming broadcast 1- k -OT Sender Receiver ← − i s 1 , .., s k − → s i − → 1-2-OST based on RSA and AES MPC from OT 9 10 Sender Receiver Truth table: Starting Point a b c Messages s 0 , s 1 Selector b ∈ { 0 , 1 } • 2 parties Alice and Bob 0 0 17 0 1 23 • Inputs a ∈ A and b ∈ B Generate RSA-Keys 0 2 8 • Fixed function f : A × B → C 1 0 17 n 0 , e 0 , d 0 and n 1 , e 1 , d 1 1 1 10 n 0 , e 0 , n 1 , e 1 1 2 − 4 with n 0 ≈ n 1 ✲ 2 0 . . . 2 1 . . . k at random, Protocol u u = k e b (mod n b ) ✛ 1. Alice sends [ f ( a, b 1 ) | f ( a, b 2 ) | . . . | f ( a, b ℓ )] via OT k 0 = u d 0 2. Bob selects b -th value (mod n 0 ) k 1 = u d 1 (mod n 1 ) Analysis: • Security • Efficiency y 0 = AES k 0 ( s 0 ) y 0 , y 1 s b = AES − 1 Extension: 3 parties . . . y 1 = AES k 1 ( s 1 ) k ( y b ) ✲ Multi-Party Computation: Goal II Multi-Party Computation: Goal II 11 12 ⇒ ⇒ Trusted party Simulating players . . . • Receive input • n players: P = { P 1 , . . . , P n } • ⊕ and ⊗ over finite field F • Players can ⊕ and ⊗ in F Specification Protocol • Give output • Players can communicate

  3. Sum Protocol III Secret-Sharing Schemes – Definition 13 14 Protocol: Intuition · · · • Dealer D can share a secret s among parties P x 1 x 11 x 12 x 13 x 14 · · · x 1 n • Qualified subsets of P can reconstruct s (w/o D ) • Access structure Γ ⊆ 2 P x 2 x 21 x 22 x 23 x 24 · · · x 2 n Definition x 3 x 31 x 32 x 33 x 34 · · · x 3 n A secret-sharing scheme for parties P and access structure Γ x 4 x 41 x 42 x 43 x 44 · · · x 4 n is a pair of protocols ( S HARE , R ECONSTRUCT ) , s.t. . . . . . . • Correctness: . . . . . . 1. After S HARE , there is a unique value s ′ , x n x n 1 x n 2 x n 3 x n 4 · · · x nn where s ′ = s (the dealer’s input) if the dealer is honest n 2. After R ECONSTRUCT ( M ) , if M ∈ Γ , all players in M know s ′ y = � y 1 y 2 y 3 y 4 · · · y n y i i =1 • Privacy: After S HARE , non-qualified sets have no information about s Analysis: 1 passive cheater? 2 passive? 1 active? 2 active? Secret-Sharing Schemes – Examples Shamir’s Secret-Sharing Scheme (1/3) 15 16 Goal Example 1 • n parties, k needed for reconstruction • Parties P • Threshold access structure Γ = { M ⊆ P : | M | ≥ k } • Γ = {P} (only all parties jointly can reconstruct) � x i = s , send x i to P i • S HARE : select random x 1 , . . . , x n with Idea • R ECONSTRUCT : Obvious • Random polynomial f of degree d is defined by d + 1 points • s = f (0) = secret, party P i gets share s i = f ( α i ) for fixed α i Example 2 • Degree d = k − 1 ⇒ k parties can reconstruct, k − 1 cannot • Parties P , arbitrary access structure Γ s 2 s 1 • S HARE : ∀ M i ∈ Γ : select random { x ij } P j ∈ Γ , send x ij to P j ∈ Γ f ( x ) s 3 s • R ECONSTRUCT : Obvious s n α 1 α 2 α 3 α n Shamir’s Secret-Sharing Scheme (2/3) Shamir’s Secret-Sharing Scheme (3/3) 17 18 Starting Point: To each party P i , some unique α i ∈ F \ { 0 } is assigned. Analysis for passive adversary: S HARE 1. D : choose random f with f (0) = s and deg( f ) ≤ d Correctness (i.e., choose random r 1 , . . . , r d , let f ( x ) = s + r 1 x + . . . + r d x d ) • 1: by inspection, s ′ = f (0) 2. D : send s i = f ( α i ) to ∀ P i • 2: due to Lagrange interpolation (given | M | ≥ k = d + 1 ) R ECONSTRUCT Privacy 1. ∀ P i : send s i to P • For ≤ d = k − 1 shares, every secret s is “compatible” (same #polys) 2. P : compute s with Lagrange interpolation: • ⇒ adversary with < k shares obtains no information about s . n n x − α j � � f ( x ) = λ i ( x ) s i , where λ i ( x ) = . Note α i − α j i =1 j =1 j � = i • Degree is at most d , not exactly d n n − α j hence s = � w i s i , where w i = λ i (0) = � . • Otherwise privacy violation α i − α j i =1 j =1 j � = i

  4. Linear Secret-Sharing Schemes MPC Passive: Secret-Sharing and Addition 19 20 Definition: Secret-Sharing is linear, if each share s i = L i ( s, r 1 , . . . , r ℓ ) : Setting  s 1   A 10 A 11 · · · A 1 ℓ  • n parties, t corrupted (passive), t < n/ 2   s         s 2 A 20 A 21 · · · A 2 ℓ       r 1       = · Secret Sharing      .  . . . . . .       . . . . . . . .             • Shamir-Sharing with degree t r ℓ         s n A n 0 A n 1 · · · A nℓ • ⇒ any t (corrupted) parties do not learn anything Addition [ s 1 , . . . , s n ] = A · [ s, r 0 , . . . , r ℓ ] Addition and Linear Functions s ′ s ′ s ′ , r ′ r ′ [ 1 , . . . , ] = A · [ 0 , . . . , ] n • Shamir-Sharing is linear ⇒ apply linear function on shares ℓ [ s 1 + s ′ 1 , . . . , s n + s ′ n ] = A · [ s + s ′ , r 0 + r ′ 0 , . . . , r ℓ + r ′ ℓ ] • a, b, . . . shared by a 1 , ..., a n , b 1 , ..., b n , etc. • Every P i computes c i = L ( a i , b i , . . . ) Shamir Sharing is linear   1 α 1 . . . α d • c 1 , ..., c n is a sharing of c = L ( a, b, . . . ) 1 . . . .  . . . .  A = . . . . (Van der Monde Matrix)     1 α n . . . α d   n MPC Passive: Multiplication Passive Protocol 21 22 Share input Reconstruct Output Starting Point: a, b shared by a 1 , ..., a n , b 1 , ..., b n 0. P i has input s . 0. a is shared by a 1 , ..., a n . 1. P i : select r 1 , ..., r t at random. 1. ∀ P j : send a j to P i . Idea � s 1 s   � r 1 2. P i : comp. a = L ( a 1 , ..., a n ) . . • Every P i computes d i = a i · b i 2. P i : comp. . = A .  . . . .  s n r t • Observe: d 1 , . . . , d n is some-kind-of sharing of c = a · b 3. P i : send s j to every P j . n • Could compute c from d 1 , . . . , d n : c = � w i d i (Lagrange) i =1 Addition and Linear Functions • Compute c as MPC: Every P i has input d i , compute (sharing of) c 0. a, b, . . . are shared by a 1 , ..., a n , b 1 , ..., b n , etc. 1. ∀ P i : compute c i = L ( a i , b i , . . . ) . Multiplication Protocol 1. ∀ P i : compute d i = a i b i . Multiplication 2. ∀ P i : share d i → d i 1 , . . . , d in . 0. a , b are shared by a 1 , ..., a n , b 1 , ..., b n . 3. ∀ P j : compute c j = w 1 d 1 j + . . . + w n d nj . 1. ∀ P i : compute d i = a i b i . 2. ∀ P i : share d i → d i 1 , . . . , d in . 3. ∀ P j : compute c j = L ( d 1 j , . . . , d nj ) .

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