The Tor system works by connecting to a Tor node.

That Tor node then connects to a deeper Tor node, which connects to a deeper Tor node, which connects to an exit node.

How do I know that there's no rogue entry node which is just faking that it's creating a deeper node, while it's really an entry node and exit node, and is logging all that you do (since it knows your IP address and is the exit node)?

1 Answer 1


You know that some rogue entry node isn't faking Tor circuits because your Tor client specifies the relays used in each circuit, and because the circuit-creation process requires that each relay demonstrate that it possesses the proper private key. In order to mount such an attack, an adversary would need to compromise most Tor relays, in order to get their private keys.

That's probably unworkable, and it's undoubtedly not the most efficient attack. It would be far easier for an adversary to run numerous malicious entry guards and exit relays. In order to push users to its malicious nodes, it could mount DDoS attacks against honest nodes. That's the attack to worry about.

For specifics, see 5. Circuit management in the Tor Protocol Specification.

  • Your Tor client get a list of Tor relays from outside the Tor network?
    – bob
    Commented Sep 14, 2014 at 16:58
  • It gets the list from Tor directory authorities that are hard-coded in the software.
    – mirimir
    Commented Sep 14, 2014 at 17:26

You must log in to answer this question.

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