3

Using BitTorrent over Tor is said to slow down the whole network because it can't handle the load. The Tor Project discourages it for this reason.

What is the main issue with BitTorrent over Tor, and why is it worse than downloading a large file from a website?

Is a different circuit built for each peer, and is this the reason? Is it possible to configure Tor to use only one circuit at a time, and would this help?

Let's not focus on the issue of BitTorrent leaking IP, this can be avoided with proper configuration.

Would reducing the number of relays in the circuit used for BitTorrent to 2 help? This may not be good for anonymity, but it may be the best tradeoff. I'm not sure whether it is possible to do this.

Lastly, would limiting the download and upload speeds in the BitTorrent client help?

4

There is a lot of information to consider when running Bittorrent over Tor. Please take the time to read all of this information (from all of the answers) to make the best possible decision.

Why Bittorrent over Tor compromises your anonymity:

BitTorrent is designed to share files among users without the assistance of 3rd party servers for any purpose other then to get a list of users to request pieces of the files.

Due to Bittorrent's need (by it's very design) for users to share pieces of the files with other users it publishes the user's IP Address to assist in Bittorrent's "seeding process". Things get complicated though with Bittorrent Clients' abilities to run things through a proxy. It was setup to run at a bare minimum with the proxy settings but didn't take the concept of anonymity into mind.

However often (not always) your Bittorrent client will send your legitimate IP Address over Tor. This compromises your anonymity as despite the fact that you accessed Bittorrent through Tor, you still sent identifiable information through Tor. Tor cannot protect you from yourself, it's just like how a locked door can't protect you if you unlock it. Tor only routes packets anonymously it does not modify the contents of said packets. The two conflicting designs make Bittorrent a risky protocol to run over Tor.

If you are routing Bittorrent over Tor (lets say on not illegal downloads, lets say a Linux Distribution Download) then do not do risky activities where anonymity is required with Tor while Bittorrent is running and connected to the same Tor install.

I know you asked me not to provide the above information however I feel it's important that you know what risk you are taking and why the risk occurs and therefore choose to provide that information into my answer regardless of what was requested.

Why using Bittorrent over Tor harms both networks:

Now lets assume for a minute that you resolve all data leakage issues with Bittorrent over Tor. Now you are harming both the Tor Network as well as the Bittorrent Network.

First you are harming the Tor network as there are far more Tor Users than there are Tor Exit Nodes meaning that bandwidth on the Tor Network is limited. When you make a lot of small connections on the Tor Network you slow it down for everyone since you add such a high level of load onto the network.

Next by using Bittorrent over Tor you harm the Bittorrent Network. If you have completely routed your connection to the Bittorrent Network through the Tor Network then you are not seeding pieces back into the Bittorrent Network. This means you take away bandwidth from other users slowing down all downloads of that particular file.

What you could do to reduce load on the Tor Network:

If you choose to ignore all of the above advice and wish to proceed in utilizing Bittorrent over Tor then there are a few changes you could make to reduce the load. First reduce the amount of connections that your Bittorrent client is opening. Accordingly it will reduce the amount of open connections that you have open within the Tor Network. At the very least it will avoid harming the Tor Network (as much) however you will then suffer from even slower download speeds.

Why downloading a large file from a single server is better than Bittorrent over Tor:

If you are downloading a large file over Tor you are utilizing a lot of bandwidth. It is by far less intensive if you are not continuously opening and closing small connections and have one large connection running the entire time.


Thank you for taking the time to read all of the content within this answer. If anything I wrote in this answer is confusing then please let me know so I can adjust information for readability.

1

A new circuit may be built for each peer, this depends on your isolation flags, but it probably isn't going to help much to only use a single circuit.

There are a few reasons:

  • The bittorrent protocol would not work over Tor, bittorrent is intended to be peer-to-peer. If everyone used bittorrent over tor no one would share data, only leech, you'd be better just downloading from a single source (https, sftp, scp, etc.) at that point. You could request chunks from other peers and seeds but they've no way of requesting them back from you, which brings us to the second the problem...
  • The bittorrent protocol involves you publishing your IP to the swarm since it is expected that you will share back to others who need the data that you have. As such most clients will happily tell everyone else where you are, even if you're pulling the data down through Tor ("proper configuration" or not you should be concerned about this, the protocol is designed not to be used anonymously).
  • There are problems with the algorithm which is used to decide how much bandwidth to use, isis gives a brief overview of this problem (and the first two points) in a lecture she recently gave.
  • Many exits do not have exit policies that would allow you to connect to most other bittorrent clients, reducing your ability to actually retrieve data from them. See the Reduced Exit Policy.

If your threat model is the MAFIAA then a VPN probably provides sufficient protection, if you require better protection than that then you should probably not be using bittorrent at all.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.