Include BitTorrent software
Originally created by Tails on #5991 (Redmine)
On the one hand, Jake asks us to include a BitTorrent client. On the other hand, other members of the Tor project point users to a blog post of theirs that explains why Bittorrent over Tor isn’t a good idea. Tails is probably a special case that could make it not totally unsafe, but we’re not there yet, it seems.
Next things to do
- An answer from other members of the Tor project about it: https://lists.torproject.org/pipermail/tor-talk/2011-December/022550.html
- Jacob audits Transmission, or picks an adequate alternative and audits it.
Once what we’re waiting for is done:
- research how to use separate Tor streams (#5334 (closed)) can be used to make it safe® to use BitTorrent over Tor (see the aforementioned blog post for hints)
Feedback from a user
I tried "apt-get install ctorrent" followed by "torify ctorrent torrentfile.torrent" while monitoring all communication with Wireshark. While ctorrent always generate new unique peer and key IDs each time the torrent is started, always report the same port, and always report IP=0.0.0.0, do not attempt to discover external ip, and no proxy bypasses happens, I concluded it may be safe to use.
Besides that UDP does not work at all over Tor (DHT, uTP, UDP trackers etc…), which of course reduce the usefulness of a BitTorrent client in Tails, there is one real major problem I can see:
Each connection to a peer is going through its own Tor circuit. This means Tor ends up building about 100 circuits, using about half of them at any time. It also means it easily reach download speeds of 3 megabyte/second. One basically never get over 150 kilobytes/second through one single circuit (e.g. http downloads), so this DOES put a lot of load on the Tor network. Proposed solution would be to get all connections for the same torrent through the same circuit.
- Related to #9563 (closed)