Architecture of Tor | #3: Circuitos

Un circuito es el elemento fundamental dentro de Tor que permite la conexión bidireccional entre el cliente y el servidor final. Un circuito esta compuesto por 3 repetidores, estos serán elegidos por el cliente, el cuál, tendrá que solicitar la llave pública de cada uno de estos para que la informarción pueda viajar cifrada.

Los repetidores que conforman el circuito son elegidos de forma aleatoria del fichero de concenso que el cliente obtiene desde las autoridades de directorio. De esta forma el cliente obtiene una conexión con 3 repetidores:

  • Nodo de salida: Repetidor externo
  • Nodo intermedio: Repetidor intermedio
  • Nodo de entrada: Repetidor intermedio

De esta forma el cliente obtiene las llaves públicas de cada uno de los nodos que va a utilizar y comienza con el proceso de cifrar la información, dicho proceso sucede de la siguiente forma:

  1. El cliente tiene la información en claro dentro del navegador antes de ser enviada a la red Tor.
  2. El cliente Tor cifra la información en el siguiente orden
    1. Cifrado con llave pública del nodo de salida
    2. Cifrado con llave pública del nodo intermedio
    3. Cifrado con llave pública de nodo de entrada
  3. Llegado a este punto el cliente envia el paquete cifrado al primer nodo del circuito. Cuando el nodo recibe el paquete elmina una capa de cifrado ( correspondiente al cirfado con su llave pública ) haciendo uso de su llave privada, dejándo así un paquete con 2 capas de cifrado. Posteriormente el nodo accede a la información de la dirección ip y puerto del siguiente nodo, al cual tiene que enviar el paquete.
  4. El proceso explicado en el punto 3 se realiza de nuevo en el nodo intermedio y de salida
  5. Como se puede deducir en el nodo de salida se habrá eliminado por completo el cifrado del paquete, encontrando de este modo el paquete original que se envio desde el navegador, esto supone un vector de ataque, sin embargo, se puede contrarestrar enviando la información de forma segura, es decir, utilizando una conexión SSL ( HTTPS ) al acceder a la página web o aplicar cifrado externo como es el caso de las conexiones mediante SSH

 

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s