Feature #5991

Include BitTorrent software

Added by Tails 2013-07-18 07:49:07 . Updated 2016-02-08 19:49:41 .

Status:
Resolved
Priority:
Low
Assignee:
Category:
Target version:
Start date:
Due date:
% Done:

100%

Feature Branch:
Type of work:
Discuss
Blueprint:

Starter:
Affected tool:
Deliverable for:

Description

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.

{{toc}}

Next things to do

Waiting for

  1. An answer from other members of the Tor project about it: https://lists.torproject.org/pipermail/tor-talk/2011-December/022550.html
  2. Jacob audits Transmission, or picks an adequate alternative and audits it.

Research

Once what we’re waiting for is done:

  1. research how to use separate Tor streams (Feature #5334) can be used to make it safe® to use BitTorrent over Tor (see the aforementioned blog post for hints)

Unsorted

[libtorrent] socks proxy obedience

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.


Subtasks


Related issues

Related to Tails - Bug #9563: FAQ: torrents with Tails -> use i2p In Progress 2015-06-12

History

#1 Updated by intrigeri 2013-11-02 09:19:34

  • Priority changed from Normal to Low
  • Starter set to No

(As proposed in the “Quarterly tickets gardening: outcome and proposals” thread on tails-dev.)

#2 Updated by BitingBird 2014-06-09 12:23:23

  • Subject changed from include BitTorrent software to Include BitTorrent software
  • Category set to 196

#3 Updated by BitingBird 2014-06-09 13:03:12

  • Category deleted (196)

#4 Updated by BitingBird 2015-08-25 12:01:52

  • Status changed from Confirmed to Rejected

One can either download from i2p, or install an additional software to torrent. It would not be a good idea to give more users the idea to download with Tor -> rejecting.

#5 Updated by anonym 2015-08-28 03:54:50

While I tend to agree, I just wonder if there was a discussion for this decision.

#6 Updated by intrigeri 2015-08-28 11:24:42

> While I tend to agree, I just wonder if there was a discussion for this decision.

I don’t think there’s been much discussion (at least not on the ML nor in a monthly meeting IIRC). But in past ticket gardening sessions, it has happened that we’ve applied a policy of closing any Low priority ticket that hasn’t been touched for N years, I think.

Meta: we make lots of “small” decisions on Redmine nowadays. Those who follow 100% of Redmine see them, and if they disagree they can react and ask for the topic to be raised somewhere more public. I guess that we don’t want to discuss all such things on tails-dev@ or during monthly meetings, so the question is: where to draw the line between what needs to be collectively discussed, and what doesn’t. In this case (this topic has been essentially on hold, idle on our todo list, with nobody working on it, since ca. 2011), IMO closing straight ahead as part of a ticket triaging session is acceptable. If anyone cared much about it, they already have had quite enough chances to react.

Now, if anyone feels like a broader discussion is needed, I bet that BitingBird won’t mind if someone reopens this ticket.

#7 Updated by SpencerOne 2015-11-02 21:23:12

  • Status changed from Rejected to In Progress
  • Type of work changed from Wait to Discuss

BitTorrent software, or at least formal instructions on safe use of user-installed BitTorrent software, would be very useful, even if only used to torrent a new Tails .iso :)

A discussion would be welcomed, even if only to improve our documentation on this.

The ‘Feedback from a user’ section info is great; more of this would make for a great doc section.

#8 Updated by SpencerOne 2015-11-02 21:46:28

Oh, I am not sure which is the appropriate list to have this discussion on.

#9 Updated by intrigeri 2015-11-04 02:23:44

  • Assignee set to SpencerOne

(You took the responsibility of reopening => assigning to you the responsibility of leading that discussion to a conclusion.)

> A discussion would be welcomed, even if only to improve our documentation on this.

Fair enough.

> Oh, I am not sure which is the appropriate list to have this discussion on.

tails-dev@boum.org is the right one.

#10 Updated by SpencerOne 2015-11-04 20:15:00

Will do :)

The discussion can be found here: https://mailman.boum.org/pipermail/tails-dev/2015-November/009732.html

#11 Updated by sajolida 2016-01-15 19:26:16

  • related to Bug #9563: FAQ: torrents with Tails -> use i2p added

#12 Updated by SpencerOne 2016-02-08 19:49:41

  • Status changed from In Progress to Resolved
  • Assignee deleted (SpencerOne)
  • % Done changed from 0 to 100
  • Starter deleted (No)

I can confirm this as resolved.

Tails includes BitTorrent software in I2P; documenting is underway.

The conclusion can be found here: https://mailman.boum.org/pipermail/tails-dev/2016-February/010231.html