Entonces tu pregunta es básicamente:
el atacante, si opera su nodo de entrada, no podría correlacionar la IP del remitente con la identidad [del destinatario] identificando la clave con la que está cifrada
No, porque el nodo de entrada no conoce esta clave. En resumen, el cliente Tor encripta el tráfico antes de enviarlo al nodo de entrada y el nodo de entrada no puede leerlo. Para entender por qué, necesitas saber un poco sobre cómo funciona Tor:
Su cliente Tor selecciona tres nodos: el nodo de entrada, medio y de salida. Cada nodo Tor tiene su propia clave pública e identificador. Digamos que el nodo de entrada tiene el identificador 0xC4, el nodo medio tiene 0x13 y el nodo de salida tiene 0x37. Digamos que queremos transmitir Message
a alice.example.net
.
Su cliente Tor primero cifraría Message
y el destino alice.example.net
con la clave pública del nodo de salida, digamos que se convierte en eu3AeShuC
.
Su cliente Tor ahora cifra este paquete cifrado, eu3AeShuC
, una segunda vez (usando la clave pública del nodo central), agregando el nuevo destino: 0x37. El paquete ahora es ho7cieRaqhe
.
Y finalmente, su cliente Tor encripta estos datos por tercera vez junto con otro destino (0x13), utilizando la clave pública del nodo de entrada. Esto se convierte en egoo4eiReeth2Ief
. El cliente envía este paquete final al nodo de entrada.
El nodo de entrada recibe egoo4eiReeth2Ief
, lo descifra con su clave privada y obtiene ho7cieRaqhe
y destino 0x13. Reenvía el mensaje a 0x13.
0x13, el nodo medio, lo recibe y descifra el paquete usando su clave privada. Obtiene eu3AeShuC
y encuentra otro destino: 0x37. Se reenvía a 0x37.
Finalmente, el nodo de salida lo recibe, lo descifra con su clave privada, ve Message
y el destino alice.example.net
, y lo envía allí. Esto, por cierto, es la razón por la que querrá usar https al acceder a sitios web públicos (.onion es diferente) o PGP al enviar correo electrónico: el nodo de salida ve lo que sale a Internet.
Este es, por supuesto, un modelo simplificado, pero nos dice lo que sabe cada nodo: el nodo de entrada conoce su dirección IP, por lo que puede correlacionar su dirección IP entre paquetes e incluso visitas. Pero no tiene idea de qué está enviando o a quién está enviando.
El nodo central nunca tiene una pista sobre nada. Pobre chico.
El nodo de salida ve lo que está enviando, si no está cifrado (por ejemplo, con https) ya quién se lo está enviando, pero no tiene idea de dónde vino. Por supuesto, si usa la misma identidad de firma PGP cada vez, el nodo de salida podría ver esta identidad, pero no es el punto de una firma que demuestre que fue usted, incluso si "usted" aquí es un seudónimo. persona (no anónima)?
Tomemos un ejemplo de Tor y PGP: Satoshi Nakamoto usó Tor y PGP. Él prueba su identidad por PGP pero oculta su ubicación física (y por lo tanto la identidad del mundo real) mediante el uso de Tor. No creo que nadie en el planeta sepa quién es Satoshi Nakamoto si él (o ella, o ellos) no quieren que lo sepan. Tor es bastante bueno en el anonimato si lo usas correctamente y parece que Satoshi Nakamoto lo hizo.