Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Practical Cryptographic Secure Computation David Evans University of Virginia DHOSA MURI.

Similar presentations


Presentation on theme: "1 Practical Cryptographic Secure Computation David Evans University of Virginia DHOSA MURI."— Presentation transcript:

1 1 Practical Cryptographic Secure Computation David Evans University of Virginia http://www.cs.virginia.edu/evans http://www.MightBeEvil.com DHOSA MURI PIs Meeting Berkeley, CA 28 April 2011

2 TRANSFORMATION HARDWARE SYSTEM ARCHITECTURES SVA Binary translation and emulation Formal methods Hardware support for isolation Dealing with malicious hardware Cryptographic secure computation Data-centric security Secure browser appliance Secure servers WEB-BASED ARCHITECTURES e.g., Enforce properties on a malicious OS e.g., Prevent data exfiltration e.g., Enable complex distributed systems, with resilience to hostile OSs

3 Secure Two-Party Computation 3 Alice Bob Bobs Genome: ACTG… Markers (~1000): [0,1, …, 0] Alices Genome: ACTG… Markers (~1000): [0, 0, …, 1] Can Alice and Bob compute a function of their private data, without exposing anything about their data besides the result?

4 Secure Function Evaluation Alice (circuit generator) Bob (circuit evaluator) Garbled Circuit Protocol Andrew Yao, 1982/1986

5 Yaos Garbled Circuits InputsOutput abx 000 010 100 111 AND a b x

6 Computing with Meaningless Values? InputsOutput abx a0a0 b0b0 x0x0 a0a0 b1b1 x0x0 a1a1 b0b0 x0x0 a1a1 b1b1 x1x1 AND a 0 or a 1 b 0 or b 1 x 0 or x 1 a i, b i, x i are random values, chosen by the circuit generator but meaningless to the circuit evaluator.

7 Computing with Garbled Tables InputsOutput abx a0a0 b0b0 Enc a 0,b 0 (x 0 ) a0a0 b1b1 Enc a 0,b 1 (x 0 ) a1a1 b0b0 Enc a 1,b 0 (x 0 ) a1a1 b1b1 Enc a 1,b 1 (x 1 ) AND a 0 or a 1 b 0 or b 1 x 0 or x 1 a i, b i, x i are random values, chosen by the circuit generator but meaningless to the circuit evaluator. Bob can only decrypt one of these! Garbled And Gate Enc a 0, b 1 (x 0 ) Enc a 1,b 1 (x 1 ) Enc a 1,b 0 (x 0 ) Enc a 0,b 0 (x 0 )

8 Chaining Garbled Circuits 8 AND a0a0 b0b0 x0x0 a1 b1b1 x1x1 OR x2x2 And Gate 1 Enc a1 0, b 1 1 (x1 0 ) Enc a1 1,b1 1 (x1 1 ) Enc a1 1,b1 0 (x1 0 ) Enc a1 0,b1 0 (x1 0 ) Or Gate 2 Enc x0 0, x 1 1 (x2 1 ) Enc x0 1,x1 1 (x2 1 ) Enc x0 1,x1 0 (x2 1 ) Enc x0 0,x1 0 (x2 0 ) … We can do any computation privately this way!

9 Fairplay 9 Dahlia Malkhi, Noam Nisan, Benny Pinkas and Yaron Sella [USENIX Sec 2004] SFDL Program SFDL Compiler Circuit (SHDL) Alice Bob Garbled Tables Generator Garbled Tables Evaluator SFDL Compiler

