OneSwarm: Privacy Preserving P2P Roberto Alberdeston CAP 6135 Spring 2012 Reference: Privacy-preserving P2P data sharing with OneSwarm http://oneswarm.cs.washington.edu 7/26/2016 Alberdeston - CAP6135 Spring 2012 1 http://www.OneSwarm.org 7/26/2016 Alberdeston - CAP6135 Spring 2012 2 OneSwarm Terms P2P - a computer network in which each computer in the network can act as a client or server, allowing shared access to resources without central server. Swarm - is the collective behavior of decentralized, self-organized systems. 7/26/2016 Alberdeston - CAP6135 Spring 2012 3 OneSwarm Characteristics Privacy Focused P2P Network User Defined Access Control Data is transferred using trusted and untrusted nodes. (transfer dependent) 7/26/2016 Alberdeston - CAP6135 Spring 2012 4 OneSwarm Characteristics (cont) Multi Path Packet Transfer Congestion Aware Network Bit Torrent Capable Client 7/26/2016 Alberdeston - CAP6135 Spring 2012 5 Issues with Current P2P Systems Bit Torrent – Great performance but poor privacy Freenet – Anonymous but lacks access control TOR – Nodes participate in questionable traffic 7/26/2016 Alberdeston - CAP6135 Spring 2012 6 OneSwarm Key Focus Areas User Based Privacy Performance 7/26/2016 Alberdeston - CAP6135 Spring 2012 7 OneSwarm Benefits Better Performance/Privacy Runs most file formats natively Bit Torrent Compatible 7/26/2016 Alberdeston - CAP6135 Spring 2012 8 OneSwarm Benefits (cont) Multiple Permission Settings Persistent Identities Multi Path Packet Delivery Cost Reduction for Content Distribution (ex: YouTube) 7/26/2016 Alberdeston - CAP6135 Spring 2012 9 OneSwarm Data Transfers Mesh of trusted/untrusted nodes Three Types of Transfers – Public – No Attribution (Anonymous) – With Permission (friend-2-friend) 7/26/2016 Alberdeston - CAP6135 Spring 2012 10 OneSwarm Data Sharing 7/26/2016 Alberdeston - CAP6135 Spring 2012 11 OneSwarm: Finding Data Public/No Attribution – Search Based Private – Advertising 7/26/2016 Alberdeston - CAP6135 Spring 2012 12 OneSwarm Components Client/Node – Trusted – Untrusted Replicas Community Servers – Key Management + Transfer – Groups/Subscriptions 7/26/2016 Alberdeston - CAP6135 Spring 2012 13 OneSwarm Node Privacy Each Client/Node – ID using public (RSA) key per node List of Nodes – List kept in DHT (distributed hash table) – DHT has 20 copies (fault tolerance) Data/Files – Named with 160-bit SHA-1 hash 7/26/2016 Alberdeston - CAP6135 Spring 2012 14 Growing the Swarm Gtalk User List – Import Gtalk Connection Local Area Network – Automatically shared keys with LAN Manual Key Exchange (Friends) – Most Popular Method 7/26/2016 Alberdeston - CAP6135 Spring 2012 15 OneSwarm: Fairness New Users start with default “contribution” value. If the upload/download ratio > 1, user is given access to more nodes in transfer. Promotes fairness and ensures performance 7/26/2016 Alberdeston - CAP6135 Spring 2012 16 OneSwarm Security Protocol Security Components Prevent Timing + Collusion Attacks Components – Randomization of Nodes – Force Delays – User Control Forwarding Probability 7/26/2016 Alberdeston - CAP6135 Spring 2012 17 OneSwarm Testing Real World – LonePlanet Computers – 100k User Provided Statistics Simulation – Last.fm Social Graph 7/26/2016 Alberdeston - CAP6135 Spring 2012 18 OneSwarm Testing (cont) Data Analysis – Session Times – Geographic Distribution – Usage Patterns – Upload Capacity – Download Capacity 7/26/2016 Alberdeston - CAP6135 Spring 2012 19 OneSwarm Testing (cont) Results of Testing – Most permission based relationship were friend-to-friend – Transfers over the multipath P2P network FASTER than point-point – Temporarily overloaded clients NOT common – Transfer Speed >> TOR 7/26/2016 Alberdeston - CAP6135 Spring 2012 20 OneSwarm Conclusion P2P Network – Privacy – Performance User Based Permissions Mesh of Trusted and Untrusted Nodes 7/26/2016 Alberdeston - CAP6135 Spring 2012 21 OneSwarm Conclusion (cont) Three Data Sharing Models – Public – Anonymous – Private Inherent Security Components Best PRIVACY/PERFORMANCE 7/26/2016 Alberdeston - CAP6135 Spring 2012 22 OneSwarm Conclusion Questions? 7/26/2016 Alberdeston - CAP6135 Spring 2012 23