secure multi party computation
play

Secure Multi-Party Computation Gunnar Kreitz KTH Royal Institute - PowerPoint PPT Presentation

Background Secure Computation Security Model Generic Protocol Applications Secure Multi-Party Computation Gunnar Kreitz KTH Royal Institute of Technology gkreitz@kth.se October 4 2012 Gunnar Kreitz Secure Multi-Party Computation


  1. Background Secure Computation Security Model Generic Protocol Applications Secure Multi-Party Computation Gunnar Kreitz KTH – Royal Institute of Technology gkreitz@kth.se October 4 2012 Gunnar Kreitz Secure Multi-Party Computation

  2. Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications Ingredients ◮ n parties ◮ n inputs (one per party) ◮ A function f ( x 1 , . . . , x n ) to compute Gunnar Kreitz Secure Multi-Party Computation

  3. Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications Goal (intuitive) ◮ Parties learn f ( x 1 , . . . , x n ) ◮ Noone learns anything more Gunnar Kreitz Secure Multi-Party Computation

  4. Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications Example time! Let’s pick a function Gunnar Kreitz Secure Multi-Party Computation

  5. Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications The classic examples (Millionaire’s Problem) Gunnar Kreitz Secure Multi-Party Computation

  6. Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications The classic examples (Mental Poker) Gunnar Kreitz Secure Multi-Party Computation

  7. Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications The classic examples (Dining Cryptographers) Gunnar Kreitz Secure Multi-Party Computation

  8. Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications Example time! Σ x i Gunnar Kreitz Secure Multi-Party Computation

  9. Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications Private Summation (cont’d) ◮ The protocol does one round of input randomization ( blinding ) ◮ Then, any (non-private) summation protocol is run on the blinded inputs ◮ The blinding preserves the sum of the inputs ◮ Information-theoretically secure Photo by Mirko Tobias Schaefer http://www.flickr.com/photos/gastev/2960556197/ , CC BY 2.0 Gunnar Kreitz Secure Multi-Party Computation

  10. Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications Summation Protocol by Example 2 x ′ 1 = x 1 − r 12 − r 13 + r 21 + r 31 x ′ 2 = x 2 + r 12 − r 21 − r 23 + r 32 1 x ′ 3 = x 3 + r 13 + r 23 − r 31 − r 32 3 Gunnar Kreitz Secure Multi-Party Computation

  11. � Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications Summation Protocol by Example 2 r 12 x ′ 1 = x 1 − r 12 − r 13 + r 21 + r 31 x ′ 2 = x 2 + r 12 − r 21 − r 23 + r 32 1 x ′ 3 = x 3 + r 13 + r 23 − r 31 − r 32 3 Gunnar Kreitz Secure Multi-Party Computation

  12. Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications Summation Protocol by Example 2 x ′ 1 = x 1 − r 12 − r 13 + r 21 + r 31 x ′ 2 = x 2 + r 12 − r 21 − r 23 + r 32 1 x ′ 3 = x 3 + r 13 + r 23 − r 31 − r 32 r 13 � 3 Gunnar Kreitz Secure Multi-Party Computation

  13. � Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications Summation Protocol by Example 2 r 21 x ′ 1 = x 1 − r 12 − r 13 + r 21 + r 31 x ′ 2 = x 2 + r 12 − r 21 − r 23 + r 32 1 x ′ 3 = x 3 + r 13 + r 23 − r 31 − r 32 3 Gunnar Kreitz Secure Multi-Party Computation

  14. � Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications Summation Protocol by Example 2 x ′ 1 = x 1 − r 12 − r 13 + r 21 + r 31 x ′ 2 = x 2 + r 12 − r 21 − r 23 + r 32 1 r 23 x ′ 3 = x 3 + r 13 + r 23 − r 31 − r 32 3 Gunnar Kreitz Secure Multi-Party Computation

  15. Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications Summation Protocol by Example 2 x ′ 1 = x 1 − r 12 − r 13 + r 21 + r 31 x ′ 2 = x 2 + r 12 − r 21 − r 23 + r 32 1 � x ′ 3 = x 3 + r 13 + r 23 − r 31 − r 32 r 31 3 Gunnar Kreitz Secure Multi-Party Computation

  16. � Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications Summation Protocol by Example 2 x ′ 1 = x 1 − r 12 − r 13 + r 21 + r 31 x ′ 2 = x 2 + r 12 − r 21 − r 23 + r 32 1 r 32 x ′ 3 = x 3 + r 13 + r 23 − r 31 − r 32 3 Gunnar Kreitz Secure Multi-Party Computation

  17. Background Secure Computation Problem Statement (sketch) Security Model Famous examples Generic Protocol Example protocol Applications Private Summation Protocol ◮ Each party P i with input x i proceeds as follows: 1. Send random r i , j to each neighbor P j 2. Wait for r j , i from each neighbor P j 3. Compute � � x ′ i = x i + r j , i − r i , j P j neighbor P j neighbor ◮ We could now publish x ′ i and still remain private! Gunnar Kreitz Secure Multi-Party Computation

  18. Background Secure Computation Security Model Generic Protocol Applications How to proceed? ◮ Do we develop protocols for each and every f ? ◮ (Are they all this simple?) ◮ How do we define security? Gunnar Kreitz Secure Multi-Party Computation

  19. Background Secure Computation Security Model Generic Protocol Applications Security definitions ◮ Noone should learn anything but result ◮ Noone should be able to affect computation in an untoward way Gunnar Kreitz Secure Multi-Party Computation

  20. Background Secure Computation Security Model Generic Protocol Applications A Trusted Third Party ◮ Is there someone we all trust? ◮ Can send measurements to the Trusted Third Party ◮ She performs computation and tells everyone result ◮ Given a Trusted Third Party, problem is easy Photo by Matt J. Rider http://www.flickr.com/photos/mjrindewitt/4759429254/ , CC BY NC SA 2.0 Gunnar Kreitz Secure Multi-Party Computation

  21. Background Secure Computation Security Model Generic Protocol Applications Sometimes There is no Trusted Third Party Photo by Tayrawr Fortune http://www.flickr.com/photos/missfortune/4088429354/ , CC BY NC ND 2.0 Gunnar Kreitz Secure Multi-Party Computation

  22. Background Secure Computation Security Model Generic Protocol Applications Secure? What do we mean by security? ◮ In an ideal world, we have a trusted third party ◮ We want our protocols to be as secure as the ideal world ◮ Cheating parties must not: ◮ learn more than they do in the ideal world ◮ be able to do more than they can in the ideal world Photo by Thomas Hawk http://www.flickr.com/photos/thomashawk/115213351/ , CC BY NC 2.0 Gunnar Kreitz Secure Multi-Party Computation

  23. Background Secure Computation Security Model Generic Protocol Applications What is an attack? Functionality: � i x i (mod p ). Adversary corrupts party 1. ◮ Adversary learns x 1 ? ◮ Adversary learns x 10 ? ◮ Adversary learns sum of all other parties’ input? ◮ Adversary learns � i < n / 2 x i ? ◮ Adversary learns sum, everyone else gets random value? No (pick random x 1 ). ◮ Adversary ensures result is c ? Gunnar Kreitz Secure Multi-Party Computation

  24. Background Secure Computation Security Model Generic Protocol Applications What is an attack? Functionality: � i x i (mod p ). Adversary corrupts party 1. ◮ Adversary learns x 1 ? No. ◮ Adversary learns x 10 ? ◮ Adversary learns sum of all other parties’ input? ◮ Adversary learns � i < n / 2 x i ? ◮ Adversary learns sum, everyone else gets random value? No (pick random x 1 ). ◮ Adversary ensures result is c ? Gunnar Kreitz Secure Multi-Party Computation

  25. Background Secure Computation Security Model Generic Protocol Applications What is an attack? Functionality: � i x i (mod p ). Adversary corrupts party 1. ◮ Adversary learns x 1 ? No. ◮ Adversary learns x 10 ? ◮ Adversary learns sum of all other parties’ input? ◮ Adversary learns � i < n / 2 x i ? ◮ Adversary learns sum, everyone else gets random value? No (pick random x 1 ). ◮ Adversary ensures result is c ? Gunnar Kreitz Secure Multi-Party Computation

  26. Background Secure Computation Security Model Generic Protocol Applications What is an attack? Functionality: � i x i (mod p ). Adversary corrupts party 1. ◮ Adversary learns x 1 ? No. ◮ Adversary learns x 10 ? Yes. ◮ Adversary learns sum of all other parties’ input? ◮ Adversary learns � i < n / 2 x i ? ◮ Adversary learns sum, everyone else gets random value? No (pick random x 1 ). ◮ Adversary ensures result is c ? Gunnar Kreitz Secure Multi-Party Computation

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