privacy preserving location proximity
play

Privacy-preserving Location Proximity Per Hallgren, Chalmers Univ. - PowerPoint PPT Presentation

Privacy-preserving Location Proximity Per Hallgren, Chalmers Univ. Gothenburg Martn Ochoa, Siemens AG (Recently TUM) Andrei Sabelfeld, Chalmers University of Technology TOC 1. Background 2. Protocol 3. Theoretical Evaluation 4. Practical


  1. Privacy-preserving Location Proximity Per Hallgren, Chalmers Univ. Gothenburg Martín Ochoa, Siemens AG (Recently TUM) Andrei Sabelfeld, Chalmers University of Technology

  2. TOC 1. Background 2. Protocol 3. Theoretical Evaluation 4. Practical Evaluation

  3. Proximity Testing Answers the question: "Am I close?"

  4. Homomorphic Encryption A homorphic encryption scheme allows you to perform decipherable operations on ciphertext. RSA: E(x) = x e mod m RSA is multiplicatively homomorphic E(x) × E(y)= x e × y e mod m =(x × y) e mod m = E(x × y)

  5. Homomorphic Encryption Paillier: E(x) = g x mod m Paillier is additively homomorphic E(x) × E(y) = g x × g y mod m = g x+y mod m = E(x+y) Paillier also has this exiting property E(x) y = (g x ) y mod m = g x × y mod m = E(x × y)

  6. Protocol Mission Statement Answers the question: "Am I close?" Without disclosing: • Any information about Alice to Bob or Claire • The position or distance of Bob and Claire to Alice

  7. Protocol Mission Statement ??? Answers the question: "Am I close?" ??? Without disclosing: • Any information about YES NO Alice to Bob or Claire • The position or distance of Bob and Claire to Alice We ONLY say either YES or NO

  8. Protocol Outline We ONLY say either YES or NO f = F(position) Alice - Sends encrypted info to Bob Bob ) ( f G - Computes distance - Sends boleanized distance Done!

  9. Protocol Outline We ONLY say either YES or NO f = F(position) Alice: - Sends encrypted info to Bob 2 Bob ) ( f G - Computes distance 1 - Sends boleanized distance 3 Done!

  10. Protocol Distance Calculation Trivial Geometry (x a ,y a ) Distance from A to B: A (x b ,y b ) B Expand & rewrite as:

  11. Protocol Distance Calculation Using Homomorphic Encryption:

  12. Protocol Distance Calculation Using Homomorphic Encryption: Recall! Paillier is additively homomorphic E(x) × E(y) = g x × g y mod m = E(x+y) And thus: E(x)/E(y) = g x /g y mod m = E(x-y)

  13. Protocol Distance Calculation Using Homomorphic Encryption:

  14. Protocol Distance Calculation Using Homomorphic Encryption: Recall! Raising a cipher text to a plaintext is multiplication E(x) y = (g x ) y mod m = g x × y mod m

  15. Protocol Distance Calculation Using Homomorphic Encryption:

  16. Protocol Distance Calculation Using Homomorphic Encryption:

  17. Protocol Distance Calculation f = F(position) F(position) ) f ( G

  18. Protocol Distance Obfuscation How to obscure the distance? Now we know how Bob can compute the distance, but he doesn't want to tell Alice what the distance is!

  19. Protocol Distance Obfuscation How to obscure the distance? Now we know how Bob can compute the distance, but he doesn't want to tell Alice what the distance is! • Oblivious comparison: (D-x) * rand()

  20. Protocol Distance Obfuscation How to obscure the distance? Now we know how Bob can compute the distance, but he doesn't want to tell Alice what the distance is! • Oblivious comparison: (D-x) * rand()

  21. Protocol Distance Obfuscation How to obscure the distance? Now we know how Bob can compute the distance, but he doesn't want to tell Alice what the distance is! • Oblivious comparison: (D-x) * rand() • For every x < r^2!

  22. Protocol Distance Obfuscation How to obscure the distance? Now we know how Bob can compute the distance, but he doesn't want to tell Alice what the distance is! • Oblivious comparison: (D-x) * rand() • For every x < r^2!

  23. Protocol Distance Obfuscation How to obscure the distance? Now we know how Bob can compute the distance, but he doesn't want to tell Alice what the distance is! • Oblivious comparison: (D-x) * rand() • For every x < r^2! • Is this enough?

  24. Protocol Distance Obfuscation How to obscure the distance? Now we know how Bob can compute the distance, but he doesn't want to tell Alice what the distance is! • Oblivious comparison: (D-x) * rand() • For every x < r^2! • Is this enough? NO!

  25. Protocol Distance Obfuscation How to obscure the distance? Now we know how Bob can compute the distance, but he doesn't want to tell Alice what the distance is! • Oblivious comparison: (D-x) * rand() • For every x < r^2! • Is this enough? • Also shuffle!

  26. Protocol Distance Obfuscation How to obscure the distance? Now we know how Bob can compute the distance, but he doesn't want to tell Alice what the distance is!

  27. Protocol Final Result

  28. Theoretical Evaluation Runtime Analysis Paillier Encryption: O(log(n) * M(n)) Decryption: O(log(n) * M(n)) Alice1: O(3log(n) * M(n)) Bob: O(r^2 * log(n) * M(n)) Alice2: O(r^2 * log(n) * M(n))

  29. Theoretical Evaluation Size Analysis Paillier ciphertext: O(log(n)) Size of response from Bob: O(r^2 * log(n))

  30. Practical Evaluation Proof of concept Small server-client application Server relays messages to appropriate clients All clients are interested in each other

  31. Practical Evaluation Benchmarks 80 bit key

  32. Practical Evaluation Benchmarks 1024 bit key

  33. Practical Evaluation Benchmarks Keysize comparison

  34. Practical Evaluation Benchmarks Keysize comparison Log scale

  35. Thank You! Questions?

  36. Thank You!

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