02.06.2013 Views

The current state of anonymous file-sharing - Marc's Blog

The current state of anonymous file-sharing - Marc's Blog

The current state of anonymous file-sharing - Marc's Blog

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Contents<br />

1 Different needs for anonymity 1<br />

2 Basic concept <strong>of</strong> anonymity in <strong>file</strong>-<strong>sharing</strong> 2<br />

2.1 What is there to know about me? . . . . . . . . . . . . . . . . . . . . . . 2<br />

2.2 <strong>The</strong> wrong place at the wrong time . . . . . . . . . . . . . . . . . . . . . 2<br />

2.3 Motivation: Freedom <strong>of</strong> speech / Freedom <strong>of</strong> the press . . . . . . . . . . 3<br />

3 Technical Networking Background 3<br />

3.1 Namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3<br />

3.2 Routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4<br />

3.3 Identification throughout the OSI layers . . . . . . . . . . . . . . . . . . 5<br />

4 Current popular <strong>file</strong>-<strong>sharing</strong>-protocols 7<br />

4.1 A small history <strong>of</strong> <strong>file</strong>-<strong>sharing</strong> . . . . . . . . . . . . . . . . . . . . . . . . 7<br />

4.1.1 <strong>The</strong> beginning: Server Based . . . . . . . . . . . . . . . . . . . . . 7<br />

4.1.2 <strong>The</strong> evolution: Centralized Peer-to-Peer . . . . . . . . . . . . . . 8<br />

4.1.3 <strong>The</strong> <strong>current</strong> <strong>state</strong>: Decentralized Peer-to-Peer . . . . . . . . . . . 8<br />

4.1.4 <strong>The</strong> new kid on the block: Structured Peer-to-Peer networks . . . 9<br />

4.1.5 <strong>The</strong> amount <strong>of</strong> data . . . . . . . . . . . . . . . . . . . . . . . . . 10<br />

4.2 Bittorrent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11<br />

4.2.1 Roles in a Bittorrent network . . . . . . . . . . . . . . . . . . . . 12<br />

4.2.2 Creating a network . . . . . . . . . . . . . . . . . . . . . . . . . . 12<br />

4.2.3 Downloading/Uploading a <strong>file</strong> . . . . . . . . . . . . . . . . . . . . 13<br />

4.2.4 Superseeding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14<br />

4.3 eDonkey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15<br />

4.3.1 Joining the network . . . . . . . . . . . . . . . . . . . . . . . . . . 15<br />

4.3.2 File identification . . . . . . . . . . . . . . . . . . . . . . . . . . . 15<br />

4.3.3 Searching the network . . . . . . . . . . . . . . . . . . . . . . . . 16<br />

4.3.4 Downloading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17<br />

4.4 Gnutella . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17<br />

4.4.1 Joining the network . . . . . . . . . . . . . . . . . . . . . . . . . . 19<br />

4.4.2 Scalability problems in the Gnutella Network . . . . . . . . . . . 21<br />

4.4.3 QRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22<br />

4.4.4 Dynamic Querying . . . . . . . . . . . . . . . . . . . . . . . . . . 23<br />

4.5 Anonymity in the <strong>current</strong> <strong>file</strong>-<strong>sharing</strong> protocols . . . . . . . . . . . . . . 24<br />

4.5.1 Bittorrent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24<br />

4.5.2 eDonkey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27<br />

4.5.3 Gnutella . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28<br />

5 Patterns supporting anonymity 29<br />

5.1 <strong>The</strong> Darknet pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29<br />

5.1.1 Extending Darknets - Turtle Hopping . . . . . . . . . . . . . . . . 30<br />

IV

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!