Secure Computation on Mobile Devices Peter Chapman pmc8p CS 1120 December 2, 2011

Embed Size (px)

Citation preview

  • Slide 1
  • Secure Computation on Mobile Devices Peter Chapman http://www.cs.virginia.edu/~pmc8p CS 1120 December 2, 2011
  • Slide 2
  • Microsoft Research (Summer 2011) Web Side-Channel Leaks (2010-2011) Secure Computation on Mobile Devices (2011-Present)
  • Slide 3
  • Mutual Contact Discovery Alice Bob Sharing contact list with a stranger is unacceptable Discover! Someone nearby also knows Alice and 8 other contacts of yours!
  • Slide 4
  • Trust someone else? Alice Bob
  • Slide 5
  • The Dilemma Can we interact with others and control our data?
  • Slide 6
  • Secure Two-Party Computation Private Data: a Private Data: b Bob Alice Garbled Circuit Protocol Andrew Yao, 1982/1986
  • Slide 7
  • Yaos Garbled Circuits InputsOutput abx 000 010 100 111 AND a b x
  • Slide 8
  • 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.
  • Slide 9
  • 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 )
  • Slide 10
  • Chaining Garbled Circuits 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!
  • Slide 11
  • Slide 12
  • Yaos Garbled Circuits InputsOutput abx 000 010 100 111 AND a b x
  • Slide 13
  • Computing with Meaningless Values? InputsOutput abx a0a0 b0b0 x0x0 a0a0 b1b1 x0x0 a1a1 b0b0 x0x0 a1a1 b1b1 x1x1 a i, b i, x i are random values, chosen by the circuit generator but meaningless to the circuit evaluator.
  • Slide 14
  • We use 80-Bit Random Numbers 11111111111111111111111111111111111111111110100001000000010001000011011000001000 1,208,925,819,614,527,173,703,176 1 septillion, 208 sextillion, 925 quintillion, 819 quadrillion, 614 trillion, 527 billion, 173 million, 703 thousand, and 176
  • Slide 15
  • Computing with Meaningless Values? InputsOutput abx a0a0 b0b0 x0x0 a0a0 b1b1 x0x0 a1a1 b0b0 x0x0 a1a1 b1b1 x1x1
  • Slide 16
  • Computing with Meaningless Values? InputsOutput abx 193b0b0 x0x0 b1b1 x0x0 a1a1 b0b0 x0x0 a1a1 b1b1 x1x1 Really 80-Bit Numbers
  • Slide 17
  • Computing with Meaningless Values? InputsOutput abx 193b0b0 x0x0 b1b1 x0x0 465b0b0 x0x0 b1b1 x1x1 Really 80-Bit Numbers
  • Slide 18
  • Computing with Meaningless Values? InputsOutput abx 193657x0x0 193b1b1 x0x0 465657x0x0 465b1b1 x1x1 Really 80-Bit Numbers
  • Slide 19
  • Computing with Meaningless Values? InputsOutput abx 193657x0x0 193255x0x0 465657x0x0 465255x1x1 Really 80-Bit Numbers
  • Slide 20
  • Computing with Meaningless Values? InputsOutput abx 193657844 193255844 465657844 465255x1x1 Really 80-Bit Numbers
  • Slide 21
  • Computing with Meaningless Values? InputsOutput abx 193657844 193255844 465657844 465255123 Really 80-Bit Numbers
  • Slide 22
  • Computing with Garbled Tables InputsOutput abx 193657Enc 193;657 (844) 193255Enc 193;255 (844) 465657Enc 465;657 (844) 465255Enc 465;255 (123) Bob can only decrypt one of these! Garbled And Gate Enc 193;255 (844) Enc 465;657 (123) Enc 465;657 (844) Enc 193;657 (844) Really 80-Bit Numbers
  • Slide 23
  • Garbled And Gate Enc 193;255 (844) Enc 465;657 (123) Enc 465;657 (844) Enc 193;657 (844) AliceBob Garbled And Gate Enc 193;255 (844) Enc 465;657 (123) Enc 465;657 (844) Enc 193;657 (844) a0a0 193
  • Slide 24
  • Oblivious Transfer AliceBob b0b0 657 b1b1 255 657 Garbled And Gate Enc 193;255 (844) Enc 465;657 (123) Enc 465;657 (844) Enc 193;657 (844) 193 844 0
  • Slide 25
  • Potential Applications Common Contacts Favorite Movies Hyper-Targeted Advertising Voting, Auctions & more! Collaborative Scheduling
  • Slide 26
  • http://MightBeEvil.com/mobile/
  • Slide 27
  • Research Advice Dont be afraid.
  • Slide 28
  • Slide 29
  • Attributions iPhone symbol from thenounproject.com collection. "Lock" symbol from thenounproject.com collection.