¿Qué es y cómo funciona la red Tor?

¿Qué es y cómo funciona la red Tor?
tor

Tor es una red que implementa el famoso enrutado cebolla (onion routing). El objetivo de esta red es cambiar el modo de enrutado tradicional, el que todos solemos utilizar, con el fin de mantener el anonimato y la privacidad de los datos.

¿Enrutado cebolla? ¿Qué es eso?

Como ya he dicho hace un par de líneas, lo utilizamos para comunicarnos a través de redes que preserven la privacidad de forma totalmente transparente al emisor y receptor, es decir, anonimato.

Normalmente utilizamos un enrutado directo. Con directo quiero decir que si quieres visitar una web, esta información va de tu ordenador a tu router, del router a los enrutadores de tu proveedor de Internet (ISP) y finalmente a los servidores de esta web. Es un camino directo. No tiene por qué ser siempre el mismo, pero es directo. El problema es que cualquiera que esté escuchando esa conversación entre el servidor de la web y vuestro ordenador, sabrá perfectamente quién eres. De esos datos puede obtener nuestra IP y la del servidor, por ejemplo.

Si queremos tratar de mantener nuestro anonimato, podemos hacer uso de Tor. Su enrutamiento es indirecto, es decir, que manda los paquetes a través de varios nodos de forma aleatoria.

Vamos a suponer que tenemos un ordenador A y un ordenador B. A quiere enviar un mensaje a B y realiza una conexión a un servidor que contiene las direcciones de los nodos Tor que vemos en la siguiente imagen. En este caso, A es Alice y B es Bob (típicos nombres que se usan para explicar estas cosas).

onion routing

Después de recibir la lista de diracciones de este servidor, nuestro cliente Tor (estará en nuestro equipo) se conectará a un nodo aleatorio a través de una conexión encriptada. Este nodo escogerá otro nodo aleatorio con otra conexión cifrada y, así hasta llegar al nodo de antes de Bob. El nodo de salida (penúltimo de la comunicación) hará una conexión no encriptada con Bob. Todos los nodos Tor son elegidos al azar y ningún nodo puede ser utilizado dos veces. En caso de que la red esté congestionada, habrá nodos que no se utilicen. Esto lo vemos en la siguiente imagen:

onion routing 2

Ahora, ya podemos ver la estructura de los datos en el enrutamiento cebolla. Utilizando un cifrado asimétrico, Alice cifra el mensaje por capas (como una cebolla). Lo primero que hará es cifrar el mensaje con la clave pública del último nodo de la lista, para que sólo él lo pueda descifrar. Además, cifra e incluye las instrucciones para llegar al destino, que es Bob. Todo este paquete se cifra de nuevo añadiéndole las instrucciones para llegar al último nodo de la lista con el fin de que sólo este pueda descifrar el paquete y que acabe llegando al nodo Bob.

onion routingf keys
Estructura_de_cebolla.svg

Para evitar el análisis de nuestras comunicaciones por parte de terceros, cada 10 minutos se cambian los nodos  de la conexión Tor, escogiendo nuevos nodos. Esto podemos verlo en la siguiente figura:

onion routing 3

Los nodos de la red Tor son públicos. Si nosotros mismos somos un nodo, incrementaremos nuestra privacidad. Aunque esto suene contradictorio, explicaré por qué ocurre esto: si Alice usa la red Tor para conectarse a Bob, necesitará conectarse a otro nodo Tor. Sin embargo, si funciona como un nodo para Jane o Dave, también estará conectada a otro nodo. Por lo tanto, un tercero no podrá saber si la comunicación por parte de Alice ha sido iniciada como usuario o como nodo.

Esto hace que la extracción de información sea más compleja por parte de un tercero. Si Alice funcionase como nodo para decenas, centenas de usuarios, sería realmente complicado espiar sus datos.

onion routing 4

Como conclusión, podemos decir que el onion routing nos proporciona más privacidad que el enrutado normal y corriente. Exceptuando el primer y último nodo, nadie sabe de dónde viene o a dónde va la información que enviamos. El mensaje va encapsulado en muchas capas encriptadas, lo cual nos proporciona un extra en la privacidad buscada.

tor red privacidad

No es infalible. Como todo sistema, tiene fallos. Pero eso sí, es difícil encontrarlos.

Espero que os haya sido de utilidad este artículo, por lo menos para saber cómo funciona el enrutado cebolla y sobre todo para aprender. Si tenéis alguna duda, dejad vuestro comentario.

¡Un saludo!

Fuente de las imágenes: WikiPedia.org, iusmentis.com