Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and...

32
Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University { spravin, vinodg, iftode } @ cs.rutgers.edu

Transcript of Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and...

Page 1: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

Privately Querying Location-based Serviceswith SybilQuery

Pravin Shankar, Vinod Ganapathy, and Liviu IftodeDepartment of Computer Science

Rutgers University

{ spravin, vinodg, iftode } @ cs.rutgers.edu

Page 2: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 2

Location-based Services (LBSes)Location-based Services (LBSes)

Implicit assumption: Users agree to reveal their locations for access to services

How is the traffic in the road ahead?

Where is my nearest

restaurant?

Page 3: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 3

Privacy concerns while querying an LBSPrivacy concerns while querying an LBS

• With two weeks of GPS data from a user’s car, we can infer home address (median error < 60 m) [Krumm ‘07]• 5% of people are uniquely identified by their home and work locations even if it is known only at the census tract level [Golle and Partridge ‘09]

Page 4: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 4

Querying an LBSQuerying an LBS

LBS

. . .

Work

loc1

locn

Home

loc2

Client

Page 5: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 5

Work''Work'Work

Basic IdeaBasic Idea

LBS

. . .

Home

ClientHome''Home'

loc1, loc1', loc1

''

loc2, loc2', loc2

''

locn, locn', locn

''

Page 6: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 6

What the LBS seesWhat the LBS sees

Which of these is the real user?

Page 7: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 7

OutlineOutline

• Introduction• SybilQuery Overview• Design Challenges• Implementation• Evaluation and Results• Conclusions and Future Work

Page 8: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 8

SybilQuery OverviewSybilQuery Overview

• Basic Idea: Achieves privacy using synthetic (Sybil) queries

• For each real user trip, the system generates– k-1 Sybil start and end points (termed endpoints)– k-1 Sybil paths

• For each real query made, the system generates– k-1 Sybil Queries

Page 9: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 9

OutlineOutline

• Introduction• SybilQuery Overview• Design Challenges• Implementation• Evaluation and Results• Conclusions and Future Work

Page 10: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 10

SybilQuery ChallengesSybilQuery Challenges

• Endpoint generation:– How to automatically generate synthetic endpoints

similar to a pair of real endpoints?

• Path generation:– How to choose the waypoints of the Sybil path?

• Query generation:– How to simulate motion along the Sybil path?

Page 11: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 11

Basic design of SybilQueryBasic design of SybilQuery

Page 12: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 12

Endpoint GeneratorEndpoint Generator

• Produces synthetic endpoints that resemble the real source and destination

• High-level idea: – Tag locations with features

– Identify clusters of locations that share similar features

• Feature used in SybilQuery: traffic statistics

Page 13: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 13

Tagging locations with traffic statistics (1/2)Tagging locations with traffic statistics (1/2)

• Naïve approach: Annotate locations with descriptive tags– Eg. “parking lot”, “downtown office building”, “freeway” – Laborious manual task

• Our approach: Automatically compute features using a database of regional traffic statistics– Dataset: Month-long GPS traces from the San

Francisco Cabspotter project - 530 unique cabs; 529,533 trips

– Compute traffic density τl for each location from dataset

Page 14: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 14

Tagging locations with traffic statistics (2/2)Tagging locations with traffic statistics (2/2)

• Locations represented as QuadTree– Balances precision with scalability

San Francisco Airport. Black blocks have higher densities

Page 15: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 15

Finding suitable endpoints using reverse geocodingFinding suitable endpoints using reverse geocoding

• Real endpoints do not start in non-driveable terrain

Random point in geographic location

Reverse

Geocoding

Street address closest to the random point

Page 16: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 16

Path GeneratorPath Generator

• Consults an off-the-shelf navigation service– Our implementation uses

Microsoft Multimap API to obtain waypoints

• Users may not always follow the shortest path to destination– Detours, road closures, user

intention• Computes multiple paths to

the destination (with varying lengths)

• Uses a probability distribution to choose path

Page 17: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 17

Query GeneratorQuery Generator

• Triggered each time the user queries the LBS

• Simulates the motion of users along the Sybil paths

• Uses current traffic conditions to more accurately simulate user movement– Eg. Simulate slower

