AC Chen @ ADL

advertisement
MobiShare: Flexible Privacy-Preserving
Location Sharing in
Mobile Online Social Networks
Wei Wei, Fengyuan Xu, Qun Li
The College of William and Mary
in INFOCOM IEEE 2012
A.C. Chen @ ADL
1
INTRODUCTION
Mobile Online Social Networks (mOSNs)
A.C. Chen @ ADL
2
Mobile Online Social Networks
(mOSNs)
• Many existing OSNs have created content and access
mechanisms tailored to mobile users
A.C. Chen @ ADL
3
New mOSNs
• Some mOSNs are designed specifically to be accessed by
mobile devices such as Foursquare and Gowalla
A.C. Chen @ ADL
4
Privacy Concerns
• While the location-based features make mOSNs more
popular, they also raise significant privacy concerns
– Because users’ physical locations are now being correlated
with their profiles
• All the current mOSNs are under centralized control
– Users’ location privacy will be compromised if the
location data collected by the mOSNs are abused,
inadvertently leaked, or under the control of hackers
A.C. Chen @ ADL
5
Related Work
• SmokeScreen [ACM MobiSys, 2007]
– Flexibly share presence with both friends and strangers
while preserving user privacy
• In [HotMobile, 2010] and [Privacy Enhancing
Technologies, 2007], locations are shared between
established relations in a privacy-preserving way
– limits a large class of mobile social applications
A.C. Chen @ ADL
6
The Main Idea of This Paper…
• In a mOSN, users should be able to control how their
own location information is accessed by others
• The system should work in a way that an adversary
controlling the mOSN cannot obtain users’ location
information
A.C. Chen @ ADL
7
MOBISHRE
USER
Cellular Tower
Location Server
Social Network Server
A.C. Chen @ ADL
8
MobiShare Architecture
A.C. Chen @ ADL
9
Trust and Threat Model
• Assumption:
– Either the social network server or the location server can
be compromised, but the adversary cannot control both
entities
• Threat Model
– Some users may also be malicious seeking to obtain the
location information
– The social network server or the location server may
collude with these malicious users
A.C. Chen @ ADL
10
The Cellular Towers are Trusted
• The cellular carrier generally knows the owner’s
name and address for each subscribed cell phone
– The FCC’s wireless Enhanced 9-1-1 rules [E9-1-1] require
that the cellular carriers can locate the subscribed cell
phones with an accuracy of 50 to 300 meters
• We make no attempt to conceal the devices’ locations
from the cellular networks
A.C. Chen @ ADL
11
Social Network Server and User
• The social network server manages users’ identityrelated information (profiles, friend lists…)
– It can be a server of any existing OSN that wants to provide
the location-sharing service
• Each user has a unique identifier at the social network
server, a public-private key pair, and a symmetric
session key
– the session key is sharing with all his social network
friends.
A.C. Chen @ ADL
12
Location server and Cellular Tower
• The location server is an untrusted 3rd-party server
storing anonymized location updates of the users
– A company may implement the location server so as to
profit from the OSNs or the users
– Shares a symmetric secret key with the cellular towers
• Each cellular tower has a unique identifier and
generates by itself a symmetric secret key
– It also shares its secret key with the location server
A.C. Chen @ ADL
13
SYSTEM DESIGN
Service Registration
Authentication
Location updates
Querying location
A.C. Chen @ ADL
14
MobiShare System
• Registration
– Before using the location-sharing service, each user needs
to register for the service at the social network server
• Authentication
– Establish an authenticated and secure communication link
between the user and the cellular tower
• Location updates
• Querying location
– Friends’ case
– Strangers’ case
A.C. Chen @ ADL
15
Service Registration
• User A shares his public key PubKeyA with the
social network server
• User A defines access control setting of dfA and dsA
– threshold distances of sharing with friends and strangers
• After registration, the social network server stores an
entry as <IDA,PubKeyA,dfA,dsA> in its
subscriber table
A.C. Chen @ ADL
16
Authentication
request(IDA, ts,
SigA(IDA,ts))
forward (IDA,dfA,dsA)
forward
(IDA, ts, SigA(IDA,ts))
Verification
(IDA,dfA,dsA)
Verification
OK
On the reception of the OK message,
the cellular tower stores an entry as
<IDA,dfA,dsA> in its `user info` table
A.C. Chen @ ADL
17
Location Updates
• The cellular tower perform anonymization when a
user upload his location updates to the location server
– Pseudonyms + dummy location updates
– Each cellular tower periodically generates fake IDs and
saves them in a fake ID pool
• the fake IDs can be efficiently generated using a cryptographic hash
function e.g. fake IDi = SHA(fake IDi−1⊕salt)
A.C. Chen @ ADL
18
Location Updates –
Anonymization
sends(IDA,(x,y),
SessA(x,y))
update `user info`
pick k fake IDs
and choose FIDA
store FIDA in
`user info`
sends mapping
(IDA, FIDA, FID1, ..., FIDk−1)
update
`fake ID`
A.C. Chen @ ADL
19
Location Updates –
Anonymization (con.)
1 real update
update
(FIDA,(x,y),SessA(x,y),dfA, dsA )
update
(FIDi,(xi,yi),stri,dfi,dsi )
k-1 dummy
updates
update
`regionA`
update
`regioni`
.
.
.
The cellular tower sends k location updates
to the location server in a random order
with random time intervals
following the exponential distribution
A.C. Chen @ ADL
20
Dummies Must Behave
Like True Users
• The cellular tower follows the method [Kido et al.
2005] to generates k−1 dummy locations within its
coverage
– Anonymous communication technique using false position
data (dummies) mixed with true position data
A.C. Chen @ ADL
21
Table View
- location
A.C. Chen @ ADL
22
Querying Friends’ Locations
query
(IDA,’f’,‘1mi’)
((IDi,Sessi(xi,yi)),
(IDj,Sessj(xj,yj))…)
forward (IDA,’f’,‘1mi’,
SecKeyLoc(CIDC,seq))
create `FIDlist` by looking
up `fake ID`
query(FIDA,’f’,FIDlist,’1mi’,
SecKeyLoc(CIDC,seq))
(SecKeyc((FIDi,Sessi(xi,yi
))…,seq),mapping entries)
access
control
SecKeyc
((FIDi,Sessi(xi,yi))…,seq)
decrypt location
entries
Each mapping entry is of
the form as (FIDj,IDj)
consists of the fake IDs of all of A’s friends
(real and dummies) of
all A’s friends
A.C. Chen @ ADL
23
Querying Strangers’ Locations
query
(IDA,’s’,‘1mi’)
forward (’s’,‘1mi’,
SecKeyLoc(FIDA,CIDC,seq))
forward
looks up
`region`
(SecKeyc((FIDi,(xi,yi)),
(FIDj,(xj,yj))…,seq),
FIDlist)
(SecKeyc((FIDi,(xi,yi)),
(FIDj,(xj,yj))…,seq),
mapping entries)
the n nearby fake
((IDi,(xi,yi)),
(IDj,(xj,yj))…)
decrypt location entries
and double check
Each mapping entry
is of the form as
(FIDj,IDj,dsj)
IDs are
mixed with the randomly
picks (k−1)n fake IDs from
the location update database
FIDlist consists of the n nearby
fake IDs mixed with the (k − 1)n
randomly selected fake IDs
A.C. Chen @ ADL
24
EVALUATION
Experiment and Evaluation
A.C. Chen @ ADL
25
Experimental Setup
• Cellular tower : emulated by a laptop
– the smartphone communicates with the laptop through
Verizon’s 3G data service
• Social network server : deployed on a third-party
cloud hosting services provided by JoyentCloud
• Location server : deployed on a 3rd-party cloud
hosting services provided Linode
A.C. Chen @ ADL
26
Experimental Setup (cont.)
• Client : implemented in java on a MOTOROLA
DROID 2 Global smartphone
– the size of this executable is 252KB.
– memory footprint of 12MB when running
• Use a data set consisting of 48,014 users and the
social network topology among them as a social
network sample
A.C. Chen @ ADL
27
Client Interface
A.C. Chen @ ADL
28
Experiment
• The anonymity level k is set to be 5
• Use 128-bit AES for symmetric key encryption and
decryption
• The client is set to update its location every 30
seconds, and query the locations of friends or nearby
strangers every 1 minute
A.C. Chen @ ADL
29
Experiment Results
• Low overhead of the client
– a client only consumes 1.5% of the battery power, with
average CPU utilization of 0.3%
• Low overhead incurred by our scheme on the cellular
towers
– when there are 1000 connecting users, the cellular tower
service only uses 4.1% of the CPU power and 91MB
memory
A.C. Chen @ ADL
30
Conclusion
• MobiShare supports the features of location sharing
in real-world mOSNs :
– querying locations within a certain range
– user-defined access control
– no change to the existing OSNs’ architectures, the
adversary cannot link a precise location to an identified
user
A.C. Chen @ ADL
31
Download