Photo by Wilhelm Gunkel on Unsplash

As you probably know, Tor is an anonymity network which utilizes a unique system of Onion Routing (explained later) to keep users of the network anonymous. In this article, i’m going to touch on some of the fundamental principals used by Tor, and how you might find it useful. Started in the mid-1990’s at the U.S Naval Research Laboratory, the project was developed to foster secure communications between spies and other government agents involved in covert investigations. In 2002 the software was released under a free public-use license. Control was handed to the Electronic Frontier Foundation, who in turn handed control to The Tor Project. In 2008, the Tor Browser, built on top of Firefox, was released.

Why would the government release control of the software? Well, a anonymous network of spies sending communications over the internet is not very anonymous. In order to maintain control of the system and safeguard it’s intended use, it was necessary to open the technology to the public. Marketing it as a tool for liberation, fighting oppression, and free speech, the Tor network is now open for all to use.

The core technology that enables the anonymity Tor is famous for is called Onion Routing. Normally on the surface web, you send requests for information to servers. The servers receive the requests, and send you the information you requested. During this process, the server your requesting knows the identity (IP) of your computer.

In an Onion Network, those requests are passed through layers of encryption similar to the layers of an onion. One of these ‘Layers’ is known as a node , and nodes are just computers that (usually volunteers) maintain that make up the whole network. As of this writing, there are approximately 6588 nodes in the network. Below is a breakdown of the different types of nodes.

-- Entry/Guard Node -> This is the first node your computer uses when accessing the Tor network. It has access to your IP Adderess, and only changes every 2-3 months. This node is usually the fastest in terms of data transfer speeds. -- Middle Relay --> This is the anonymizing part of the network. Middle Relays are encrypted in a way that the current node. Messages sent to these nodes and the responses are encrypted with different keys, each key being unique for each 'hop'. -- Exit Relay --> This is the final node on the Tor circuit. The IP address is visible to the destination and from their point of view this is your 'identity'.-- Bridge Nodes --> The existence and information about all of the above nodes are public information, which makes it possible for companies and organizations to block Tor traffic altogether for their services. In order to avoid this, Bridge Nodes can be used. 

Hidden services, ending with the .onion domain, can only be accessed via the Tor Network. They allow journalists to securely share files, and government officials to maintain anonymity. They also allow people to commit crimes and offer illicit services. But using the Tor network doesn’t have to be so high stakes. You can use Tor to browse the surface web anonymously, as long as the websites you visit don’t actively block Tor exit nodes. The tradeoff is that Tor is much slower than your normal internet connection, as a result of the onion routing process described earlier.

If you’re interested in trying Tor or reading more about how it works, please see the links below, or download the Tor Browser!

Happy coding!


Turning over rocks and seeing what crawls out.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store