oblivp2p an oblivious peer to peer content sharing system
play

OblivP2P: An Oblivious Peer-to- Peer Content Sharing System Yaoqi - PowerPoint PPT Presentation

OblivP2P: An Oblivious Peer-to- Peer Content Sharing System Yaoqi Jia, Tarik Moataz, Shruti Tople and Prateek Saxena National University of Singapore 1 Traffic Analysis in P2P Systems P2P content sharing systems 150 million users/month


  1. OblivP2P: An Oblivious Peer-to- Peer Content Sharing System Yaoqi Jia, Tarik Moataz, Shruti Tople and Prateek Saxena National University of Singapore 1

  2. Traffic Analysis in P2P Systems • P2P content sharing systems – 150 million users/month – 3.35% of all world bandwidth • Long term global traffic analysis – E.g., ISP’s, Global BitTorrent Monitor, Bitstalker 2

  3. What can an Adversary do? • Leakage Channels – Plaintext data • Secure channel – Length Assume existing defenses • Padding – Time • Fixed Interval Linkability – Access Patterns 3

  4. Problem Current Solutions – Anonymous Systems e.g., Mix Networks, Tor Hide Online Identity Unlinkability ü Long term ü Global Adversary Is anonymizing enough? 4

  5. Contributions OblivP2P • Guarantee unlinkability • Obliviousness in P2P systems Protocol • Link: Implementation https://github.com/jiayaoqijia/OblivP2P- Code • No Centralized Bottleneck Evaluation • Linear Scalability with peers 5

  6. Problem 6

  7. Insufficiency of Existing Solutions Mixnet Mixnet Round 1 Round 2 Intersection, Hitting Set [AK’03] or Statistical Disclosure Attacks [KP’04] 7

  8. Main Insight: Oblivious Access Pattern • Oblivious RAM – Hide access patterns between CPU and memory – Data is shuffled in the memory periodically • Applied to: – Cloud Storage [SS’13A], [SS’13B],[LO’13] – Filesystem [WST’12] • Can we directly apply ORAM to P2P systems? 8

  9. Problem Definition Trusted Tracker 9

  10. ORAM Background • Tree-Based ORAM (Path ORAM) – Read • Fetches a path from the tree containing the block • Stores the path in the local storage (stash) 1 3 2 – Write 7 6 4 5 • Selects a random path in the tree • Shuffles the blocks in the stash and the path 10

  11. Mapping ORAM to P2P Send Re-encrypt Trusted Client Trusted Tracker 2 2 Position Map, Stash Position Map, Stash Request Fetch a path 2 Decrypt Decrypt Fetch path Initiator 1 pat 1 h 2 3 3 2 Peers 4 5 7 6 7 4 6 5 Untrusted Server Peer-to-Peer Network OblivP2P-0 Protocol 11

  12. OblivP2P-0: Tracker as bottleneck • Tracker fetches O(log N) blocks per access 118 MB /req for 2 million users ≈ Max Bandwidth Need a Distributed Oblivious P2P Protocol 12

  13. OblivP2P-1 Protocol 13

  14. Naïve approach: Removing Bottleneck Send Trusted Tracker < path, position, key > Performance Position Map, Stash Security Request Decrypt Initiator 2 Fetch a path 1 2 3 Peers 4 5 7 6 Peer-to-Peer Network 14

  15. Challenges • ORAM writes – Recently accessed block at the root – Less frequently accessed block at the leaves Recently 1 accessed • “Block History” 2 – Shared resources Less 5 frequently accessed • Security flaw in P2P systems – Multiple users access the same resource 15

  16. New Primitive: Oblivious Selection Selects a block without : No Centralized Block Position Cryptographic Key Bottleneck 16

  17. Construction • Step 1: PIR over ORAM – Obliviously select a block from a path Trusted Tracker 1 1 1 Send PIR Request metadata 2 2 2 2 5 5 5 Compute an Encrypted Share using PIR Initiator No Centralized Block Position Cryptographic Key 17 Bottleneck

  18. Construction • Step 2: Seed-Homomorphic PRG – Decrypt shares without giving away the key Trusted Tracker Send key share Compute a Decrypted Share using SH-PRG Initiator Dec Block No Centralized Block Position Cryptographic Key Cryptographic Key 18 Bottleneck

  19. Security 19

  20. OblivP2P is an Oblivious P2P Protocol Any two equal length access sequences by two peers are indistinguishable for any p.p.t. “honest- but-curious” adversary • Number of dishonest peers is in O(N ε ), where ε<1 • Theorem: If ∀ N > 1 , and ∀ ε < 1 , ∃ m > 1 such that 2 log N · m ·(1−ε) ∈ negl(λ) then OBLIVP2P -1 is an oblivious P2P protocol 20

  21. Evaluation 21

  22. Experimental Setup • 15 DeterLab servers – (2 14 )16000 peers • Each server shares a bandwidth of 128 MBps • Block size of 512 KB similar to BitTorrent 22

  23. No Centralized Bottleneck ~ 128 MB /req ~ 1 MB /req 23

  24. Linear Scalability with Peers 3.59MB/ sec • Larger networks can scale up performance – 3.59 MB/s is due to our limited test infrastructure • Bottleneck remaining is purely computational 24

  25. Take Away! • Propose hiding data access patterns in P2P systems • OblivP2P - First work to repurpose ORAM in Peer-to-Peer systems • OblivP2P is linearly scalable and highly parallelizable with the peers in the network 25

  26. Thanks! Email : shruti90@comp.nus.edu.sg Link: https://github.com/jiayaoqijia/OblivP2P-Code 26

Recommend


More recommend