250 likes | 343 Views
Anonymized Social Networks, Hidden Patterns, and Structural Stenography Lars Backstrom, Cynthia Dwork, Jon Kleinberg WWW 2007 – Best Paper. OUTLINE. Problem Some graph theory Walk-Based Attack Cut-Based Attack (Semi)-Passive Attacks. PROBLEM. Massive social network graphs exist
E N D
Anonymized Social Networks, Hidden Patterns, and Structural Stenography Lars Backstrom, Cynthia Dwork, Jon Kleinberg WWW 2007 – Best Paper
OUTLINE • Problem • Some graph theory • Walk-Based Attack • Cut-Based Attack • (Semi)-Passive Attacks
PROBLEM • Massive social network graphs exist • MySpace • FaceBook • Phone Records • Email • Instant Messaging... • Social network structure is valuable • Just removing names isn't enough (we show this)
MOTIVATION • Privacy concerns – who talks to who • Economic concerns – selling to marketers • AOL Search Data
GENERAL METHOD • Watermark the graph so that finding the watermark allows us to find individuals • Reveals the removed names • Reveals edges between revealed names
WALK BASED ATTACK • Create a subgraph S to embed • Desired Properties of Subgraph • Doesn't already exist in the graph • Can be easily found • No non-trivial automorphisms (can't be mapped to itself beyond the identity)
WALK BASED ATTACK • Let k = (2+d)logn be the number of nodes in the subgraph
x2 x3 x1 x4
WALK BASED ATTACK • Let k = (2+d)logn be the number of nodes in the subgraph • Pick W = {w1...wb} users to target
w1 w2 x2 x3 w3 x1 x4
WALK BASED ATTACK • Let k = (2+d)logn be the number of nodes in the subgraph • Pick W = {w1...wb} users to target • Pick a unique set of nodes in the subgraph to connect to each wi
w1 w2 x2 x3 w3 x1 x4
WALK BASED ATTACK • Let k = (2+d)logn be the number of nodes in the subgraph • Pick W = {w1...wb} users to target • Pick a unique set of nodes in the subgraph to connect to each wi • Pick an external degree for each xi and create additional spurious edges
w1 w2 x2 x3 w3 x4 x1
WALK BASED ATTACK • Create the internal edges by including each edge (xi,xi+1). • Include all other edges with probability ½ • Theoretical result guarantees that w.h.p. this subgraph doesn't exist in G and has no automorphisms.
w1 w2 x2 x3 w3 x1 x4
FINDING THE SUBGRAPH • Find all nodes with degree(x1) • Find all nodes connected to x1 with degree(x2). Repeat by building a tree • With high probability the tree will be pruned to our embedded subgraph.
a b x1 w2 w1 c x2 x3 d x4 w2 x2 x3 e w3 w3 x1 x4 deg(x1) = 5 deg(x2) = 4 deg(x3) = 6 deg(x4) = 7
QUESTION • What could we do to foil this attack?
Evaluation • LJ Data = 4.4 mil people, 77 mil edges
EVALUATION • Using 7 nodes the attack succeeds w.h.p • Can attack 34 - 70 nodes and ~560 - 2400 edges • Our subgraph is not 'obvious' in the graph without the degree sequence
CUT-BASED ATTACK • Requires O(√logn) nodes instead of O(logn) (theoretical lower bound) • Create a subgraph in a similar manner • Each x1 connects to one wi • Use min-cut methods to find H • Walk-based attack is better • This subgraph is highly disconnected = sticks out
(SEMI)-PASSIVE ATTACKS • Walk and Cut based attacks are active • Groups of users could also collude to execute an attack on their neighbors • Experiments show this works for groups as small as 3 or 4 users • How do you defend against this?