NXTER.ORG

Telepathy – dentro de la caja negra

SuperNET funciona como una plataforma que saca lo mejor de las poderosas características tanto de NXT como de BTCD. NXT provee la funcionalidad, BTCD la comunicación segura. Las transacciones anónimas son, como no podía ser de otra forma, uno de los temas principales. Échale un vistazo al artículo de Teleport si quieres ampliar información.

Diferentes criptomonedas buscan el anonimato de diferentes maneras, típicamente con firmas en anillo (“ring signatures” en inglés) o con el mezclado de monedas (“mixing” en inglés). En el caso de Teleport, las denominaciones estándar de las direcciones son clonada o movidas a unas nuevas por parte del destinatario, de modo que sólo pueden conducir de vuelta a un sitio: el emisor. Pero no importa lo sofisticada que una criptomoneda sea, siempre existirá alguna debilidad. Incluso aunque todo lo que haya en la blochain esté oculto, todavía puedes estar expuesto si alguien está monitorizando tu dirección IP o la del destinatario.

Así que la cuestión clave pasa a ser: ¿Cómo se envía una carta sin que nadie, ni siquiera tú, sepa la dirección del destinatario?

Tablas Hash Distribuidas (DHT – Distributed Hash Tables)

Este es el problema que pretende solucionar Telepathy, la red de anonimato de jl777 para BTCD y SuperNET. Su núcleo consiste en un red entre pares  P2P (peer to peer), como la usada por BitTorrent para compartir archivos. Estas redes pasan paquetes de información entres usuarios o nodos. Cada nodo conoce a unos otros pocos nodos cercanos, pero no la red completa, que está compuesta por decenas de cientos de miles de nodos.

Cada vez que un nodo recibe un paquete, este lo pasa a otros nodos que están más cercanos al destinatario que él mismo. De esta manera, el paquete se va aproximando a su destino, hasta que finalmente llega a quién quiera que estaba previsto que lo recibiese. No se necesita una visión global de la red, y no hay una tabla de búsqueda centralizada, algo que supuso la muerte de Napster, puesto que significó que pudiera ser cerrado.

Estas redes utilizan algo llamado Tablas Hash Distribuidas, o DHT por sus siglas en inglés. No solo son tablas de búsqueda muy rápidas y eficientes, sino que también tienen algunas propiedades interesantes y útiles. Las DHT proporcionan una especie de capa superpuesta a la red que utilizan los nodos para enrutar los paquetes. Esta capa superpuesta funciona como un mapa y es usada por los nodos para pasar la información hacia el siguiente nodo.

Sin embargo, aunque el mapa es consistente internamente, no guarda ninguna semejanza con dónde están los nodos en la vida real. Dos posiciones que están la una junto a la otra en el espacio de la red podrían estar en continentes diferentes en el mundo físico, o podrían ser el vecino de al lado. Es un poco como el mapa del metro de Londres, que tan apenas refleja su geografía subterránea, pero aun así permite desplazarse directamente del punto A al punto B a los viajeros.

Puntos muertos (dead drops)

Esta característica se puede usar para enrutar paquetes de manera anónima.

Todo lo que un nodo tiene que hacer es elegir un emplazamiento en el espacio de la red (designado por una clave pública NXT, en realidad) que sea cercano a sí mismo, así como a otros muchos nodos, pero que no corresponda a ningún nodo asignado: un punto muerto (“dead drop” en inglés)

El paquete se enrutará a través de la red, peer to peer, acercándose a su destino en cada paso. Por supuesto, nunca alcanzará al destinatario, porque ese punto no pertenece a ningún nodo, pero eso carece de importancia: siempre que el pretendido destinatario agarre el paquete en algún punto, podrá leer su contenido. Para estar seguros de que el paquete llega al destinatario, el nodo más cercano al punto muerto envía el paquete a todos los nodos que se encuentren a una determinada distancia (quizá sean 20 o 30 nodos en total). Dado que los paquetes están todos encriptados, nadie más será capaz de ver su contenido, pero nadie más sabrá que el pretendido destinatario lo ha leído tampoco.

Una analogía podría ser:

Alice quiere entregar un mensaje a Bob. Ella no sabe dónde Bob vive, pero ambos han acordado previamente un emplazamiento dónde enviar el mensaje. La dirección no existe, pero Bob lo ha sugerido porque vive cerca y está en las inmediaciones.

Alice codifica su mensaje con un cifrado que sólo Bob usa, y lo escribe en una postal. Se lo entrega a un repartidor y le ordena dejarlo en la ubicación ficticia en el centro de la ciudad. Ella le señala la dirección a seguir y allí que se dirige el repartidor. Después de unos minutos, se detiene para preguntar a unos viandantes por más orientaciones. El viandante de nuevo le señala la dirección a seguir, y el repartidor camina un poco más.

Tras unas cuantas paradas más, con sus correspondientes instrucciones, el repartidor llega al centro de la ciudad. Cómo está tratando de localizar una ubicación que no existe, pide instrucciones a un par de docenas de personas que ve por allí, incluyendo a Bob. Comprensiblemente, ninguna de estas personas sabe hacia donde va el repartidor, pero todos ellos mientras dialogan con el repartidor, consiguen leer disimuladamente la postal. Bob se va con su mensaje, pero nadie más sabe que él era el destinatario pretendido, ni lo que decía el mensaje.

El último tramo

Esta solución, llamada “Telepathy” porque los mensajes se entregan aparentemente sin que nadie sepa que han sido recibidos, soluciona de una manera efectiva el problema del último tramo (“last mile” en inglés). En la red, los paquetes se enrutan alrededor de nodo a nodo. En la última fase, sin embargo, cuando el paquete alcanza su destino, cualquiera que estuviese monitorizando la red podría averiguar quien era el destinatario. Con este sistema, sin embargo, suponiendo que un atacante sea capaz de ver que actividad de red hay (no supone una proeza en si mismo), ahora tendrá que escoger entre veinte o treinta potenciales destinatarios. Esto es para cada paquete, sin importar que se trate de una transacción de criptomonedas o un simple mensaje de “hola”. A mayor tráfico, más difícil le resultará realizar deducciones útiles.

Telepathy tiene algunos otros trucos escondidos en la manga (enrutamiento onion antes de empezar una transacción peer to peer, retrasos aleatorios para despistar a los observadores, y algunas más) pero la manera de solucionar el problema del último tramo es lo que hace dar un salto de calidad respecto a la competencia. Con el encriptado adecuado, nadie puede leer tus mensajes. Ahora además, nadie puede siquiera adivinar con quién te estás comunicando, ni tan siquiera si te estás comunicando.

View this in: English

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.