Privacy-Aware and Scalable Content
Dissemination in Distributed Social Networks


     Pavan Kapanipathi 1,2, Julia Anaya 1, Amit Sheth 2, Brett
                Slatkin 3, Alexandre Passant 1


            1 Digital   Enterprise Research Institute, Galway – Ireland
                              2 Kno.e.sis, Dayton, OH- USA

                           3 Google, San Fransisco, CA - USA

                                                                          1
Agenda
•   Background
•   Motivation
•   Semantic Hub – Protocol
•   SMOB + Semantic Hub
•   Conclusion
•   Future Work




                              2
Social Networks

• Centralized Social Networks (CSN)s
  • Twitter and Facebook.

• What’s missing?
  • Users don’t own their data
  • Consistent privacy and performance concerns


• Distributed Social Networks
  • Diaspora, SMOB, StatusNet, OneSocialWeb


                                                  3
Distributed Social Networks
• Users own their data
  • Own Social Space
  • Decentralized servers

• Better Performance

• Google’s PubSubHubbub protocol
  • Communication protocol used in most Distributed Social
    Networks
  • Improves scalability
  • Near-instant notifications
                                                             4
• PubSubHubbub – Communication protocol
  • Simple, Open, web-hook based pubsub protocol
  • Extension to RSS, Atom.



                                     Give me your
                                   latest content for
                                     feed X, please




   Publisher                                            Subscriber

                                                                     5
               I have delegated
               distribution task
                   to a Hub
• PubSubHubbub – Communication protocol
  • Simple, Open, web-hook based pubsub protocol
  • Extension to RSS, Atom.



                                         I want to
                                       subscribe to
                                           feed X




   Publisher                  Hub                     Subscriber

                                                                          6
                                    Hey Did             Yup, its really
                                    u send              me not a DoS
                                     this??               attacker.
• PubSubHubbub – Communication protocol
  • Simple, Open, web-hook based pubsub protocol
  • Extension to RSS, Atom.




               I have new
                                           Here is the
               content for
                                         latest content
                  feed X
                                           for feed X


   Publisher                  Hub                         Subscriber
                                                           Subscriber
                                                             Subscriber
                                                              Subscriber         7
                                                                Subscriber
                              Give me the
               Here it is    latest content                                  7
                               for feed X
Motivation – Privacy
      • Twitter – Data is either
               • Private – authorized followers
               • Public – Everyone (No authorization required to
                  follow)            “Cisco just offered me a job! Now I
                                     have to weigh the utility of a fatty
                                    paycheck against the daily commute
                                      to San Jose and hating the work.”




                                                                                                                               8


http://www.msnbc.msn.com/id/29796962/ns/technology_and_science-tech_and_gadgets/t/twitter-gets-you-fired-characters-or-less/
Motivation
• Micropost -- “good presentation about Linked Data: then, now
  and next http://bit.ly/xyz”




• Decide on your audience
  • Almost certain about getting the message across to the right
    audience




                                                                   9
Protocol – Extension
(Overview)
• Publishers’ Preferences
  • Content also includes its preferences (recipients)


• Complexity at the Hub
  • Store Social Graph of the Publisher
  • Filter appropriate Subscribers to push the content




                                                         10
PubSubHubbub Protocol
Extension
Hey I have new                              Here is the
                      Give me              new content
content for feed      the new
     X + my                                  of feed X
                      content                                    Follower - A
  preference Y

                                                                 Follower - B

  Pub                      Semantic Hub
                                                                  Follower - C


            Here it                                                Follower - D
              is

                                           Get the subscribers
                                Social
                                          of Pub whose profile
                                Graph     matches preference Y
                                                                                  11
Protocol In-Use
• SMOB
  • Privacy-Aware Microblog dissemination



• Personalized Filtering
  • Twitter Stream (SPIM Workshop)




                                            12
SMOB + Semantic Hub
• Open and Distributed Semantic Microblogging Framework
  • http://smob.me

• PuSH implementation used to broadcast content
  • Privacy was a concern

• Our Privacy-Aware protocol implementation used
  • http://semantichub.appspot.com




                                                          13
