From a4eaceee0dfa137c15394042918bed015fdb8d90 Mon Sep 17 00:00:00 2001 From: Enrico Fasoli Date: Tue, 5 May 2015 11:29:03 +0200 Subject: [PATCH] Update tor.md --- tor.md | 39 ++++++++++++++++++++++++++++----------- 1 file changed, 28 insertions(+), 11 deletions(-) diff --git a/tor.md b/tor.md index 427fa0d..2daf63e 100644 --- a/tor.md +++ b/tor.md @@ -10,23 +10,40 @@ Tor è un protocollo e la sua implementazione open source in grado di collegare ## Come funziona -![Step 1](https://www.torproject.org/images/htw1.png) -![Step 1](https://www.torproject.org/images/htw2.png) -![Step 1](https://www.torproject.org/images/htw3.png) - -## Struttura - La rete di Tor usa una topologia a maglia: ogni utente connesso consiste in un __nodo anche detto relay__. Un nodo può anche fungere da __nodo di uscita (exit node, exit relay)__, ovvero prende i pacchetti originati da altri nodi e li spedisce al reale destinatario fuori dalla rete Tor (ad esempio un sito web). -A partire dal momento dell'uscita di un pacchetto dalla rete Tor, esso non è più protetto dalla sicurezza della rete ma appare come originato dal __nodo di uscita__ quindi l'identità del __nodo__ mittente è sconosciuta. +- Alice recupera la lista dei __nodi__ della rete Tor da un __directory server__. +- Alice si collega direttamente a uno dei __nodi__ della rete Tor. -Qualsiasi operazione di __backtracking__ ovvero di analisi del percorso del pacchetto è inutile poichè il pacchetto si trovava __incapsulato in pacchetti Tor__ e __ogni nodo conosce solo l'indirizzo IP dei nodi a cui è direttamente collegato e del nodo di uscita__. +![Step 1](https://www.torproject.org/images/htw1.png) -## La crittografia di Tor +- Il client Tor di Alice sceglie un percorso per raggiungere la destinazione dei dati. + +![Step 2](https://www.torproject.org/images/htw2.png) + +- Il percorso può cambiare per destinazioni diverse, al fine di rendere ancora più difficile il tracciamento + +![Step 3](https://www.torproject.org/images/htw3.png) + +### Perché è sicuro e anonimo + +Quando un nodo decide di spedire un pacchetto fuori dalla rete: +- calcola la strada necessaria per raggiungere un nodo di uscita +- prende le __chiavi pubbliche__ di tutti i nodi sulla strada in ordine +- __crea un layer (strato) di crittografia per ogni nodo sulla strada verso l'uscita__, effettivamente incapsulando il pacchetto in numerosi strati + - Da qui deriva il nome "Tor", che originariamente significava "The Onion Router" (l'instradatore a cipolla). + +Inoltre: + +- A ogni __hop__ nella rete, ogni nodo rimuove il proprio strato di crittografia. In questo modo si è certi che il pacchetto originale possa essere letto solo dal __nodo di uscita__ e che il percorso del pacchetto __sia per forza quello stabilito in origine dal mittente__. + +- A partire dal momento dell'uscita di un pacchetto dalla rete Tor, esso non è più protetto dalla sicurezza della rete ma appare come originato dal __nodo di uscita__ quindi l'identità del __nodo__ mittente è sconosciuta. + +Di conseguenza: + +- Qualsiasi operazione di __backtracking__ ovvero di analisi del percorso del pacchetto è inutile poichè il pacchetto originale si trovava __incapsulato in strati crittografici__ -Quando un nodo decide di spedire un pacchetto fuori dalla rete, calcola la strada necessaria per raggiungere un nodo di uscita, poi prende le __chiavi pubbliche__ di tutti i nodi sulla strada in ordine e __crea un layer (strato) di crittografia per ogni nodo sulla strada verso l'uscita__, effettivamente incapsulando il pacchetto in numerosi strati. Da qui deriva il nome "Tor", che originariamente significava "The Onion Router" (l'instradatore a cipolla). -A ogni __hop__ nella rete, ogni nodo rimuove il proprio strato di crittografia. In questo modo si è certi che il pacchetto originale possa essere letto solo dal __nodo di uscita__ e che il percorso del pacchetto __sia per forza quello stabilito in origine dal mittente__. ## Servizi Nascosti