10 Enc x0 0, x 1 1 (x2 1 ) Enc x0 1,x1 1 (x2 1 ) Enc x0 1,x1 0 (x2 1 ) Enc x2 0, x2 1 (x3 0 ) Enc x2 1,x2 1 (x3 0 ) Enc x2 1,x2 0 (x3 1 ) Enc x2 0, x3 1 (x4 1 ) Enc x2 1,x3 1 (x4 1 ) Enc x2 1,x3 0 (x4 0 ) Enc x4 0, x 3 1 (x5 1 ) Enc x4 1,x3 1 (x5 0 ) Enc x4 1,x3 0 (x5 0 ) Enc x4 0, x5 1 (x6 1 ) Enc x4 1,x5 1 (x6 0 ) Enc x4 1,x5 0 (x6 0 ) Enc x3 0, x 6 1 (x7 1 ) Enc x3 1,x6 1 (x7 0 ) Enc x3 1,x6 0 (x7 1 ) Our Approach: Faster Garbled Circuits 10 Circuit-Level Application GC Framework (Evaluator) GC Framework (Evaluator) GC Framework (Generator) Circuit Structure x41x41 x21x21 x3 1 x60x60 x51x51 x71x71 Gates can be evaluated as they are generated: pipelining Gates can be evaluated in any topological sort order: parallelizing Garbled evaluation can be combined with normal execution

11 Applications 11 Privacy-Preserving Biometric Matching Private Personal Genomics Private Set Intersection Private AES Encryption

12 Private Set Intersection Do Alice and Bob have any contacts in common? Two countries want to compare their miscreant lists Identify common medical records across hospitals Two companies want to do joint marketing to common customers 12

13 Sort-Compare-Shuffle 13 Sort: Take advantage of total order of elements Compare adjacent elements Shuffle to hide positions

14 14 Private Set Intersection Protocol Free Gates to generate and evaluate Bitonic Sorting Circuit Waksman Permutation Network

15 Private Set Intersection Results 15 Seconds Set Size (each set) 32-bit values

16 Some Other Results ProblemBest Previous ResultOur ResultSpeedup Hamming Distance (Face Recognition) – 900-bit vectors 213s [SCiFI, 2010] 0.051s4176 Levenshtein Distance (genome, text comparison) – two 200-character inputs 534s [Jha+, 2008] 18.4s29 Smith-Waterman (genome alignment) – two 60- nucleotide sequences [Not Implementable]447s- AES Encryption3.3s [Henecka, 2010] 0.2s16.5 Fingerprint Matching (1024- entry database, 640x8bit vectors) ~83s [Barni, 2010] 18s4.6 16 Scalable: 1 Billion gates evaluated at ~100,000 gates/second on laptop NDSS 2011 USENIX Security 2011

17 David Evans evans@cs.virginia.edu http://www.cs.virginia.edu/evans 17 Collaborators Yan Huang (UVa PhD Student), Yikan Chen (UVa PhD Student), Samee Zahur (UVa MS Student), Peter Chapman (UVa BACS Student) Jonathan Katz (University of Maryland) Aaron Mackey (UVa Public Health Genomics)

18 Cuts 18

19 Building Computing Systems 19 Enc x0 0, x 1 1 (x2 1 ) Enc x0 1,x1 1 (x2 1 ) Enc x0 1,x1 0 (x2 1 ) Enc x0 0,x1 0 (x2 0 ) Digital Electronic CircuitsGarbled Circuits Operate on known dataOperate on encrypted wire labels One-bit logical operation requires moving a few electrons a few nanometers (hundreds of Billions per second) One-bit logical operation requires performing (up to) 4 encryption operations (~100,000 gates per second) Reuse is great!Reuse is not allowed! All basic operations have similar costSome logical operations free (XOR, NOT)

20 Bit Vector Intersection 20 Alices Recessive genes: { 5283423, 1425236, 839523, … } Bobs Recessive genes: { 5823527, 839523, 169325, … } [ 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0] [ 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0] [ PAH, PKU, CF, … ] AND... Bitwise AND...

21 And Gate Enc a 0, b 1 (x 0 ) Enc a 1,b 1 (x 1 ) Enc a 1,b 0 (x 0 ) Enc a 0,b 0 (x 0 ) Garbled Circuit Protocol Alice (circuit generator) Sends a i to Bob based on her input value Bob (circuit evaluator) How does the Bob learn his own input wires?