movement if traffic is congested

Page 18: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 18

OutlineOutline

• Introduction• SybilQuery Overview• Design Challenges• Implementation• Evaluation and Results• Conclusions and Future Work

Page 19: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 19

SybilQuery ImplementationSybilQuery Implementation

• An interface akin to navigation systems

• Input:– The source and

destination address for the trip

– A security parameter k• Number of Sybil users

• Query interface:– Integrated with Yahoo!

Local Search

Page 20: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 20

OutlineOutline

• Introduction• SybilQuery Overview• Design Challenges• Implementation • Evaluation and Results• Conclusions and Future Work

Page 21: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 21

Evaluation GoalsEvaluation Goals

1. Privacy• How indistinguishable are Sybil queries from real

queries?

2. Performance• Can Sybil queries be efficiently generated?

Page 22: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 22

Evaluation: PrivacyEvaluation: Privacy

• User Study– Give the working system to adversarial users, who

would try to break the system by find real user paths hidden between Sybil paths

– 15 volunteers

• Methodology– Pick real paths from the Cabspotter traces– Use SybilQuery to generate Sybil paths with different

values of k

Page 23: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 23

Results from user studyResults from user study

k # Questions # Correct Probability

4 75 20 0.26

6 75 14 0.19

Page 24: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 24

User approaches to distinguish queriesUser approaches to distinguish queries

• Contrasting rationale to guess real users– “Circuitous paths”– “Prominent start/end location”– “Odd man out”

Page 25: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 25

Evaluation: PerformanceEvaluation: Performance

• Setup:– Server:

• 2.33 GHz Core2 Duo, 3 GB RAM, 250 GB SATA (7200 RPM)

– Client:• 1.73 GHz Pentium-M laptop, 512 MB RAM, Linux 2.6

– Privacy parameter k = 4 (unless otherwise specified)– Each experiment repeated 50 times

• Micro-benchmarks– One-time and once-per-trip costs– Query-response latency of SybilQuery

• Comparison with Spatial Cloaking

Page 26: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 26

One-time and once-per-trip costsOne-time and once-per-trip costs

• One-time cost – preprocessing of traffic database– 2 hours 16 mins (processed 529,533 trips)

• Once-per-trip costs – endpoint generation and path generation

Task Average Time (sec) St dev (sec)

Endpoint generation 5.47 1.02

Path generation * 0.36 0.15

* Includes network latency to query the Microsoft MultiMap API

Page 27: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 27

Query-response latency of SybilQueryQuery-response latency of SybilQuery

• Scales linearly with k (number of Sybil users)• Sub-second latency for typical values of k

Page 28: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 28

Spatial CloakingSpatial Cloaking

• Spatial Cloaking – k-anonymity solution that uses anonymizers

• Users send their location to anonymizer• Anonymizer computes cloaked region

– Region where atleast k users are present

clientserveranonymizer

Page 29: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 29

Performance Comparison with Spatial CloakingPerformance Comparison with Spatial Cloaking

• Cloaked regions grow as users travelCloaked regions grow as users travel• SybilQuery overhead constantSybilQuery overhead constant

Response Size as users travelResponse Size as users travel

Page 30: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 30

Related WorkRelated Work

• Synthetic Locations for Privacy [Krumm ’09, Kido ‘05]

• Spacial Cloaking [Gruteser and Grunwald ’03, and others]

• Peer-to-peer Schemes [Chow ’06, Ghinita ‘07]• Private Information Retrieval (PIR) [Ghinita ’08]

Detailed list is available in paper

Page 31: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

October 1, 2009 Ubicomp 2009 31

Conclusions and Future WorkConclusions and Future Work

• SybilQuery: Efficient decentralized technique to hide user location from LBSes

• Experimental results demonstrate:– Sybil queries can be generated efficiently– Sybil queries resemble real user queries

• Future Work– Enhance SybilQuery to achieve stronger privacy

guarantees, such as l-diversity, t-closeness and differential privacy

Page 32: Privately Querying Location-based Services with SybilQuery Pravin Shankar, Vinod Ganapathy, and Liviu Iftode Department of Computer Science Rutgers University.

Thank You!Thank You!