Suppose my opponent watches the traffic between my provider and the first relay in the chain and also between the output relay and the website that I visit. Is there a simple way in this case to make it difficult for the enemy to match the traffic at both ends?


1 Answer 1


Is there a simple way in this case to make it difficult for the enemy to match the traffic at both ends

No. Tor is a low-latency anonymization network; these all fail when an adversary can run a correlation attack such as you describe. The correlation attack can probably be done with packet timing alone; the longer your session persists, the more confident a correlation becomes. There is no way around this except to change Tor so it either delays packets at each node or adds cover traffic. The second one unlikely to work without wasting a huge amount of the already scarce bandwidth of the network.

The first one (adding delays) would make correlation attacks much harder, but in order to be useful, the delays would most likely have to be so high as to make Tor unusable for any kind for interactive browsing.

Trying to add cover traffic yourself

Edit: Alexander asks whether watching a YouTube video to generate some cover traffic on your end will make correlation harder.

I'd say it doesn't really.

Assume there are two users communicating with the website in question: A (that's us) and B. Also assume A watches a Youtube Video (Y) to generate some cover traffic.

So an attacker might see packets A A B B A B A A B B leaving the web server. He will observe packets Y A Y Y A Y A Y Y Y Y A A Y Y coming in from the network to A's computer. Of course he doesn't know which packets on the server side are A's and which are B's, and he doesn't know which packets on the client side are Youtube packets, but since all the A packets should come in more or less in the same order as they leave the server, and at the same time (plus a small network delay), and with the same sizes, it should be fairly easy to correctly match up the A packets on the client and server side.

  • Note that delays are infeasible with Tor. A delay would need to be as high as 6 or 7 hours (similar to that of a high-end email mixnet) to be of use.
    – forest
    Commented Feb 14, 2018 at 2:34
  • @forest Wow, why is that?
    – Arminius
    Commented Feb 14, 2018 at 2:37
  • 1
    @Arminius I don't recall the specifics. I read it in a paper on freehaven.net/anonbib (pretty much the best collection of anonymity network-related papers) a while ago.
    – forest
    Commented Feb 14, 2018 at 2:39
  • The delays might possibly even have to be longer, and might still not protect you from successfull correlation even then, because besides packet timings, packet sizes can also be used for correlation. Consider sites that are sparsely visited, and you begin to see how difficult it is to protect against correlation using timing and packet size information in such cases. Commented Feb 14, 2018 at 2:47
  • Well packet sizes are also at least partially padded (to 514 bytes, previously 512), but that's clearly not a lot. I forget the max size of the payload inside. But you're right, you cannot gain full anonymity against a global passive adversary while using a low-latency anonymity network. Thankfully, a global passive adversary is a theoretical construct like a computationally-unbounded adversary. While even the NSA tries to come close, they have a long way to go. Not that correlation attacks are something to be scoffed at, of course...
    – forest
    Commented Feb 14, 2018 at 2:49

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .