21-05-2013, 01:08 PM
Onion Routing with TOR, Garlic Routing with I2P
Onion Routing.pdf (Size: 58.81 KB / Downloads: 51)
Introduction
Onion routing is a technology aiming to provide anonymous communication between
entities on a network. The goal is to provide low latency connections transparent to
the end user, while the information exchange still is resistant against traffic analysis
and other attacks. This is achieved by a set of encrypted layers and frequently
changing paths between a subset of the routers that participates in the routing system.
The concepts onion routing was introduced by David Goldschlag, Michael Reed, and
Paul Syverson. Their idea is partly built on “mix networks”, introduced by David
Chaum. Syverson later co-started the Tor network, which is the most used onion
routing system by the general public today. Technology for anonymous
communication is controversial. Some people think that the possibility to hide their
identity online is plain bad, while others see it as a human right.
Garlic routing is an evolution of onion routing with changes in how messages are
wrapped and routes are chosen. I2P, The Invisible Internet Project is an anonymous
peer-to-peer network that uses garlic routing and was developed independently and
parallel to Tor. There are a lot of differences in how the network is organized
compared to Tor, and a lot of similarities.
Motivation for anonymity
The most common argument against tools for anonymous communication is that
criminals can use it to plan future crimes, exchange illegal content etc. without
revealing themselves. The people behind Tor says that while this is true, it should not
be a valid reason to why ordinary citizens should not be able to communicate
anonymously. This is because criminals already have means to be anonymous.
Criminal activities can for example be planned using encrypted end-to-end
communication between public computers at places such as libraries. Other
possibilities are the use of stolen cell phones, or computers hijacked by trojans and
other malware. Nowadays identity theft is becoming more and more common among
people with dark intentions. So the conclusion is that criminals already have means to
hide their identity while ordinary people don’t. Surely criminal minded jerks can use
Tor to get away with their actions, but they already have better and more effective
means to do so.
So which legitimate reasons for ordinary people to be anonymous are there? Common
reasons to use Tor are to avoid being tracked by advertising companies on the Web,
reach Internet services and sites blocked by the ISP or participating in chat rooms for
victims of all kinds of abuse. Most people can probably think of at least one reason to
be anonymous on the net without causing anybody else any harm. Government
agencies use Tor for intelligence gathering and people in China and other countries
without freedom of speech use it to communicate with other freedom seekers.
The Onion Router
Overview
Tor is a distributed, anonymous network. The network is not run but a certain
organization, but by a diverse set of organizations and individual donating their
bandwidth and processing power. The software is open source, so anybody can check
for backdoors and other flaws. The project is maintained by The Free Haven Project,
and its web resources are donated by the Electronic Frontier Foundation.
The routing in Tor is done on the transport level in the protocol stack, and only
supports TCP. Applications access the network through the SOCKS interface, which
means that all applications with support for SOCKS can use Tor for anonymous
communication, without needing modification. The network consists of Tor nodes
(routers), run by contributors, and central directory servers run by the maintainer. The
directory servers are a database of all routers which both routers and Tor clients use to
gain knowledge of the network. A few directory servers have the risk of single point
of failure, so most routers pass the directory database around amongst the peers in the
network for back up reasons. This is also done to lower the load on the main
directory. A list of some directory servers is distributed with Tor to facilitate joining
the network (bootstrapping).
Traffic and routing
Circuit set up
The circuit is built from the entry point (user) one step at a time. A circuit ID is
chosen randomly, and a Diffie-Hellman key exchange is initiated. When done, the
starting point has negotiated a symmetric session key with the first hop. The entry
point sends a request to the first hop to extend the circuit, containing the new node.
The Diffie-Hellman process is repeated, but all messages to node number two are
relayed through the first hop. In every step the messages is encrypted with the
negotiated session keys, or when not already negotiated, the receiving hosts onion
key.
Traffic through the Tor network
When the circuit is set up, it is used to relay data. The last router in the path is called
the exit node. The data to be sent is encrypted in several layers, like an onion (hence
the name Onion Routing), together with routing information with the data destined for
the exit node at the core of the onion. This core is then encrypted for the router closest
to the exit, along with information of which the exit router is. This procedure is
repeated for all other routers in the path. When the sent packet reaches the first router
in the path, the router decrypts the routing information to the next hop, and the
encrypted data for that hop. This process is repeated until the packet reaches the exit
node. At each intermediate step, the current router is unable to see where the data is
destined to, where it is originating from or the data itself. The data is sent in clear
between the exit node and the ultimate destination, but the exit node has no means to
know where it’s from.
Hidden Services
An important feature of Tor is the Hidden Services. This feature allows any user to set
up an Internet service, such as a web page or a message board, and let anybody use it
without knowing where it is located or who is behind it. It also works the other way
around; the service operator has no knowledge of who are using the service. Hidden
services have the top level domain .onion, and the host name has to be looked up
using the Tor network. This can be a problem, because all applications do not
currently forward DNS lookups via SOCKS. Tor Hidden Services can be accessed by
all users of the Tor network, and are designed to resist censorship, DDoS and physical
attacks respectively.
I2P and Garlic routing
Overview
Garlic routing is based on onion routing with the following major change: Onion
routers have the possibility to join several messages with independent routing
information on each level into a new onion for the next node. The messages ("cloves",
hence the name garlic) in an onion message can have arbitrary options such as a
request to delay the message in the next node for some time or end there, while the
rest of the clove is disassembled and reassembled in new onions. The onions can also
include padding to masquerade how many actual cloves there are. All these operations
make traffic analysis much more difficult as long as there are enough messages.
I2P, The Invisible Internet Project, was started in 2003 with the purpose of enabling
anonymous communication in a dynamic decentralized network resilient to attacks.
All communication is end-to-end encrypted and implemented as a garlic routing
network layer leaving it open for use by any kind of client-server or peer-to-peer
using it.
The I2P developers are anonymous to the general public and only known by their
pseudonyms; the founder and main developer calls him self "jrandom". The project is
still in an alpha stage and is not considered mature for broad use yet.
Summary & Conclusions
Anonymous network services is a large field of research and development that
steadily continues to grow. The interests and demands of the general public are
increasing all the time. This can easily be seen when looking at the number of related
projects which are being actively developed. The source for this demand may be all
the lawsuits against users of file sharing applications, and in some countries, the
outlawing of such applications. But not only individuals with a liking for file sharing
want anonymous networks. Human rights activists fight for the right of freedom of
speech without unmotivated eavesdropping by the government and journalists want to
protect their sources. In many western countries, laws permitting such eavesdropping
or wiretapping by government authorities is already in place, or will soon be.