Hi,
Tails should either include BitTorrent software, explain how to safely
use user installed BitTorrent software, or document the technical
limitations behind not doing so.
The purpose of this thread is to discuss and conclude the matter of
including/supporting BitTorrent in some way in Tails.
This [0] is what we currently say.
This [1] is the existing ticket.
Research Thus Far (If there is more please include)
---------------------------------------------------
Tor Project Blog Post:
https://blog.torproject.org/blog/bittorrent-over-tor-isnt-good-idea
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.
What To Do
-----------
- Talk about the protocol (What are the issues with UDP [2], TCP,
extensions, and so on?)
- Talk about the circuits/load (Can connections be funneled through less
circuits and/or be less of a burden?)
- Talk about pre/post packaging (Will we include BitTorrent software in
Tails?)
If this sounds good, let's do it :)
Wordlife,
Spencer
[0]:
https://tails.boum.org/support/faq/index.en.html#index29h2
[1]:
https://labs.riseup.net/code/issues/5991
[2]:
https://www.usenix.org/conference/woot15/workshop-program/presentation/p2p-file-sharing-hell-exploiting-bittorrent