22 Primitive: Oblivious Transfer Alice Bob Oblivious Transfer Protocol Oblivious: Alice doesnt learn which secret Bob obtains Transfer: Bob learns one of Alices secrets Oblivious: Alice doesnt learn which secret Bob obtains Transfer: Bob learns one of Alices secrets Rabin, 1981; Even, Goldreich, and Lempel, 1985; many subsequent papers

23 Threat Model Semi-Honest (Honest But Curious) Adversary Adversary follows the protocol as specified (!) Curious adversary tries to learn more from protocol execution transcript 23 Garbled Circuits security proofs depend on this very weak model General techniques for converting protocols secure in semi-honest model to resist malicious adversary. Possibility to use software attestation to validate executing code? Amount of information that could leak is probably small

24 Genetic Dating 24 Alice Bob Genome Compatibility Protocol Your offspring will have good immune systems! WARNING! Dont Reproduce WARNING! Dont Reproduce

25 25 Cost to sequence human genome Moores Law prediction (halve every 18 months) Data from National Human Genome Research Institute: http://www.genome.gov/sequencingcosts

26 26 Cost to sequence human genome Moores Law prediction (halve every 18 months) Data from National Human Genome Research Institute: http://www.genome.gov/sequencingcosts Ion torrent Personal Genome Machine

27 Human Genome Sequencing Using Unchained Base Reads on Self-Assembling DNA NanoarraysHuman Genome Sequencing Using Unchained Base Reads on Self-Assembling DNA Nanoarrays. Radoje Drmanac, Andrew B. Sparks, Matthew J. Callow, Aaron L. Halpern, Norman L. Burns, Bahram G. Kermani, Paolo Carnevali, Igor Nazarenko, Geoffrey B. Nilsen, George Yeung, Fredrik Dahl, Andres Fernandez, Bryan Staker, Krishna P. Pant, Jonathan Baccash, Adam P. Borcherding, Anushka Brownley, Ryan Cedeno, Linsu Chen, Dan Chernikoff, Alex Cheung, Razvan Chirita, Benjamin Curson, Jessica C. Ebert, Coleen R. Hacker, Robert Hartlage, Brian Hauser, Steve Huang, Yuan Jiang, Vitali Karpinchyk, Mark Koenig, Calvin Kong, Tom Landers, Catherine Le, Jia Liu, Celeste E. McBride, Matt Morenzoni, Robert E. Morey, Karl Mutch, Helena Perazich, Kimberly Perry, Brock A. Peters, Joe Peterson, Charit L. Pethiyagoda, Kaliprasad Pothuraju, Claudia Richter, Abraham M. Rosenbaum, Shaunak Roy, Jay Shafto, Uladzislau Sharanhovich, Karen W. Shannon, Conrad G. Sheppy, Michel Sun, Joseph V. Thakuria, Anne Tran, Dylan Vu, Alexander Wait Zaranek, Xiaodi Wu, Snezana Drmanac, Arnold R. Oliphant, William C. Banyai, Bruce Martin, Dennis G. Ballinger, George M. Church, Clifford A. Reid. Science, January 2010. Human Genome Sequencing Using Unchained Base Reads on Self-Assembling DNA NanoarraysHuman Genome Sequencing Using Unchained Base Reads on Self-Assembling DNA Nanoarrays. Radoje Drmanac, Andrew B. Sparks, Matthew J. Callow, Aaron L. Halpern, Norman L. Burns, Bahram G. Kermani, Paolo Carnevali, Igor Nazarenko, Geoffrey B. Nilsen, George Yeung, Fredrik Dahl, Andres Fernandez, Bryan Staker, Krishna P. Pant, Jonathan Baccash, Adam P. Borcherding, Anushka Brownley, Ryan Cedeno, Linsu Chen, Dan Chernikoff, Alex Cheung, Razvan Chirita, Benjamin Curson, Jessica C. Ebert, Coleen R. Hacker, Robert Hartlage, Brian Hauser, Steve Huang, Yuan Jiang, Vitali Karpinchyk, Mark Koenig, Calvin Kong, Tom Landers, Catherine Le, Jia Liu, Celeste E. McBride, Matt Morenzoni, Robert E. Morey, Karl Mutch, Helena Perazich, Kimberly Perry, Brock A. Peters, Joe Peterson, Charit L. Pethiyagoda, Kaliprasad Pothuraju, Claudia Richter, Abraham M. Rosenbaum, Shaunak Roy, Jay Shafto, Uladzislau Sharanhovich, Karen W. Shannon, Conrad G. Sheppy, Michel Sun, Joseph V. Thakuria, Anne Tran, Dylan Vu, Alexander Wait Zaranek, Xiaodi Wu, Snezana Drmanac, Arnold R. Oliphant, William C. Banyai, Bruce Martin, Dennis G. Ballinger, George M. Church, Clifford A. Reid. Science, January 2010. George Church (Personal Genome Project)

