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

privacy preserving location proximity
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

Privacy-preserving Location Proximity

Per Hallgren, Chalmers Univ. Gothenburg

Martín Ochoa, Siemens AG (Recently TUM) Andrei Sabelfeld, Chalmers University of Technology

slide-2
SLIDE 2

TOC

  • 1. Background
  • 2. Protocol
  • 3. Theoretical Evaluation
  • 4. Practical Evaluation
slide-3
SLIDE 3

Proximity Testing

Answers the question: "Am I close?"

slide-4
SLIDE 4

Homomorphic Encryption

A homorphic encryption scheme allows you to perform decipherable operations on ciphertext. RSA: E(x) = xe mod m RSA is multiplicatively homomorphic

E(x)×E(y)= xe×ye mod m =(x×y)e mod m = E(x×y)

slide-5
SLIDE 5

Homomorphic Encryption

Paillier: E(x) = gx mod m Paillier is additively homomorphic

E(x)×E(y) = gx×gy mod m = gx+y mod m = E(x+y)

Paillier also has this exiting property

E(x)y = (gx)y mod m = gx×y mod m = E(x×y)

slide-6
SLIDE 6

Protocol

Mission Statement

Answers the question: "Am I close?" Without disclosing:

  • Any information about

Alice to Bob or Claire

  • The position or distance
  • f Bob and Claire to Alice
slide-7
SLIDE 7

Protocol

Mission Statement

Answers the question: "Am I close?" Without disclosing:

  • Any information about

Alice to Bob or Claire

  • The position or distance
  • f Bob and Claire to Alice

We ONLY say either YES or NO ??? YES NO ???

slide-8
SLIDE 8

Protocol

Outline We ONLY say either YES or NO Alice

  • Sends encrypted info to Bob

Bob

  • Computes distance
  • Sends boleanized distance

Done!

f = F(position) G ( f )

slide-9
SLIDE 9

Protocol

Outline We ONLY say either YES or NO Alice:

  • Sends encrypted info to Bob

Bob

  • Computes distance
  • Sends boleanized distance

Done! 2 1 3

f = F(position) G ( f )

slide-10
SLIDE 10

Protocol

Distance Calculation

Trivial Geometry

Distance from A to B:

Expand & rewrite as:

(xa,ya) (xb,yb)

A B

slide-11
SLIDE 11

Using Homomorphic Encryption:

Protocol

Distance Calculation

slide-12
SLIDE 12

Using Homomorphic Encryption:

Protocol

Distance Calculation

Recall! Paillier is additively homomorphic E(x)×E(y) = gx×gy mod m = E(x+y)

And thus:

E(x)/E(y) = gx/gy mod m = E(x-y)

slide-13
SLIDE 13

Using Homomorphic Encryption:

Protocol

Distance Calculation

slide-14
SLIDE 14

Using Homomorphic Encryption:

Protocol

Distance Calculation

Recall!

Raising a cipher text to a plaintext is multiplication

E(x)y = (gx)y mod m = gx×y mod m

slide-15
SLIDE 15

Using Homomorphic Encryption:

Protocol

Distance Calculation

slide-16
SLIDE 16

Using Homomorphic Encryption:

Protocol

Distance Calculation

slide-17
SLIDE 17

F(position)

Protocol

Distance Calculation f = F(position)

G ( f )

slide-18
SLIDE 18

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!

Protocol

Distance Obfuscation

slide-19
SLIDE 19

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

Protocol

Distance Obfuscation

slide-20
SLIDE 20

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

Protocol

Distance Obfuscation

slide-21
SLIDE 21

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!

Protocol

Distance Obfuscation

slide-22
SLIDE 22

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!

Protocol

Distance Obfuscation

slide-23
SLIDE 23

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?

Protocol

Distance Obfuscation

slide-24
SLIDE 24

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!

Protocol

Distance Obfuscation

slide-25
SLIDE 25

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!

Protocol

Distance Obfuscation

slide-26
SLIDE 26

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!

Protocol

Distance Obfuscation

slide-27
SLIDE 27

Protocol

Final Result

slide-28
SLIDE 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))

slide-29
SLIDE 29

Theoretical Evaluation

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

slide-30
SLIDE 30

Practical Evaluation

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

slide-31
SLIDE 31

Practical Evaluation

Benchmarks 80 bit key

slide-32
SLIDE 32

Practical Evaluation

Benchmarks 1024 bit key

slide-33
SLIDE 33

Practical Evaluation

Benchmarks

Keysize comparison

slide-34
SLIDE 34

Practical Evaluation

Benchmarks

Keysize comparison Log scale

slide-35
SLIDE 35

Thank You!

Questions?

slide-36
SLIDE 36

Thank You!