Download presentation

Presentation is loading. Please wait.

Published byShea Pyper Modified over 2 years ago

1
1 Practical Cryptographic Secure Computation David Evans University of Virginia 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 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] 18s Scalable: 1 Billion gates evaluated at ~100,000 gates/second on laptop NDSS 2011 USENIX Security 2011

17
David 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: { , , , … } Bobs Recessive genes: { , , , … } [ 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:

26
26 Cost to sequence human genome Moores Law prediction (halve every 18 months) Data from National Human Genome Research Institute: 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 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 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: { , , , … } Bobs Heterozygous Recessive genes: { , , , … }

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 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 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 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

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

Similar presentations

© 2016 SlidePlayer.com Inc.

All rights reserved.

Ads by Google