Tor (come tutti gli attuali progetti pratici di anonimato a bassa latenza) fallisce quando l'attaccante può vedere entrambe le estremità del canale di comunicazione.
Ad esempio, supponiamo che l'aggressore controlli o osservi il relay Tor che scegliete per entrare nella rete e controlli o osservi anche il sito web che visitate.
In questo caso, la comunità di ricerca non conosce alcun progetto pratico a bassa latenza che possa impedire in modo affidabile all'aggressore di correlare le informazioni sul volume e sulla tempistica dei due lati.
Quindi, cosa dovremmo fare?
Supponiamo che l'attaccante controlli, o possa osservare, C relè.
Supponiamo che ci siano N relè in totale.
Se l'utente seleziona nuovi relè di ingresso e di uscita ogni volta che utilizza la rete, l'aggressore sarà in grado di correlare tutto il traffico inviato dall'utente con una probabilità intorno a (c/n)2. In questo caso, la comunità di ricerca sa che l'utente non è in grado di vedere il traffico dell'utente.
Ma per la maggior parte degli utenti la profilazione è altrettanto negativa quanto l'essere sempre tracciati: vogliono fare qualcosa spesso senza che l'aggressore se ne accorga, e l'aggressore che se ne accorge una volta è altrettanto negativo quanto l'aggressore che se ne accorge più spesso.
In questo modo, scegliendo molte entrate e uscite casuali, l'utente non ha alcuna possibilità di sfuggire alla profilazione da parte di questo tipo di attaccanti.
La soluzione è quella delle "guardie d'ingresso": ogni client Tor seleziona a caso alcuni relè da usare come punti d'ingresso e utilizza solo quelli per il primo hop.
Se questi relè non sono controllati o osservati, l'attaccante non può vincere, mai, e l'utente è al sicuro.
Se questi relè sono osservati o controllati dall'attaccante, quest'ultimo vede una frazione maggiore del traffico dell'utente, ma l'utente non è comunque più profilato di prima.
Quindi, l'utente ha qualche possibilità (dell'ordine di (n-c)/n) di evitare il profiling, mentre prima non ne aveva nessuna.
Per saperne di più, consultare Un'analisi del degrado dei protocolli anonimi, Difendere le comunicazioni anonime dagli attacchi di registrazione passiva e soprattutto Individuare i server nascosti.
Limitare i nodi di ingresso può anche aiutare a contrastare gli aggressori che vogliono gestire alcuni nodi Tor ed enumerare facilmente tutti gli indirizzi IP degli utenti Tor.
(Anche se non possono sapere con quali destinazioni parlano gli utenti, potrebbero comunque essere in grado di fare cose brutte con un semplice elenco di utenti).
Tuttavia, questa funzione non diventerà veramente utile fino a quando non si passerà anche a un progetto di "directory guard".