How to Torrent Anonymously

Using the standard BitTorrent protocol is insecure if you're torrenting copyrighted material, because you must connect directly to your peers to download the file. This means that a copyright holder could seed a movie that they own, collect the IP addresses that connect to them, then sue them all for copyright infringement. If we want to torrent copyrighted material without any chance of getting caught, we'll need to send the traffic through a mixnet.

Your first thought might be to route the traffic through tor, but this is actually a bad idea. See this post for why (TL;DR, torrenting over tor slows down the network because it wasn't built for that type of traffic, and certain BitTorrent clients will leak your IP address even if you configure them to go through tor). Tor is out, but i2p will work. I2P is a mixnet like tor, but it has a few key differences, which I won't go over here. Suffice to say, i2p can handle the traffic from torrenting (because it was built in a different way than tor), and it has its own torrent client built-it that preserves your anonymity, called i2psnark. This is what you should use for anonymous torrenting.

Step 1. Install i2p. Be sure to read the post-install work on that page, because i2p may not work without a little bit of tweaking. Troubleshooting i2p is not in the scope of this article, so from this step onwards we will assume i2p is working, and that you can reach i2p deep web sites.

Step 2. Get a magnet link from a tracker. The biggest tracker for i2p torrents is Postman's Tracker, so I would start searching for what you want there. Important: you cannot download normal clearnet torrents using i2psnark. You can only download torrents that were set up on i2p from the start. This means there won't be as many torrents to choose from on i2p trackers, because not as many people use them. However, don't let that turn you away, because the way to fix this problem is to get more people to use them. Anyways, once you've found the torrent you want to download from Postman's Tracker (or whichever tracker you're using), copy the magnet link.

Step 3. Start downloading it in i2psnark. Go to your i2p router console's home page, then scroll down until you see the link to "Torrents" under "Applications and Configuration". Click it, and it will take you to i2psnark. Paste the magnet link in the box that says Add Torrent... From URL, and click the Add Torrent button right next to it. If everything went right, it should appear in the list of torrents. Give it a few minutes to connect to peers, and it should start downloading.

Step 4. Tweak i2psnark's settings. By default, if you have to restart i2p (or your whole computer), i2psnark will not restart downloading or seeding its torrents unless you tell it to. This probably isn't what you want, so click the Configuration button in i2psnark, and check "Auto start torrents". Now they will start on their own. Also, change the Up Bandwidth Limit to something reasonable. It recommends setting it to half of what you set i2p's total bandwidth to be (you did that when you read the Post-Install Work page like I told you to, right?).

Step 5. Enjoy your torrent, and seed it. Congratulations! You just downloaded a torrent anonymously. Now, be sure to seed it. Since everything is being routed anonymously here, you don't have to worry about getting busted for seeding copyrighted material, so go ahead and seed it, so that the torrent can remain available for everyone, and so it will download a little bit faster for the next person. I'd recommend seeding at least until you've uploaded twice as much as you downloaded. Note that this may take a long time to happen, so plan to keep these files on your hard drive for at least 1 month. If you're running low on space, then choose which torrents you download carefully, so that you don't have to delete them before you've given back twice what you downloaded.

Step 6. Give back to the community. Let's say that you own a movie on DVD that isn't on Postman's Tracker. Well, be a good neighbor and share it! First, rip it from DVD using ripping software, like HandBrake. You may need to install this as well, to break whatever weak-sauce copy protection your DVD might have. I recommend using HandBrake's High Profile settings if it's a movie, and the normal settings if it's a TV show with a bunch of episodes.

Once you've ripped the movie, you may want to put it in a zip archive, to lower the amount of data that has to be downloaded. Put the zip file somewhere where it won't be in the way, because if you move it after you start seeding, the torrent won't work for everyone else. Then, go to i2psnark, and type the exact path to the zip file in the "Data to seed" box under Create Torrent. For this example, we'll upload it to Postman's Tracker, so click the radio button for Postman's, and click "Create torrent". This will create a .torrent file, which you will then have to upload to Postman's Tracker.

Here's where it gets tricky. On Linux, by default, i2psnark will create your .torrent file in /var/lib/i2p/i2p-config/i2psnark/. The problem is, only root can access that folder. So, we need to copy the .torrent file somewhere else before we can upload it. So, open up a terminal, and type in sudo cp /var/lib/i2p/i2p-config/i2psnark/<name of torrent>.torrent /home/<your username>/. This will copy the .torrent file to your home directory.

There's still one more problem. The .torrent file's permissions still only allow it to be read by root. So, cd to your home directory, then run sudo chown <your username> <name of torrent>.torrent. Now you can read it normally.

At this point, you are ready to post the torrent on Postman's Tracker. Create an account there, then click Upload on the header. It will take you to a page with instructions for how to upload, and some rules. You should be able to figure everything else out from here. Now, watch as those peers start lining up!