POST                                         RDF
                                         “Presentation at
                                          ISWC by me on                Get subscribers               SMOB – B
 Get my privacy settings for                 Sunday                      matching                      And
  dbPedia:Semantic_Web                   #semanticweb”                  Access Space                 SMOB - D

                                            There is a micropost
                             SMOB – A
         RDF
                 Interest: Sematic Web         Get micropost+            Semantic Hub
                                                Access Space
          Access Space: #semanticweb
             SELECT ?user WHERE {
        ?user foaf:topic_interest ?topic
?topic dcterms:subject category:Semantic_Web
                                                                       Push Updates




                     SMOB – B                               SMOB – C                             SMOB – D
      Interest: Knowledge Engg           Interest: Computer Networks               Interest: Sematic Search
                                                                                                              14
POST                                         RDF
                                         “Presentation at
                                          ISWC by me on                Get subscribers               SMOB – B
 Get my privacy settings for                 Sunday                      matching                      And
  dbPedia:Semantic_Web                   #semanticweb”                  Access Space                 SMOB - D

                                            There is a micropost
                             SMOB – A
         RDF
                 Interest: Sematic Web         Get micropost+            Semantic Hub
                                                Access Space
          Access Space: #semanticweb
             SELECT ?user WHERE {
        ?user foaf:topic_interest ?topic
?topic dcterms:subject category:Semantic_Web
                                                                       Push Updates




                     SMOB – B                               SMOB – C                             SMOB – D
      Interest: Knowledge Engg           Interest: Computer Networks               Interest: Sematic Search
                                                                                                              15
Publisher – Privacy Preferences
  • Feature based preferences at Publisher
     • Content generated for topic Linked Data
     • Micropost containing hashtag #knoesis



  • Modeled using Privacy Preference Ontology (PPO)
     • Fine grained restrictions
        • SPARQL Queries representing the subset of subscribers from the
          Social Graph in the hub




                                                                           16
Privacy Preference Ontology – Work by Owen Sacco, Alexandre Passant DERI
Privacy Preference Ontology (PPO)
• Publishing Data on Web as a part of Linked Open Data has
  privacy issues.
  • Web Access Control ontology (WAC)


• PPO -- Light weight vocabulary
  • On top of Web Access Control Ontology
  • Fine grained privacy preferences for RDF Data
     • Example: Share email, phone number in my FOAF profile to Users
       with workplace as Kno.e.sis Center.




                                                                        17
Privacy Preferences using PPO
Example: Restrict all the documents tagged with Semantic
web to only those users who are interested in Semantic
Web
<http://example.org/privacy/3> a ppo:PrivacyPreference;
      ppo : appliesToResource
     <http://xmlns.com/foaf /0.1/Document>;
      ppo : hasCondition [
     ppo : hasProperty tag:Tag;
     ppo : resourceAsObject dbpedia : Semantic Web
       ];
      ppo: assignAccess acl :Read;
      ppo : hasAccessSpace [
     ppo:hasAccessQuery ”SELECT ?user WHERE {                   18
          ?user foaf : topic interest dbpedia:Semantic Web }”
       ].
SMOB’s Simple Interface – Privacy
Preference Generation




                                    19
POST                                         RDF
                                         “Presentation at
                                          ISWC by me on                Get subscribers               SMOB – B
 Get my privacy settings for                 Sunday                      matching                      And
  dbPedia:Semantic_Web                   #semanticweb”                  Access Space                 SMOB - D

                                            There is a micropost
                             SMOB – A
         RDF
                 Interest: Sematic Web         Get micropost+            Semantic Hub
                                                Access Space
          Access Space: #semanticweb
             SELECT ?user WHERE {
        ?user foaf:topic_interest ?topic
?topic dcterms:subject category:Semantic_Web
                                                                       Push Updates




                     SMOB – B                               SMOB – C                             SMOB – D
      Interest: Knowledge Engg           Interest: Computer Networks               Interest: Sematic Search
                                                                                                              20
Semantic Hub – Distributed Social
Semantic Graph
• FOAF Profiles of Publishers/Subscibers

• Semantic Social Graph at the Semantic Hub
  • FOAF profiles linked using push vocabulary

• Distributed
  • Every user owns a Hub




                                                 21
FOAF -- Exchange

              Hey, I want to    Great, Since it is
            Publish/Subscribe    your first time. I
            Content of feed X   need your profile




  Pub/Sub                                    Semantic Hub


             OK, Let me
             confirm ur
              identity                                      Profile
                                                            stored
                                             Social                   22
       Here is my                            Graph
        profile
Push Vocabulary
• SIOC vocabulary
  • Models information from online communities
  • Communication protocols are not considered

• PubSubHubbub Vocabulary (push)
  • Models information of users communicating via Semantic Hub




                                                                 23
24
POST                                         RDF
                                         “Presentation at
                                          ISWC by me on                Get subscribers               SMOB – B
 Get my privacy settings for                 Sunday                      matching                      And
  dbPedia:Semantic_Web                   #semanticweb”                  Access Space                 SMOB - D

                                            There is a micropost
                             SMOB – A
         RDF
                 Interest: Sematic Web         Get micropost+            Semantic Hub
                                                Access Space
          Access Space: #semanticweb
             SELECT ?user WHERE {
        ?user foaf:topic_interest ?topic
?topic dcterms:subject category:Semantic_Web
                                                                       Push Updates




                     SMOB – B                               SMOB – C                             SMOB – D
      Interest: Knowledge Engg           Interest: Computer Networks               Interest: Sematic Search
                                                                                                              25
Semantic Hub – Content
Distribution
• RSS Extension
  • Element to include the privacy preference
     • privacy, accessspace


• Each updated content is received by restricted subscribers
  • Privacy Preference for each content fetches the matched
    subscribers
  • Preferences are deleted before distribution




                                                               26
RSS Extension
<item>
      <title>Only Friends</title>
      <description>
               Send this to only people I know and interested in Semantic
Web
      </description>
      <link>http://example.org /rss</link>
      <guid>123123123123</guid>
      <pubDate>March 06 2001</pubDate>
      <privacy>
               <accessspace>
                        SELECT ?user WHERE {
                             foaf :me foaf :knows ?user .
                        ?user foaf : topic interest dbpedia:Semantic Web
.}
              </accessspace>
              …                                                             27
     </privacy>
</item>
Personalized Filtering of the
Twitter Stream
•   Profile Generator
    • Automatic generation of User Profiles


•   Semantic Filter
     • Annotating Twitter Stream with concepts from Linked Open Data


•   Semantic Hub
     • Delivering tweets to appropriate Interested Users (near real-time)



                                                                            28
Architecture
                                           Annotate: iPhone                                            Get
                                           ?user foaf:interest                                      Subscribers
     The new                                                                                         based on
                                            dbPedia:iPhone
iPhone has a 3.5-                                                                                   preference
                                                 Union
   inch screen,
                                           ?user foaf:interest
  released today
                                            Category:Apple
                                                                                   Get Interested
                                                                                   Subscribers
                                                                                                     RDF
               Semantic Filter                 Notify Update
           A
           N                        RDF
           N        Store and
           O
           T
                    Query Topics                                 Semantic Hub
           A                                   Fetch Updates
           T
           O                       RSS                                                              Store FOAF
           R
                    Update RSS




                                                                                  Profile Generator
                            Push Updates to
                            Interested Users
                                                                                                                 29

                                                                 Create Profile
Conclusion
• Extension of Google’s PuSH protocol to cope with privacy
  concerns.

• Implementation of the protocol

• Use in SMOB (Microblogging)

• Push vocabulary to model activities via PuSH protocol



                                                             30
Future Work
• Enabling the architecture for mobile devices.

• Communicate to and from devices that are offline and still
  need to be notified.




                                                               31
Thanks
     Acknowledgements:
     Fabrizio Orlandi
     Owen Sacco


     Contact us:
     {pavan, amit}@knoesis.org
     {alexandre.passant, julia.anaya}@deri.org
     brettslatkin@google.com
                                                                                                              32
This work is funded by (1) Science Foundation Ireland under grant number SFI/08/CE/I1380 (Lıon 2) and by an
IRCSET scholarship supported by Cisco Systems (2) Social Media Enhanced Organizational Sensemaking in
Emergency Response, National Science Foundation under award IIS-1111182, 09/01/2011 - 08/31/2014.
PubSubHubbub
• PuSH is a scalable protocol, and Google provides a public hub
  that people can use to broadcast their content.
• This public hub delivers for approximately 40 million unique
  active feeds
• 117 million subscriptions.
• In two years, approximately 5.5 billion unique feeds have been
  delivered
• fetching 200 to 400 feeds
• delivering 400 to 600 of them per second.
• Its largest subscribers get between 20 and 120 updates per
  second from the hub.
                                                                   33
34
35

Privacy Aware Semantic Dissemination

  • 1.
    Privacy-Aware and ScalableContent Dissemination in Distributed Social Networks Pavan Kapanipathi 1,2, Julia Anaya 1, Amit Sheth 2, Brett Slatkin 3, Alexandre Passant 1 1 Digital Enterprise Research Institute, Galway – Ireland 2 Kno.e.sis, Dayton, OH- USA 3 Google, San Fransisco, CA - USA 1
  • 2.
    Agenda • Background • Motivation • Semantic Hub – Protocol • SMOB + Semantic Hub • Conclusion • Future Work 2
  • 3.
    Social Networks • CentralizedSocial Networks (CSN)s • Twitter and Facebook. • What’s missing? • Users don’t own their data • Consistent privacy and performance concerns • Distributed Social Networks • Diaspora, SMOB, StatusNet, OneSocialWeb 3
  • 4.
    Distributed Social Networks •Users own their data • Own Social Space • Decentralized servers • Better Performance • Google’s PubSubHubbub protocol • Communication protocol used in most Distributed Social Networks • Improves scalability • Near-instant notifications 4
  • 5.
    • PubSubHubbub –Communication protocol • Simple, Open, web-hook based pubsub protocol • Extension to RSS, Atom. Give me your latest content for feed X, please Publisher Subscriber 5 I have delegated distribution task to a Hub
  • 6.
    • PubSubHubbub –Communication protocol • Simple, Open, web-hook based pubsub protocol • Extension to RSS, Atom. I want to subscribe to feed X Publisher Hub Subscriber 6 Hey Did Yup, its really u send me not a DoS this?? attacker.
  • 7.
    • PubSubHubbub –Communication protocol • Simple, Open, web-hook based pubsub protocol • Extension to RSS, Atom. I have new Here is the content for latest content feed X for feed X Publisher Hub Subscriber Subscriber Subscriber Subscriber 7 Subscriber Give me the Here it is latest content 7 for feed X
  • 8.
    Motivation – Privacy • Twitter – Data is either • Private – authorized followers • Public – Everyone (No authorization required to follow) “Cisco just offered me a job! Now I have to weigh the utility of a fatty paycheck against the daily commute to San Jose and hating the work.” 8 http://www.msnbc.msn.com/id/29796962/ns/technology_and_science-tech_and_gadgets/t/twitter-gets-you-fired-characters-or-less/
  • 9.
    Motivation • Micropost --“good presentation about Linked Data: then, now and next http://bit.ly/xyz” • Decide on your audience • Almost certain about getting the message across to the right audience 9
  • 10.
    Protocol – Extension (Overview) •Publishers’ Preferences • Content also includes its preferences (recipients) • Complexity at the Hub • Store Social Graph of the Publisher • Filter appropriate Subscribers to push the content 10
  • 11.
    PubSubHubbub Protocol Extension Hey Ihave new Here is the Give me new content content for feed the new X + my of feed X content Follower - A preference Y Follower - B Pub Semantic Hub Follower - C Here it Follower - D is Get the subscribers Social of Pub whose profile Graph matches preference Y 11
  • 12.
    Protocol In-Use • SMOB • Privacy-Aware Microblog dissemination • Personalized Filtering • Twitter Stream (SPIM Workshop) 12
  • 13.
    SMOB + SemanticHub • Open and Distributed Semantic Microblogging Framework • http://smob.me • PuSH implementation used to broadcast content • Privacy was a concern • Our Privacy-Aware protocol implementation used • http://semantichub.appspot.com 13
  • 14.
    POST RDF “Presentation at ISWC by me on Get subscribers SMOB – B Get my privacy settings for Sunday matching And dbPedia:Semantic_Web #semanticweb” Access Space SMOB - D There is a micropost SMOB – A RDF Interest: Sematic Web Get micropost+ Semantic Hub Access Space Access Space: #semanticweb SELECT ?user WHERE { ?user foaf:topic_interest ?topic ?topic dcterms:subject category:Semantic_Web Push Updates SMOB – B SMOB – C SMOB – D Interest: Knowledge Engg Interest: Computer Networks Interest: Sematic Search 14
  • 15.
    POST RDF “Presentation at ISWC by me on Get subscribers SMOB – B Get my privacy settings for Sunday matching And dbPedia:Semantic_Web #semanticweb” Access Space SMOB - D There is a micropost SMOB – A RDF Interest: Sematic Web Get micropost+ Semantic Hub Access Space Access Space: #semanticweb SELECT ?user WHERE { ?user foaf:topic_interest ?topic ?topic dcterms:subject category:Semantic_Web Push Updates SMOB – B SMOB – C SMOB – D Interest: Knowledge Engg Interest: Computer Networks Interest: Sematic Search 15
  • 16.
    Publisher – PrivacyPreferences • Feature based preferences at Publisher • Content generated for topic Linked Data • Micropost containing hashtag #knoesis • Modeled using Privacy Preference Ontology (PPO) • Fine grained restrictions • SPARQL Queries representing the subset of subscribers from the Social Graph in the hub 16 Privacy Preference Ontology – Work by Owen Sacco, Alexandre Passant DERI
  • 17.
    Privacy Preference Ontology(PPO) • Publishing Data on Web as a part of Linked Open Data has privacy issues. • Web Access Control ontology (WAC) • PPO -- Light weight vocabulary • On top of Web Access Control Ontology • Fine grained privacy preferences for RDF Data • Example: Share email, phone number in my FOAF profile to Users with workplace as Kno.e.sis Center. 17
  • 18.
    Privacy Preferences usingPPO Example: Restrict all the documents tagged with Semantic web to only those users who are interested in Semantic Web <http://example.org/privacy/3> a ppo:PrivacyPreference; ppo : appliesToResource <http://xmlns.com/foaf /0.1/Document>; ppo : hasCondition [ ppo : hasProperty tag:Tag; ppo : resourceAsObject dbpedia : Semantic Web ]; ppo: assignAccess acl :Read; ppo : hasAccessSpace [ ppo:hasAccessQuery ”SELECT ?user WHERE { 18 ?user foaf : topic interest dbpedia:Semantic Web }” ].
  • 19.
    SMOB’s Simple Interface– Privacy Preference Generation 19
  • 20.
    POST RDF “Presentation at ISWC by me on Get subscribers SMOB – B Get my privacy settings for Sunday matching And dbPedia:Semantic_Web #semanticweb” Access Space SMOB - D There is a micropost SMOB – A RDF Interest: Sematic Web Get micropost+ Semantic Hub Access Space Access Space: #semanticweb SELECT ?user WHERE { ?user foaf:topic_interest ?topic ?topic dcterms:subject category:Semantic_Web Push Updates SMOB – B SMOB – C SMOB – D Interest: Knowledge Engg Interest: Computer Networks Interest: Sematic Search 20
  • 21.
    Semantic Hub –Distributed Social Semantic Graph • FOAF Profiles of Publishers/Subscibers • Semantic Social Graph at the Semantic Hub • FOAF profiles linked using push vocabulary • Distributed • Every user owns a Hub 21
  • 22.
    FOAF -- Exchange Hey, I want to Great, Since it is Publish/Subscribe your first time. I Content of feed X need your profile Pub/Sub Semantic Hub OK, Let me confirm ur identity Profile stored Social 22 Here is my Graph profile
  • 23.
    Push Vocabulary • SIOCvocabulary • Models information from online communities • Communication protocols are not considered • PubSubHubbub Vocabulary (push) • Models information of users communicating via Semantic Hub 23
  • 24.
  • 25.
    POST RDF “Presentation at ISWC by me on Get subscribers SMOB – B Get my privacy settings for Sunday matching And dbPedia:Semantic_Web #semanticweb” Access Space SMOB - D There is a micropost SMOB – A RDF Interest: Sematic Web Get micropost+ Semantic Hub Access Space Access Space: #semanticweb SELECT ?user WHERE { ?user foaf:topic_interest ?topic ?topic dcterms:subject category:Semantic_Web Push Updates SMOB – B SMOB – C SMOB – D Interest: Knowledge Engg Interest: Computer Networks Interest: Sematic Search 25
  • 26.
    Semantic Hub –Content Distribution • RSS Extension • Element to include the privacy preference • privacy, accessspace • Each updated content is received by restricted subscribers • Privacy Preference for each content fetches the matched subscribers • Preferences are deleted before distribution 26
  • 27.
    RSS Extension <item> <title>Only Friends</title> <description> Send this to only people I know and interested in Semantic Web </description> <link>http://example.org /rss</link> <guid>123123123123</guid> <pubDate>March 06 2001</pubDate> <privacy> <accessspace> SELECT ?user WHERE { foaf :me foaf :knows ?user . ?user foaf : topic interest dbpedia:Semantic Web .} </accessspace> … 27 </privacy> </item>
  • 28.
    Personalized Filtering ofthe Twitter Stream • Profile Generator • Automatic generation of User Profiles • Semantic Filter • Annotating Twitter Stream with concepts from Linked Open Data • Semantic Hub • Delivering tweets to appropriate Interested Users (near real-time) 28
  • 29.
    Architecture Annotate: iPhone Get ?user foaf:interest Subscribers The new based on dbPedia:iPhone iPhone has a 3.5- preference Union inch screen, ?user foaf:interest released today Category:Apple Get Interested Subscribers RDF Semantic Filter Notify Update A N RDF N Store and O T Query Topics Semantic Hub A Fetch Updates T O RSS Store FOAF R Update RSS Profile Generator Push Updates to Interested Users 29 Create Profile
  • 30.
    Conclusion • Extension ofGoogle’s PuSH protocol to cope with privacy concerns. • Implementation of the protocol • Use in SMOB (Microblogging) • Push vocabulary to model activities via PuSH protocol 30
  • 31.
    Future Work • Enablingthe architecture for mobile devices. • Communicate to and from devices that are offline and still need to be notified. 31
  • 32.
    Thanks Acknowledgements: Fabrizio Orlandi Owen Sacco Contact us: {pavan, amit}@knoesis.org {alexandre.passant, julia.anaya}@deri.org brettslatkin@google.com 32 This work is funded by (1) Science Foundation Ireland under grant number SFI/08/CE/I1380 (Lıon 2) and by an IRCSET scholarship supported by Cisco Systems (2) Social Media Enhanced Organizational Sensemaking in Emergency Response, National Science Foundation under award IIS-1111182, 09/01/2011 - 08/31/2014.
  • 33.
    PubSubHubbub • PuSH isa scalable protocol, and Google provides a public hub that people can use to broadcast their content. • This public hub delivers for approximately 40 million unique active feeds • 117 million subscriptions. • In two years, approximately 5.5 billion unique feeds have been delivered • fetching 200 to 400 feeds • delivering 400 to 600 of them per second. • Its largest subscribers get between 20 and 120 updates per second from the hub. 33
  • 34.
  • 35.

Editor's Notes

  • #2 Google+ policy.
  • #4 Central points of failurePublish on publishing sites and hence the publishing sites own the data
  • #8 Broadcasts the content to everyone
  • #9 Privacy should be more explicitly define in our paper
  • #17 Obviously it would be tedious to store one pp for each tweet. Hence Feature based preferences Example – one PP for content for topic Linked Data
  • #29 ----- Meeting Notes (10/19/11 15:25) -----Rather than profile genrator (Aggregating profile information)----- Meeting Notes (10/19/11 15:27) -----Before contributions give some background
  • #30 User generated content from the social networks (not profiles from the social network wont include the social graph)----- Meeting Notes (10/19/11 15:25) -----Rather than SPARQL syntax -- Generic (Make sure that the keywords are highlighted)
  • #36 Make this interactive and spelling mistakes..Motivation Example – reiterate