Damos mucha importancia normalmente a la protección y cifrado de los datos personales. Sin embargo, los metadatos suelen dejarse de lado. Incluso aunque éstos sean capaces de brindar mucha más información que los propios datos. Un grupo de investigadores del MIT (Massachusetts Institute of Technology) forma parte de un grupo de trabajo responsable de un sistema con capacidades de escalabilidad y orientado a los metadatos. Hoy en RedesZone te explicamos todos los detalles sobre qué puede hacer para asegurar tus metadatos.
Este sistema puede garantizar la seguridad de los metadatos de millones de usuarios que se comunican constantemente a través de la red, especialmente Internet. De esta manera, se desea lograr el objetivo de proteger dichos metadatos de los ojos de aquellos que realizan actividades de vigilancia y espionaje.
Es sabido que, hasta no hace muchos años, se pensaba que el cifrado de los datos a través de la red, es lo que se necesita para lograr una verdadera comunicación entre partes que sea segura y por sobre todo, privada. Sin embargo, los escándalos que habían envuelto a Edward Snowden hacia el año 2013, dejaron en evidencia que los metadatos formaban parte del blanco atractivo para poder saber todo acerca de la actividad y vida online de las personas.
Es justamente en esa época en que Albert Kwon, uno de los miembros del grupo de trabajo responsable de esta solución, empezó sus estudios de Doctorado en Filosofía. Se ha enfocado mayormente en la privacidad de los metadatos. En ese tiempo, es cuando se presentó un paper donde se describe a una solución denominada XRD, cuyas siglas corresponden a Crossroads.
Crossroads como mejora para el cifrado de metadatos End-To-End
El método de cifrado de metadatos tradicional End-To-End mejora gracias a la inclusión de redes mixtas o en cadena. También conocidas mediante su denominación original: mix nets. Estas utilizan cadenas de servidores y cifrado con claves público-privadas. El esquema funciona así:
El primer servidor recibe el mensaje cifrado y descifra solamente una de las capas de cifrado. Esto, claro está, se aplica a los millones de mensajes que recibe cada vez. Después de la fase de descifrado, mezcla los mensajes en un orden cualquiera y los transmite al siguiente servidor.
El siguiente servidor hace lo mismoa: recibe los mensajes, descifra una de las capas de cifrado de cada mensaje, los mezcla y pasa al siguiente servidor de la cadena, hasta el final. El último servidor se encarga de descifrar la capa final y envía los mensajes «limpios» a los destinos correspondientes. La ventaja de esto es que los servidores de la cadena solamente manejan las identidades de los anteriores, es decir, de los que le pasaron los mensajes para continuar con el descifrado y la mezcla de los mensajes. Así, ninguno de los servidores tiene manejo de los datos respecto a su origen y destino, a excepción de los que reciben y envían los mensajes sin cifrar.
Sin embargo, una de las vulnerabilidades presentes consiste en el hecho de que uno o más servidores que formen parte de la cadena, puedan verse afectados mediante cibercriminales. Estos, pueden apropiarse de sus direcciones IP, construir un «espejo» de sus capacidades y hacerse pasar justamente por los servidores legítimos. A partir de allí, diversos ataques pueden llevarse a cabo.
En consecuencia, XRD propuso una solución más eficiente que se denomina «aggregate hybrid shuffle» o en español, mezcla híbrida agregada. Esto garantiza que los servidores de la cadena reciban y mezclen los mensajes correctamente. Para así, detectar cualquier tipo de actividad maliciosa.
Ahora bien, ¿cómo funciona? Cada servidor cuenta con una clave privada secreta y dos claves públicas compartidas. Cada uno de los servidores debe manejar estas claves a la hora de recibir, descifrar y mezclar los mensajes. El servidor recibe un mensaje, se descifra y se mezcla utilizando una de las claves públicas combinadas con su propia clave privada. Luego, utiliza la segunda clave pública para generar una prueba que confirma que dicho servidor realizó su parte, incluyendo la mezcla de los mensajes. Sin manipulación alguna.
Los demás servidores de la cadena utilizan sus claves privadas y las claves públicas de los otros servidores para corroborar las pruebas que se generen. Si en algún punto de la cadena, algún servidor no produce mencionada prueba, es porque se trataría de una actividad maliciosa. Ésto es posible gracias a una combinación del esquema de claves públicas con la encriptación autenticada, que utiliza solamente claves privadas pero es muy rápida a la hora de generar pruebas y verificarlas.
Para hacerlo aun más eficiente, XRD se encarga de dividir los servidores no sólo en una cadena sino varias. Entonces, las distintas cadenas se distribuyen a los usuarios de acuerdo a la necesidad y disponibilidad. Esto colabora en gran medida a la velocidad, seguridad y privacidad de las comunicaciones.
De acuerdo a simulaciones realizadas, las comunicaciones mediante XRD, de origen a destino, toman unos minutos. Dichas simulaciones se dieron mediante la participación de dos millones de usuarios y una red de servidores que contaba con 100 servidores. Esto representa una gran mejora en relación a las horas que tomaban si se utilizaban técnicas de cifrado tradicionales. Sin embargo, que tome unos minutos aún no es lo ideal como para poder implementarlo por completo en la vida real, ya que las comunicaciones que se dan a través de Internet son de carácter instantáneo.
El equipo responsable de esta atractiva solución comenta que están realizando bastantes esfuerzos de manera que el sistema sea lo suficientemente robusto para permitir una verdadera protección de metadatos en tiempo real, así como se aplica hoy en día a los datos en sí. Un metadato puede hablar mucho más de nosotros que una fotografía o un mensaje de texto. Es toda esa información que justamente está almacenada dentro de esa foto o mensaje, que hace que los usuarios se encuentren más expuestos de lo que podríamos llegar a pensar.
Los miembros que forman parte del equipo de trabajo de Crossroads son: Albert Kwon, David Lu y Srinivas Devadas. El paper original fue presentado en el marco del «Simposio de Diseño e Implementación de Sistemas en Red».