51
A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

  • Upload
    others

  • View
    15

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

A Location-Privacy Platform for Smartphone Apps

Saikat Guha, Mudit Jain, Venkat Padmanabhan

(Microsoft Research India)

Page 2: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Location-Privacy Problem

• “[TaintDroid OSDI’10] studied 30 popular Android applications that use location, camera, microphone data. [They] found that 15 send users' location information to remote advertisement or analytics servers.”

Page 3: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

+37.4179, -121.9094

Page 4: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Location-Privacy Problem

• “[TaintDroid OSDI’10] studied 30 popular Android applications that use location, camera, microphone data. [They] found that 15 send users' location information to remote advertisement or analytics servers.”

Page 5: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Privacy-Problem on Mobiles

• App developers are given raw low-level data

– Need 3rd-party libraries to synthesize useful representations

– 3rd party libraries need to contact cloud

• Once app gets lat-long, OS cannot control what app does with it.

Page 6: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Today: Big Picture

App

OS

GPS

Location

Location

Intent 3rd-party

Cloud Service

Phone

Page 7: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Big Picture

App

OS

GPS

Intent

Location

Koi Privacy-Preserving

Cloud Service

Phone

Page 8: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Raise Level of Abstraction

• For the app developer:

– Triggers and callback based API

– Rich specification of triggers, e.g.,

• “Within 5 blocks from Bob’s current location”

• “At any grocery store”

• Platform support:

– Privacy-preserving cloud service to support this abstraction.

Page 9: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Defining Privacy

• K-anonymity, L-diversity, Differential Privacy

– Applicable to learning

– Not applicable to fine-grained personalization

• Unlinkability – “Saikat is looking for Bail-bonds” (private)

– “Someone is looking for Bail-bonds” (not-private)

– “Saikat is looking for something” (not-private)

Page 10: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Location-Based Advertising

ZigZag Bail-Bond N 2nd St.

Saikat Bail-Bond? 5 blocks from

“current location”?

I = CreateItem(“ZigZag”) I.AddAttr(“Bail-Bond”) I.AddLocAttr(“N 2nd St., San Jose, CA”)

T = CreateTrigger(callback) T.AddAttr(“Bail-Bond”) T.AddLocAttr(“cur loc + 5blk”, True)

Page 11: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

Page 12: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag Bail-Bond

Page 13: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag Bail-Bond [•]M

Page 14: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag Bail-Bond [•]M [[•]M]C

Page 15: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag [[•]M]C

Page 16: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

[[•]M]C

ZigZag U1

U1

Page 17: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

[[•]M]C

ZigZag U1

U1

Page 18: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

[[•]M]C

ZigZag U1 U1 R1

R1

Page 19: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag U1 U1 R1

R1 [•]M

Page 20: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag U1 U1 R1

R1 [•]M

Page 21: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag U1 U1 R1

R1 Bail-Bond

Page 22: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

Page 23: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

Page 24: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

Saikat U2

R3

Page 25: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

Saikat U2

R3

Saikat “cur loc”

+ 5blk

Page 26: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

Saikat U2

R3

Saikat 37.41,-121.9

+ 5blk

Page 27: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

Saikat U2

R3

Saikat [[•]M]C

Page 28: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

Saikat U2

R3

U2 R4

[•]M R4

Page 29: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

Saikat U2

R3

U2 R4

37.41,-121.9 + 5blk

R4

Page 30: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5blk

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

Saikat U2

R3

U2 R4

R4

Page 31: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

U2 R4

Saikat U2

R3

R4

Saikat

Saikat

Page 32: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

U2 R4

Saikat U2

R3

R4

Saikat

U2

Page 33: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

U2 R4

Saikat U2

R3

R4

Saikat

R3

Page 34: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

U2 R4

Saikat U2

R3

R4

Saikat

R1

Page 35: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

U2 R4

Saikat U2

R3

R4

Saikat

Page 36: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

U2 R4

Saikat U2

R3

R4

Saikat

R4

Page 37: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

U2 R4

Saikat U2

R3

R4

Saikat

R2

Page 38: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

U2 R4

Saikat U2

R3

R4

Saikat

Page 39: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

U2 R4

Saikat U2

R3

R4

Saikat

U2 U1

Page 40: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

U2 R4

Saikat U2

R3

R4

Saikat

ZigZag Saikat

Page 41: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Privacy-Preserving Matching

ZigZag Bail-Bond

N 2nd St. Saikat Bail-Bond

“cur loc” + 5

Matcher Combiner

ZigZag U1 U1 R1

Bail-Bond

R1

U1 R2

N 2nd St. R2

U2 R3

U2 R4

Saikat U2

R3

R4

Saikat

ZigZag

Page 42: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi Features

• Matching based on attribute plain-text

– Location, spelling correction, translation

– Other semantic transformation

• OS can auto-update location attributes

– Without waking app up

Page 43: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi Applications: Location-Based …

• Advertising

• Content tagging (photos, etc.)

• Search

• Recommendations

• Social networking

• Navigation

Page 44: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Private Mobile Social Network

Rob ES (me:saikat)? cur loc + 5blk?

Saikat ES(me:saikat) cur loc ER (fr:rob)

Bob ER (fr:rob)? cur loc + 5blk?

Page 45: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Koi: Private Navigation

Saikat cur loc to ZigZag?

37.41,-121.9 to ZigZag?

D0 Turn left

D1 Turn right

D2 Turn around

Turn left? 37.42,-121.8

to ZigZag? Turn right?

Page 46: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Privacy-Properties

• Proverif Automated Theorem Prover

• Model Koi protocol in applied pi-calculus – Unlinkability (using Proverif secrecy)

– Adversary (spy channels; Honest-but-Curious)

– Datastore (using Proverif asynchronous channels)

• Proofs for: 1. User cannot be linked with attribute

2. User’s multiple attributes cannot be linked

3. Matched users cannot be linked (extn.)

Page 47: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Malicious Applications

• Filter triggers

– By location, time-of-day, etc.

• Rate-limit triggers and callbacks

– Per user, across all users, etc.

• Sybil apps trying to stay under threshold

– Economic burden (developer key costs $$)

Page 48: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Implementation and Deployment

• Koi Matcher service implemented and publicly deployed

– REST based API

– HTML5 (mobile) browsers, and C# bindings

– Scales well

• Combiner:

– “Bring-your-own-combiner”

– Or use our combiner (uhhh…)

Page 49: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Summary

• Current Get-Lat-Long API is bad for privacy

• Koi raises the level of abstraction

– Simple yet powerful abstraction

– Easy for app-developers to use

– Allows platform to provide user privacy

• Proverif is a cool tool

Page 50: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Adoption Incentives

• Up to the platform

• Positive feedback:

– Higher placement on app marketplace for apps not using legacy location API

• Negative feedback:

– More nag screens for apps using legacy API

• Enforcement:

– Block legacy API for free apps

Page 51: A Location-Privacy Platform for Smartphone Apps · A Location-Privacy Platform for Smartphone Apps Saikat Guha, Mudit Jain, Venkat Padmanabhan (Microsoft Research India)

Collusion

• Combiner

– Allow privacy-advocates (EFF, ACLU), anti-virus companies, certificate agencies (Verisign), non-profits (Mozilla), to run combiner.

– Their existence entirely dependent on public trust

• Matcher

– User picks combiner (out of hundreds). Matcher needs to collude with many to be effective. Quickly discovered.