LifeSocial A P2P-Platform for Secure Online Social Networks
Importance of Online Social Networks (OSN) What are OSNs? Web-based community platforms Presentation and linking of personal data Several hundred Millions of users Motivation of involved actors: User    entertainment Storing and searching for content User to user interaction Secure storage and communication Provider    profit High profit  (ads for many users) Low operational costs (servers,…) Controlled service quality Our goal: A P2P-platform for OSNs that satisfies users and providers with high quality apps / plugins Flexible GUI Events Personal information Friends, contacts Social interaction Plugin architecture Photos
Architecture Design Current issues with centralized OSNs Lots of operational costs ! Rough estimation: 1$ per year per user Facebook: 450M users Peer-to-peer approach: Use capacities of user devices (Moore’s law!) Interconnect users with p2p-overlay Provide all functionality in a distributed way Shift the load and costs to the users LifeSocial:  Researched since end of 2007 Ca. 10 diploma / bachelor theses on this topic Ca. 20 researcher and student programmers
User View: Rich Functionality Wide set of functionality Plugin-based application: Profile, Login, Friends, Groups, Mails, Photos, Chat, Whiteboard, Calendar… OSGI-based, extendable and flexible Flexible GUI GUI-Framework like in Eclipse Fast and user-friendly performance
Provider View: Monitoring and Management Integrated monitoring and management Totally distributed, precise and cheap Controls service quality of p2p system Monitoring global system statistics Statistics on Statistical information:  avg, min, max, standard dev., sum,... Management of system quality Following principles of autonomic computing: Automated adaptation of system configuration to meet quality goals    See: K. Graffi et al., “Monitoring and Management of Structured Peer-to-Peer Systems”   In: IEEE Peer-to-Peer Computing '09 (IEEE P2P’09), September 2009.  System … … … Groups Objects in Cache Data retrieval delays Friends CPU / bandwidth usage Number of peers Social Metrics Costs Performance
Architecture Details of LifeSocial GUI Framework: Extendable and flexible Provides an interface to the Plugins Plugins:  Functionality of online social networks (and more) Easy Plugin-to-Plugin communication Over shared storage Over Plugin ID based messaging Information Cache: Enables the Plugins to reuse the data Hides the asynchronous effects of distributed data storage Monitoring and Management: Provides statistics on system behavior Enables the provider to control the service quality  Secure Message Dispatcher: Provides secure, low-delay Plugin-to-Plugin communication Integrate offline messaging feature Secure Storage Dispatcher + access control: Storage and retrieval of data objects (PAST) Replicates data and guarantees their availability Structured Peer-to-Peer Overlay Connects the nodes and enables inter-peer communication    See: K. Graffi et al., “A Distributed Platform for Multimedia Online Communities”   In: IEEE International Symposium on Multimedia '08 (IEEE ISM’09), December 2008.
Peer and Plugin Communcation Principles FreePastry – based on Pastry, DHT Documents are mapped to peers: Every Document-ID has a responsible peer Contacted by document owners and requesters FreePastry routes to responsible peer Add-on PAST manages the data replication Plugin-to-Plugin communication Over Plugin ID based messaging Analog to ports in transport layer Over shared storage Personal data is NOT stored on user’s device Additional fine-grained access control in place Node 1008 queries item 3000 Responsible peer found 1622 1009-1622 2207 2012-2207 2906 2683-2906 3485 2907-3485 2011 1623-2011 709 660-709 659 612-659 2682 2208-2682 611 3486-… 0-611 Responsible for 1008 + 1024 3 Use shortcuts/fingers… 1 2 Responsible for 2207 + 512 Responsible for 3000 1008 710-1008    See: K. Graffi et al., “A Distributed Platform for Multimedia Online Communities”   In: IEEE International Symposium on Multimedia '08 (IEEE ISM’09), December 2008.  Principle of ID-based routing Example data object Structured p2p overlay
Document Types, Obvious Storage Keys High granularity of stored data objects Better load balancing of the resources Used for  Atomic data: profiles, login info, “emails” Linked lists: friend lists, groups, multicast Allows for complex data structures Profile storage key p  =  “User_Kalman_Graffi” Name: Kalman Age: 27 University: Technische Universität Darmstadt    See: K. Graffi et al., “A Distributed Platform for Multimedia Online Communities”   In: IEEE International Symposium on Multimedia '08 (IEEE ISM’09), December 2008.
Data Positioning in the Network replica replica replica replica replica request responsibility range
Practical Distributed Access Control Mechanism:  Prepare confidential data    Start: “SharedItem” Symmetrically encrypt objects     use “object keys” Asymmetrically encrypt object keys     use “user keys” (publicly available) Append encrypted object keys to object    Result: “CryptedItem” Features: Replicability:  Every peer may store CryptedItems Access control:  Only privileged users can decrypt it Compatibility to FreePastry/PAST: Fully distributed, PKI integrated How to provide access control  in a distributed environment? Goal:    Assign read-rights on objects    to privileged users SharedItem objectID Header Privileged users Payload Signed CryptedItem objectID Key list userID A  –  key A userID B – key B userID C – key C Byte array containing encrypted SharedItem Pub User A Encrpyted with Pub User B Encrpyted with … Pub User A Pub User B [userID A] = [userID B] = Serialized and encrypted with symmetic key 2 wrap symmetric key with public key 4 5    See: K. Graffi et al., “Practical Security in P2P-based Social Networks”   In: IEEE Local Computer Networks '09 (IEEE LCN’09), October 2009.  Symmetric Key Symmetric Key extract 1 userIDs are public  keys 3
LifeSocial Plugin Overview Everything is a Plugin Stand-alone applications (apps) Communicate over storage or with messages Mandatory or optional Implement OSN functionality (and more) Traditional OSN functionality Login, Profile, Friends, Groups, Search, Photos, Messages, Chat Extended OSN functionality Multi-chat, Whiteboard, Calendar, Tweets Extendability Plugins are OSGI-based Can be loaded on runtime on demand Version updates over the Internet possible Planned “Plugin-Store” hosting new Plugins Rapid application development Plugin interfaces are open and combinable Allows for Unix-style reuse of components New Plugins can be included in the monitoring and management framework    See: K. Graffi et al., “LifeSocial.KOM: A P2P-based Platform for Secure Social Online Networks”   submitted to IEEE Networking ‘10, January 2010.
Summary on LifeSocial IT solutions for social networks Currently centralized and very costly Scales only with high monetary invests Distributed, p2p-based platforms Data storage is totally distributed Costs are shared among the users LifeSocial Operational prototype Secure, reliable storage and messaging Monitoring mechanism to observe  (and control) the quality of service Rich, extendable functionality through Plugin-based architecture See videos on  www.lifesocial.org Analysis of needs: Users requirements Storing and searching for content User to user interaction Security System provider requirements Low operational costs Controlled quality of service  High profit Next steps: Fine tuning and final consolidation Run Internet-wide beta-test Deployment
Contact Information KOM Have a look at: www.lifesocial.org www.skynet-project.com www.kom.tu-darmstadt.de
 
 
 
 
 
 
 
 
 
 

