Repositorio del proyecto FHE (Fully Homomorphic Encryption)
Grado en Ingeniería de Tecnologías y Servicios de Telecomunicación ETSIT - UPM
Ante la necesidad de compartir información diariamente que, como individuos, requerimos que esté protegida, y los consecuentes peligros del almacenamiento de las claves privadas en el lado del servidor con los modelos de cifrado actuales, se propone una nueva solución denominada criptografía homomórfica. Gracias a ella, podemos evaluar funciones sobre el propio dato cifrado en el lado del servidor, por lo que la transferencia de claves hacia dicho extremo sería innecesaria, protegiendo al usuario de la filtración de su información personal debido a ataques de canal lateral o a la explotación de vulnerabilidades de día cero.
En este trabajo se expondrán las bases teóricas y aplicaciones prácticas en la sociedad de la criptografía homomórfica. Además, se estudiarán los avances de esta tecnología y las diferentes librerías de código abierto desarrolladas por diversos grupos de investigación o empresas, finalmente focalizándose en SEAL, implementada en Microsoft. Virando el foco de mira hacia esta, se desarrollará una aplicación práctica en un hipotético caso real de comunicación cliente-servidor, tanto temporal como en un sistema de persistencia con almacenamiento en base de datos. En ambos casos, se evaluarán funciones sobre la propia información cifrada sin intercambio de claves privadas entre las partes involucradas. Así, se demostrarán las ventajas a nivel de seguridad que implica adoptar este nuevo modelo criptográfico.
Given the need to share information on a daily basis that, as individuals, we require to be protected, and the consequent dangers of storing private keys on the server side with the current encryption models, a new solution called homomorphic encryption is suggested. Thanks to it, we can evaluate functions on the encrypted data itself on the server side, so that the transfer of keys to that end would be unnecessary, protecting the user from the exfiltration of his or her personal information due to side-channel attacks or the exploitation of zero-day vulnerabilities.
This paper will present the theoretical basis and practical applications of homomorphic encryption in society. In addition, the advances of this technology and the different open-source libraries developed by various research groups or companies will be studied, finally focusing on SEAL, implemented at Microsoft. Regarding SEAL, a practical application will be developed in a hypothetical real case of client-server communication, both temporary and in a persistence system with database storage. In both cases, functions will be evaluated on the encrypted information itself without exchange of private keys between the parties involved. Thus, the security advantages of adopting this new cryptographic model will be demonstrated.
Se han generado dos proyectos individuales en lenguaje JavaScript dentro del directorio /patriciaOrtuno, para el cliente y para el servidor.
- Cliente: clientseal
- Servidor: sealapi
Dentro de cada uno de los directorios se encuentra un README.md con las intrucciones para la ejecución de cada entorno individual.
Patricia Ortuño Otero