Summary: | Ingeniero Civil en Computación === Una red de mezcla (o mixnet) es una construcción criptográfica que consiste de una serie de servidores de mezcla que reciben mensajes encriptados, los permutan y luego los reencriptan antes de enviarlos al próximo servidor (o a publicación si es el último servidor). Esto permite enviar mensajes de forma anónima, puesto que para trazar el recorrido de un mensaje en una mixnet hay que conocer la permutación que se realizó en cada uno de los servidores de mezcla.
Esto abre la pregunta: ¿y si se interviniesen todos los servidores de mezcla para extraer las permutaciones? Actualmente ninguna construcción de mixnet ofrece garantías de anonimato ante un adversario pasivo con todos los servidores de mezcla. Esto es lógico pues si el adversario puede ver todo lo que los servidores intervenidos realizan, conoce la permutación que cada uno de ellos aplicó, negando la utilidad de la red de mezcla. Pero, ¿y si los propios servidores no conocieran la permutación que realizan? Entonces aunque los servidores estuvieran intervenidos, el adversario no podría hacer el rastreo. Pero ¿cómo se logra ocultar la permutación al propio servidor que la realiza? Es aquí donde entra el concepto de ofuscación criptográfica.
A grandes rasgos, ofuscar es crear un nuevo programa a partir del programa original tal que la información secreta obtenida a partir del código fuente del programa no es mayor que la producida al simplemente ejecutar el programa como caja negra, teniendo acceso sólo a las entradas y salidas de éste. Así, si se esconde la permutación dentro de un programa ofuscado, ni el propio servidor sabría qué permutacion esta aplicando.
En este trabajo se muestra que una ofuscación de esta naturaleza es posible de realizar, mostrando una construcción genérica de red de mezcla que utiliza ofuscación para esconder el proceso de permutación y re-encriptación dentro de cada servidor de mezcla. Además, a fin de mejorar la eficiencia de la construcción genérica, se propone como prueba de concepto implementable una construcción específica restringida a dos mensajes y un servidor de mezcla. Finalmente, para ambas construcciones se demuestra la seguridad de la ofuscación y la propiedad de anonimato en redes de mezcla.
|