Tor : The Second Generation Onion Router

greydullΔίκτυα και Επικοινωνίες

30 Οκτ 2013 (πριν από 3 χρόνια και 7 μήνες)

104 εμφανίσεις

UNIVERSITY OF CRETE Department of Computer Science

Tor : The Second


Generation Onion Router





Fragkiadaki

Georgia

AM681



A short description


Tor is a circuit
-
based low
-
latency anonymous
communication service.


w
orks on the real
-
world Internet


requires little synchronization or coordination
between nodes


p
rovides a reasonable tradeoff between
anonymity, usability and efficiency


Describe the experience with international
network of more than 30 nodes


A reference about open problems in anonymous
communication

Onion Router


i
s a distributed overlay network designed to
anonymize TCP
-
based applications like


web browsing,


secure shell and


instant messaging


It is called Onion due to traffic flows down the
circuit


It is supported processed connections from over
sixty thousand distinct IP addresses from all over
the world at a rate of about fifty thousand per
day.


Improvements


Perfect forward secrecy


Separation of protocol cleaning from anonymity


No mixing, padding, or traffic shaping


Many TCP streams can share one circuit


Leaky
-
pipe circuit topology


Congestion control


Directory servers


Variable exit policies


End
-
to
-
end integrity checking


Rendezvous points and hidden services


Perfect forward secrecy


The original Onion Routing:


could record traffic and compromise nodes in a
circuit


force them to decrypt it.



Tor


uses an incremental or telescoping path
-
building
design



the process of building circuits is more reliable

Separation of protocol cleaning
from anonymity


The original Onion Routing:


required a separate “application proxy” for each
supported application protocol



Tor


uses the standard and near
-
ubiquitous SOCKS
proxy interface


allow to support most TCP
-
based programs without
modification

No mixing, padding, or traffic
shaping


The original Onion routing had unsolved
problems:


tradeoffs between padding protection and cost


traffic shaping algorithms were theorized


good security without expensive padding



Tor


There is not a practical and economic way yet

Many TCP streams can share one
circuit


The original Onion Router:


built a separate circuit for each application level
request,


required multiple public key operations


presented a threat to anonymity from building so
many circuits for each request



Tor


multiplexes multiple TCP streams along each circuit
to improve efficiency and anonymity.

Related work


Mix
-
Net
Chaum

design :
hiding the correspondence
between sender and recipient by wrapping messages in
layers of public
-
key cryptography


Bahel
, Mixmaster,
Mixminion
: maximize anonymity at
the cost of introducing comparatively large and variable
latencies


Anomyzer


Java Anon Proxy


PipeNet


Tarzan and
MorphMix


Crows


Horses


Freedom


Design goals


Deployability


The design must be deployed and used in real world and
must be not


expensive to run


place a heavy liability burden on operators


difficult or expensive to implement


required non
-
anonymous parties


Usability:
has a few users because anonymity systems hide
users among users


Fewer users


less anonymity


Flexibility:
flexible and well
-
specified protocol


Simple Design:
well
-
understood protocol’s design


Tor Design


The Tor network is an overlay network.


each onion router (OR) runs as a normal user
-
level


each onion router maintains


a TLS connection to every other onion router


a long
-
term identity key


a short term onion key, which decrypt requests from
users to set up


each user runs local software called an onion proxy
(OP) to fetch directories

Cells


relay cells : carry end
-
to
-
end stream data


have an additional header at the front place, containing a
stream ID


Relay command are:


relay data : for data
flowing down the stream,


relay begin : to open a stream,


relay end: to close a stream cleanly,


relay teardown: to close a
broken stream,


relay connected : to notify the OP that a relay
begin has
succeeded,


relay extend(
ed
) : to extend
the circuit by a hop, and to
acknowledge,


and
relay drop: used to implement long
-
range dummies

Circuits and streams


OR originally built one circuit for each
TCP stream, but this design high cost


no integrity, checking, traffic was malleability
attack


Tor each circuit can be shared by many
TCP streams

Rendezvous Point and hidden
services


These points are building block for
location
-
hidden services in the Tor
network


Goals of our design:


Access control


Robustness


Smear
-
resistance


Application transparency


Previous rendezvous work


Rendezvous points in low
-
latency
anonymity systems were
first

described
for use in ISDN telephony


Later low
-
latency designs for hiding
location of mobile phones and low power
location trackers

Other design decisions


Denial of service


Exit policies and abuse


Directory service


Attacks and Defenses


Passive Attacks


Observing user content


Option distinguish ability


End
-
to
-
end timing / size correlation


Website fingerprinting


Active attacks


Compromise keys


Iterated compromise


Run a recipient or an onion proxy


Tagging / Replay / Smear / attacks


Directory attacks


Destroy / Subvert directory servers


Attacks against rendezvous points


Open Questions in Low
-
latency
Anonymity


How often should users rotate to fresh
circuit?


Frequent rotation is expensive and inefficient,
but user’ s traffic is linkable


How should we choose path length?

Future Directions


Scalability


Bandwidth classes


Incentives


Cover traffic


Caching at exit nodes


Better directory distribution


Further specification review


Multisystem interoperability


Wider
-
scale
deployement


Questions?

Thank you for attention