28 Heterozygous Recessive Risk 28 Aa AAAAa aaAaa Alice Bob cystic fibrosis carrier Goal: find the intersection of A and B Alices Heterozygous Recessive genes: { 5283423, 1425236, 839523, … } Bobs Heterozygous Recessive genes: { 5823527, 839523, 169325, … }

29 (Un)Fairplay? 29 An alternative approach to our protocols would have been to apply Yaos generic secure two-party protocol to the recognition algorithm. This would have required expressing the algorithm as a circuit which computes and compares many Hamming distances, and then sending and computing that circuit. … We therefore believe that the performance of our protocols is significantly better than that of applying generic protocols. Margarita Osadchy, Benny Pinkas, Ayman Jarrous, Boaz Moskovich. SCiFI – A System for Secure Face Identification. Oakland 2010. An alternative approach to our protocols would have been to apply Yaos generic secure two-party protocol to the recognition algorithm. This would have required expressing the algorithm as a circuit which computes and compares many Hamming distances, and then sending and computing that circuit. … We therefore believe that the performance of our protocols is significantly better than that of applying generic protocols. Margarita Osadchy, Benny Pinkas, Ayman Jarrous, Boaz Moskovich. SCiFI – A System for Secure Face Identification. Oakland 2010. Protocol 1 (generic SMC) is very fast. Protocol 1 is ideal for small strings because the entire computation is performed in one round, but the circuit size is extremely large for longer strings. Our prototype circuit compiler can compile circuits for problems of size (200, 200) but uses almost 2 GB of memory to do so. Significantly larger circuits would be constrained by available memory for constructing their garbled versions. Somesh Jha, Louis Kruger, Vitaly Shmatikov. Towards Practical Privacy for Genomic Computation. Oakland 2008. Protocol 1 (generic SMC) is very fast. Protocol 1 is ideal for small strings because the entire computation is performed in one round, but the circuit size is extremely large for longer strings. Our prototype circuit compiler can compile circuits for problems of size (200, 200) but uses almost 2 GB of memory to do so. Significantly larger circuits would be constrained by available memory for constructing their garbled versions. Somesh Jha, Louis Kruger, Vitaly Shmatikov. Towards Practical Privacy for Genomic Computation. Oakland 2008.

30 Bitonic Sorting 30 1 4 9 7 5 4 3 2 1 5 4 4 3 9 2 7 1 3 2 4 5 9 4 7 1 2 3 4 4 5 7 9 1 2 3 4 4 5 7 9

31 CMP Filter CMP Filter CMP Filter …

32 CMP3 Filter CMP3 Filter CMP3 Filter

33 33 Cant reveal results yet! Position leaks information.

34 Waksman Network 34 Same circuit can generate any permutation: select a random permutation, and pick swaps Journal of the ACM, January 1968


Download ppt "1 Practical Cryptographic Secure Computation David Evans University of Virginia DHOSA MURI."

Similar presentations


Ads by Google