privacy aspects of social graphs
play

Privacy Aspects of Social Graphs Joseph Bonneau Stanford Security - PowerPoint PPT Presentation

Privacy Aspects of Social Graphs Joseph Bonneau Stanford Security Seminar, July 14 2009 University of Cambridge Computer Laboratory Social Context And The Web Everything's Better With Friends... Hyper-presence of friends


  1. Privacy Aspects of Social Graphs Joseph Bonneau Stanford Security Seminar, July 14 2009 University of Cambridge Computer Laboratory

  2. Social Context And The Web

  3. Everything's Better With Friends... • “Hyper-presence” of friends • “networked public spaces” • All web activity will have social context

  4. Facebook Is Becoming A Second Internet... Function Internet version Facebook version Page Markup HTML, JavaScript FBML DB Queries SQL FBQL Email SMTP FB Mail Forums Usenet, etc. FB Groups Instant Messages XMPP FB Chat News Streams RSS FB Stream Authentication OpenID FB Connect Photo Sharing FB Photos Flickr, etc. Video Sharing YouTube, etc. FB Video FB Notes Blogging Blogger, etc. Microblogging Twitter, etc. FB Status Updates FB Points Micropayment Peppercoin, etc. E-Vite Event Planning FB Events Classified Ads craigslist FB Marketplace

  5. Parallel Trend: The Internet is Becoming Social “Given sufficient funding, all web sites expand in functionality until users can add each other as friends”

  6. “Traditional” Social Network Analysis • Performed by sociologists, anthropologists, etc. since the 70's • Use data carefully collected through interviews & observation • Typically < 100 nodes • Complete knowledge • Links have consistent meaning • All of these assumptions fail badly for online social network data

  7. Traditional Graph Theory • Nice Proofs • Tons of definitions • Ignored topics: • Large graphs • Sampling • Uncertainty

  8. Models Of Complex Networks From Math & Physics Many nice models • Erdos-Renyi • Watts-Strogatz • Barabasi-Albert Social Networks properties: • Power-law • Small-world • High clustering coefficient

  9. Real social graphs are complicated!

  10. When In Doubt, Compute! We do know many graph algorithms: • Find important nodes • Identify communities • Train classifiers • Identify anomalous connections Major Privacy Implications!

  11. Privacy Questions • What can we infer purely from link structure?

  12. Privacy Questions • What can we infer purely from link structure? A surprising amount! • Popularity • Centrality • Introvert vs. Extrovert • Leadership potential

  13. Privacy Questions • If we know nothing about a node but it's neighbours, what can we infer?

  14. Privacy Questions • If we know nothing about a node but it's neighbours, what can we infer? A lot! • Gender • Political Beliefs • Location • Breed?

  15. Privacy Questions • Can we anonymise graphs?

  16. Privacy Questions • Can we anonymise graphs? Not easily... • Seminal result by Backstrom et al.: Attack of attack needs just 7 nodes • Can do even better given user's complete neighborhood • Also results for correlating users across networks • Developing line of research...

  17. Privacy Questions • What can we infer if we “compromise” a fraction of nodes?

  18. Privacy Questions • What can we infer if we “compromise” a fraction of nodes? A lot... • Common theme: small groups of nodes can see the rest • Danezis et al. • Nagaraja • Korolova et al. • Bonneau et al.

  19. Privacy Questions • Can we defend against crawling in a sound way? Work in progress!

  20. Privacy Questions • What if we get a subset of neighbours for all nodes?

  21. Privacy Questions • What if we get a subset of k neighbours for all nodes? Emerging question for many social graphs • Facebook and online SNS • Mobile SNS

  22. A Quietly Introduced Feature... Public Search Listings, Sep 2007

  23. Public Search Listings • Unprotected against crawling • Indexed by search engines • Opt out—but most users don't know it exists!

  24. Utility Entity Resolution

  25. Utility Promotion via Network Effects

  26. Legal Status “Your name, network names, and profile picture thumbnail will be available in search results across the Facebook network and those limited pieces of information may be made available to third party search engines. This is primarily so your friends can find you and send a friend request.” -Facebook Privacy Policy

  27. Legal Status Much More Info Now Included...

  28. Legal Status Public Group Pages Recently Added

  29. Obvious Attack • Initially returned new friend set on refresh • Can find all n friends in O( n ·log n ) queries • The Coupon Collector's Problem • For 100 Friends, need 65 page refreshes • As of Jan 2009, friends fixed per IP address

  30. Fun with Tor UK Germany USA Australia

  31. Attack Scenario • Spider all public listings • Our experiments crawled 250 k users daily • Implies ~800 CPU-days to recover all users

  32. Abstraction • Take a graph G = < V , E > • Randomly select k out-edges from each node • Result is a sampled graph G k = < V , E k > • Try to approximate f ( G ) ≈ f approx ( G k )

  33. Approximable Functions • Node Degree • Dominating Set • Betweenness Centrality • Path Length • Community Structure

  34. Experimental Data • Crawled networks for Stanford, Harvard universities • Representative sub-networks # Users Mean d Median d Stanford 15043 125 90 Harvard 18273 116 76

  35. Back To Our Abstraction • Take a graph G = < V , E > • Randomly select k out-edges from each node • Result is a sampled graph G k = < V , E k > • Try to approximate f ( G ) ≈ f approx ( G k )

  36. Estimating Degrees • Convert sampled graph into a directed graph • Edges originate at the node where they were seen • Learn exact degree for nodes with degree < k • Less than k out-edges • Get random sample for nodes with degree ≥ k • Many have more than k in-edges

  37. Estimating Degrees 2 6 3 4 3 3 2 1 4 Average Degree: 3.5

  38. Estimating Degrees 2 6 3 4 3 3 2 1 4 Sampled with k =2

  39. Estimating Degrees ? ? ? ? ? ? ? 1 ? Degree known exactly for one node

  40. Estimating Degrees 1.75 7 3.5 5.25 3.5 1.75 1.75 1 3.5 Naïve approach: Multiply in-degree by average degree / k

  41. Estimating Degrees 2 7 3.5 5.25 3.5 2 2 1 3.5 Raise estimates which are less than k

  42. Estimating Degrees 2 7 3.5 5.25 3.5 2 2 1 3.5 Nodes with high-degree neighbors underestimated

  43. Estimating Degrees 2 7 3.5 5.25 3.5 3.5 2 1 3.5 Iteratively scale by current estimate / k in each step

  44. Estimating Degrees 2 5.5 2.75 5.5 2.75 3.5 2 1 3.63 After 1 iteration

  45. Estimating Degrees 2 5.35 2.68 5.35 2.68 3.41 2 1 3.53 Normalise to estimated total degree

  46. Estimating Degrees 2 5.91 2.48 5.09 2.83 3.04 2 1 3.64 Convergence after n > 10 iterations

  47. Estimating Degrees • Converges fast, typically after 10 iterations • Absolute error is high—38% average • Reduced to 23% for nodes with d ≥ 50 • Still accurately can pick high degree nodes

  48. Aggregate of x highest-degree nodes

  49. Comparison of sampling parameters

  50. Dominating Sets • Set of Nodes D ⊆ V such that ∪ D Neighbours( D )= V • Set allows viewing the entire network • Also useful for marketing, trend-setting

  51. Dominating Sets 1 3 3 3 5 4 2 3 4 4 Trivial Algorithm: Select High-Degree Nodes in Order

  52. Dominating Sets 1 3 3 3 5 4 2 3 4 4 In fact, finding minimal dominating set is NP-complete

  53. Dominating Sets 2 4 4 4 6 5 3 4 5 5 Greedy Algorithm: select for maximal coverage

  54. Dominating Sets 2 0 0 4 1 3 0 2 1 Greedy Algorithm: select for maximal coverage

  55. Dominating Sets 0 0 0 0 0 0 0 0 Shown to perform adequately in practice

  56. Works Well on Sampled Graph

  57. Insensitive to Sampling Parameter! Surprising: Even k = 1 performs quite well

  58. Centrality • A measure of a node's importance • Betweenness centrality :  st  v  C B  v = ∑  st s ≠ v ≠ t ∈ V • Measures the shortest paths in the graph that a particular vertex is part of

  59. Centrality

  60. Community Detection • Goal: Find highly-connected sub-groups • Measure success by high modularity : • Ratio of intra-community edges to random • Normalised to be between -1 and 1

  61. Community Detection 1 0.03 4 0.01 0.01 0.04 4 2 0.03 0.03 0.02 0.03 0.04 3 2 2 0.035 2 0.035 ● Clausen et. al 2004 – find maximal modularity in O( n lg 2 n ) ● Track marginal modularity, update neighbours on each merge

  62. Community Detection 1 0.03 4 0 0.04 4 2 0.03 0.03 0.0125 0.025 0.04 3 2 2 0.035 2 0.035 Q=0.04

  63. Community Detection 1 0.06 4 0 0.04 4 2 0.06 0.03 0.0125 0.025 0.04 3 2 2 0.035 2 0.035 Q=0.08

  64. Community Detection 1 4 -0.11 0.04 4 2 0.10 0.01 0.0125 0.025 3 2 2 0.035 2 0.035 Q=0.14

  65. Community Detection 1 4 -0.11 0.04 4 2 0.10 0.01 0.0375 0.0375 3 2 2 2 0.025 0.035 Q=0.175

  66. Community Detection 1 4 -0.15 4 2 0.10 0.01 0.1125 3 2 2 2 0 Q=0.2125

  67. Community Detection 1 4 -0.15 4 2 0.11 0.1125 3 2 2 2 -0.15 Q=0.2225

  68. Community Detection

  69. Conclusions • k -sampling of each edge gives away a lot

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend