Contributions to secure multicast and privacy-preserving computations on peer-to-peer networks

  1. Muñoz Naranjo, Juan Álvaro
Dirigida por:
  1. Leocadio González Casado Director/a

Universidad de defensa: Universidad de Almería

Fecha de defensa: 30 de abril de 2013

Tribunal:
  1. María Inmaculada García Fernández Presidente/a
  2. Vicente González Ruiz Secretario/a
  3. Emilio Santiago Corchado Rodríguez Vocal
  4. Ajith Abraham Vocal
  5. Javier López Vocal

Tipo: Tesis

Teseo: 342534 DIALNET lock_openTESEO editor

Resumen

El término privacidad engloba un amplio campo de investigación compuesto por diferentes áreas. Esta tesis doctoral se centra en dos de ellas. La primera son las comunicaciones privadas en grupos restringidos, o secure multicast. Un grupo de participantes desea mantener comunicaciones de forma que ningún oyente externo al grupo sea capaz de interpretar la información transmitida. Este problema tiene diferentes aplicaciones como servicios pay-per-view en plataformas de streaming multimedia o multiconferencias privadas en el ámbito empresarial e incluso militar. La solución estándar al problema consiste en establecer una clave de cifrado simétrico común al grupo, llamada session key o clave de sesión, con la cual todos los participantes cifran o descifran la información transmitida. Sin embargo, las implicaciones prácticas de esta solución no son triviales por dos motivos: el uso de una misma clave de cifrado durante largo tiempo la hace vulnerable a ataques, y los cambios en la composición del grupo (un fenómeno conocido como churn), de ocurrir, fuerzan a cambiar la clave después de cada entrada o salida de participantes. Por ello es necesario refrescar la clave de sesión periódicamente, y en especial después de cada cambio en la composición del grupo. El capítulo 1 introduce más formalmente estos conceptos y da al lector una visión más amplia del problema. Las propuestas de secure multicast existentes pueden clasificarse en tres categorías dependiendo de cómo realicen la renovación de la clave de sesión: centralizadas, descentralizadas y distribuidas. En las primeras, una entidad central, el Key Server o Servidor de Claves, está a cargo del establecimiento de nuevas claves de sesión y la distribución a toda la red. Ésta es la forma más sencilla y popular de resolver el problema a cambio de soportar tamaños de grupo limitados. La segunda categoría, las propuestas descentralizadas, es una extensión natural de la primera: para conseguir mayores tamaños de grupo los participantes se distribuyen en subgrupos disjuntos, cada uno gestionado por un Servidor de Claves secundario mediante secure multicast centralizado. Finalmente, en las propuestas distribuidas no existe una única entidad a cargo del proceso de renovación de claves. En su lugar, todos los participantes colaboran en la generación del material criptográfico cada vez que sea necesario. Los esquemas distribuidos ofrecen por tanto más fiabilidad al evitar un único punto de fallo a cambio de una escalabilidad muy limitada. Esta tesis se enfoca hacia la categoría centralizada debido a su importancia como solución en sí misma y como pilar de construcciones descentralizadas. El capítulo 2 realiza una amplia revisión del estado del arte, y el capítulo 3 presenta (i) un nuevo esquema centralizado, discute sus propiedades y pone a prueba su rendimiento. Los fundamentos matemáticos del esquema se basan principalmente en el Algoritmo Extendido de Euclides, gracias al cual también hemos desarrollado (ii) una solución de autenticación para los mensajes de renovación provenientes del Servidor de Claves, y (iii) una prueba de conocimiento cero (zero-knowledge proof) que permite a miembros legales del grupo verificar la legalidad de otros. Los tres esquemas han sido ya objeto de criptoanálisis por parte de otros investigadores, los cuales han hallado algunas vulnerabilidades en el segundo y tercero (autenticación de mensajes y prueba de conocimiento cero). Sin embargo, el esquema principal de secure multicast sigue siendo seguro a día de hoy. Mencionaremos las vulnerabilidades encontradas por el criptoanálisis, así como soluciones propuestas por otro conjunto de investigadores. Dichas soluciones no son mérito del autor de esta tesis y se muestran aquí con el único propósito de dar al lector una perspectiva completa. La segunda parte de esta tesis se centra en computaciones distribuidas con preservación de privacidad. En este caso, los nodos que conforman una red desean seguir la evolución de una variable global a la que todo el mundo contribuye. Sin embargo, las contribuciones individuales hechas por cada nodo no deberían ser conocidas por los demás. Un ejemplo típico, muy ilustrativo, es el Problema de los millonarios: dos millonarios quieren saber quién es más rico sin revelar la cuantía de sus fortunas. Situaciones similares, especialmente aquellas que involucran un número indeterminado de participantes y el cómputo de otras funciones, son útiles a la hora realizar agregación de datos, cálculo de confianza y minería de datos, operaciones todas de creciente interés. El problema de la preservación de privacidad en computación distribuida no es nuevo: existen ya un amplio número de soluciones. Sin embargo, la mayoría de ellas es aplicable sólo a un grupo reducido de participantes y no suelen ser tolerantes a fallos. El autor de esta tesis cree que esas dos características van a cobrar mucha importancia con el tiempo debido a la popularización de diferentes tipos de redes. Por ejemplo, en redes peer-to-peer los nodos pueden entrar y salir de la red de forma inesperada (tal y como hemos comentado previamente para los escenarios de secure multicast), y los cálculos no deberían detenerse o reiniciarse por ello. En redes de sensores (wireless sensor networks) el medio de transmisión es propenso a fallos, y también los participantes pueden aparecer y desaparecer sin previo aviso. El capítulo 4 repasa de la literatura disponible en este campo. En vista de la importancia de la tolerancia a fallos y al dinamismo de las redes, en el capítulo 5 hemos desarrollado un algoritmo de cómputo distribuido iterativo con preservación de privacidad enfocado a redes peer-to-peer que se adapta a ese tipo de situaciones prácticas. Nuestro algoritmo sigue un modelo de paso de mensajes asíncrono que tolera churn y pérdida o retraso de mensajes de forma natural, en oposición a los algoritmos síncronos. Para demostrarlo, lo comparamos con una propuesta síncrona parecida tomada de la literatura. Creemos que nuestro algoritmo es el primero de este tipo. La literatura en este campo considera dos modelos de adversario a tener en cuenta: semi-honestos y maliciosos. Los primeros analizan cualquier dato a su disposición para obtener información privada de otros participantes, pero se asume que ejecutan el protocolo de forma correcta. De los segundos se espera que lleven a cabo acciones arbitrarias para obtener la información privada deseada, tales como enviar mensajes falsos. Nuestro algoritmo tolera adversarios semi-honestos. A modo de resumen de lo anterior, la presente tesis (i) analiza el estado del arte en algoritmos de secure multicast centralizado, (ii) presenta una solución de secure multicast centralizada con bajos requerimientos computacionales así como algoritmos complementarios para la autenticación de los mensajes de refresco y los miembros, (iii) repasa el estado del arte en computación distribuida con preservación de privacidad y (iv) presenta un algoritmo iterativo asíncrono para computación distribuida con preservación de privacidad que tolera churn y fallos en el envío de mensajes.