LifeSocial - A P2P-Platform for Secure Online Social Networks

  • 1.
    LifeSocial A P2P-Platformfor Secure Online Social Networks
  • 2.
    Importance of OnlineSocial Networks (OSN) What are OSNs? Web-based community platforms Presentation and linking of personal data Several hundred Millions of users Motivation of involved actors: User  entertainment Storing and searching for content User to user interaction Secure storage and communication Provider  profit High profit (ads for many users) Low operational costs (servers,…) Controlled service quality Our goal: A P2P-platform for OSNs that satisfies users and providers with high quality apps / plugins Flexible GUI Events Personal information Friends, contacts Social interaction Plugin architecture Photos
  • 3.
    Architecture Design Currentissues with centralized OSNs Lots of operational costs ! Rough estimation: 1$ per year per user Facebook: 450M users Peer-to-peer approach: Use capacities of user devices (Moore’s law!) Interconnect users with p2p-overlay Provide all functionality in a distributed way Shift the load and costs to the users LifeSocial: Researched since end of 2007 Ca. 10 diploma / bachelor theses on this topic Ca. 20 researcher and student programmers
  • 4.
    User View: RichFunctionality Wide set of functionality Plugin-based application: Profile, Login, Friends, Groups, Mails, Photos, Chat, Whiteboard, Calendar… OSGI-based, extendable and flexible Flexible GUI GUI-Framework like in Eclipse Fast and user-friendly performance
  • 5.
    Provider View: Monitoringand Management Integrated monitoring and management Totally distributed, precise and cheap Controls service quality of p2p system Monitoring global system statistics Statistics on Statistical information: avg, min, max, standard dev., sum,... Management of system quality Following principles of autonomic computing: Automated adaptation of system configuration to meet quality goals  See: K. Graffi et al., “Monitoring and Management of Structured Peer-to-Peer Systems” In: IEEE Peer-to-Peer Computing '09 (IEEE P2P’09), September 2009. System … … … Groups Objects in Cache Data retrieval delays Friends CPU / bandwidth usage Number of peers Social Metrics Costs Performance
  • 6.
    Architecture Details ofLifeSocial GUI Framework: Extendable and flexible Provides an interface to the Plugins Plugins: Functionality of online social networks (and more) Easy Plugin-to-Plugin communication Over shared storage Over Plugin ID based messaging Information Cache: Enables the Plugins to reuse the data Hides the asynchronous effects of distributed data storage Monitoring and Management: Provides statistics on system behavior Enables the provider to control the service quality Secure Message Dispatcher: Provides secure, low-delay Plugin-to-Plugin communication Integrate offline messaging feature Secure Storage Dispatcher + access control: Storage and retrieval of data objects (PAST) Replicates data and guarantees their availability Structured Peer-to-Peer Overlay Connects the nodes and enables inter-peer communication  See: K. Graffi et al., “A Distributed Platform for Multimedia Online Communities” In: IEEE International Symposium on Multimedia '08 (IEEE ISM’09), December 2008.
  • 7.
    Peer and PluginCommuncation Principles FreePastry – based on Pastry, DHT Documents are mapped to peers: Every Document-ID has a responsible peer Contacted by document owners and requesters FreePastry routes to responsible peer Add-on PAST manages the data replication Plugin-to-Plugin communication Over Plugin ID based messaging Analog to ports in transport layer Over shared storage Personal data is NOT stored on user’s device Additional fine-grained access control in place Node 1008 queries item 3000 Responsible peer found 1622 1009-1622 2207 2012-2207 2906 2683-2906 3485 2907-3485 2011 1623-2011 709 660-709 659 612-659 2682 2208-2682 611 3486-… 0-611 Responsible for 1008 + 1024 3 Use shortcuts/fingers… 1 2 Responsible for 2207 + 512 Responsible for 3000 1008 710-1008  See: K. Graffi et al., “A Distributed Platform for Multimedia Online Communities” In: IEEE International Symposium on Multimedia '08 (IEEE ISM’09), December 2008. Principle of ID-based routing Example data object Structured p2p overlay
  • 8.
    Document Types, ObviousStorage Keys High granularity of stored data objects Better load balancing of the resources Used for Atomic data: profiles, login info, “emails” Linked lists: friend lists, groups, multicast Allows for complex data structures Profile storage key p = “User_Kalman_Graffi” Name: Kalman Age: 27 University: Technische Universität Darmstadt  See: K. Graffi et al., “A Distributed Platform for Multimedia Online Communities” In: IEEE International Symposium on Multimedia '08 (IEEE ISM’09), December 2008.
  • 9.
    Data Positioning inthe Network replica replica replica replica replica request responsibility range
  • 10.
    Practical Distributed AccessControl Mechanism: Prepare confidential data  Start: “SharedItem” Symmetrically encrypt objects  use “object keys” Asymmetrically encrypt object keys  use “user keys” (publicly available) Append encrypted object keys to object  Result: “CryptedItem” Features: Replicability: Every peer may store CryptedItems Access control: Only privileged users can decrypt it Compatibility to FreePastry/PAST: Fully distributed, PKI integrated How to provide access control in a distributed environment? Goal: Assign read-rights on objects to privileged users SharedItem objectID Header Privileged users Payload Signed CryptedItem objectID Key list userID A – key A userID B – key B userID C – key C Byte array containing encrypted SharedItem Pub User A Encrpyted with Pub User B Encrpyted with … Pub User A Pub User B [userID A] = [userID B] = Serialized and encrypted with symmetic key 2 wrap symmetric key with public key 4 5  See: K. Graffi et al., “Practical Security in P2P-based Social Networks” In: IEEE Local Computer Networks '09 (IEEE LCN’09), October 2009. Symmetric Key Symmetric Key extract 1 userIDs are public keys 3
  • 11.
    LifeSocial Plugin OverviewEverything is a Plugin Stand-alone applications (apps) Communicate over storage or with messages Mandatory or optional Implement OSN functionality (and more) Traditional OSN functionality Login, Profile, Friends, Groups, Search, Photos, Messages, Chat Extended OSN functionality Multi-chat, Whiteboard, Calendar, Tweets Extendability Plugins are OSGI-based Can be loaded on runtime on demand Version updates over the Internet possible Planned “Plugin-Store” hosting new Plugins Rapid application development Plugin interfaces are open and combinable Allows for Unix-style reuse of components New Plugins can be included in the monitoring and management framework  See: K. Graffi et al., “LifeSocial.KOM: A P2P-based Platform for Secure Social Online Networks” submitted to IEEE Networking ‘10, January 2010.
  • 12.
    Summary on LifeSocialIT solutions for social networks Currently centralized and very costly Scales only with high monetary invests Distributed, p2p-based platforms Data storage is totally distributed Costs are shared among the users LifeSocial Operational prototype Secure, reliable storage and messaging Monitoring mechanism to observe (and control) the quality of service Rich, extendable functionality through Plugin-based architecture See videos on www.lifesocial.org Analysis of needs: Users requirements Storing and searching for content User to user interaction Security System provider requirements Low operational costs Controlled quality of service High profit Next steps: Fine tuning and final consolidation Run Internet-wide beta-test Deployment
  • 13.
    Contact Information KOMHave a look at: www.lifesocial.org www.skynet-project.com www.kom.tu-darmstadt.de
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.

Editor's Notes

  • #8 | | November 19, 2007