TRABAJOS FIN DE MáSTER curso: 2023-24
Usabilidad y desafíos de los compiladores homomórficos |
Descripcion y Objetivos
El cifrado homomórfico es una técnica criptográfica que permite realizar operaciones matemáticas en datos cifrados sin necesidad de descifrarlos previamente. Esto significa que los datos permanecen encriptados durante todo el proceso de cálculo, lo que garantiza la privacidad y seguridad de la información.
Los compiladores de cifrado homomórfico total (FHE) son herramientas diseñadas para simplificar el desarrollo de aplicaciones homomórficas. Estos compiladores toman programas imperativos de alto nivel y los transforman automáticamente en implementaciones eficientes y seguras, lo que hace que la computación segura en datos cifrados sea más accesible y práctica. Algunos ejemplos son Concrete [1], HECHO [2] o el compilador FHE de Google [3].
A pesar de los tremendos avances en los últimos años, los compiladores homomórficos presentan problemas de usabilidad, y este es uno de los principales obstáculos en el camino hacia la adopción masiva del cifrado homomórfico. Pocos estudios [4] se han centrado en evaluar la usabilidad y la aplicabilidad de los compiladores homomórficos en diferentes casos de uso, lo que dificultad la toma de decisiones informadas sobre qué compilador utilizar en situaciones específicas. Además, dado el tremendo avance del cifrado homomórfico en los últimos años, es necesario desarrollar nuevas comparativas de usabilidad que contemplen los avances recientes y los desafíos actuales de los compiladores homomórficos.
Objetivo: Evaluar la usabilidad y aplicabilidad de distintos compiladores homomórficos.
Objetivos parciales:
- Familiarización con el cifrado homomórfico
- Estudiar del estado de los compiladores de cifrado homomórfico total.
- Diseñar caso de uso
- Análizar
Metodología y Competencias
Durante el desarrollo del TFM se hará una adaptación de dos metodologías ágiles, Lean Ux y Scrum, para adecuarlas al trabajo que se desarrollará en este TFM
Las competencias que se trabajan son:
CE1 - Capacidad para la integración de tecnologías, aplicaciones, servicios y sistemas propios de la Ingeniería Informática, con carácter generalista, y en contextos más amplios y multidisciplinares.
CE9 - Capacidad para diseñar y evaluar sistemas operativos y servidores, y aplicaciones y sistemas basados en computación distribuida.
CE10 - Capacidad para comprender y poder aplicar conocimientos avanzados de computación de altas prestaciones y métodos numéricos o computacionales a problemas de ingeniería.
CE12 - Capacidad para aplicar métodos matemáticos, estadísticos y de inteligencia artificial para modelar, diseñar y desarrollar aplicaciones, servicios, sistemas inteligentes y sistemas basados en el conocimiento.
CE14 - Capacidad para conceptualizar, diseñar, desarrollar y evaluar la interacción persona-ordenador de productos, sistemas, aplicaciones y servicios informáticos.
CE16 - Realización, presentación y defensa, una vez obtenidos todos los créditos del plan de estudios, de un ejercicio original realizado individualmente ante un tribunal universitario, consistente en un proyecto integral de Ingeniería en Informática de naturaleza profesional en el que se sinteticen las competencias adquiridas en las enseñanzas.
Medios a utilizar
Todos los medios (hardware y software) necesarios están disponibles tanto en la ESII como en el I3A.
Bibliografía
1. Zama. (2022). Concrete: TFHE Compiler that converts python programs into FHE equivalent.
2. Viand, A. et al. (2023). HECO: Fully Homomorphic Encryption Compiler. In 32nd USENIX Security Symposium (USENIX Security 23).
3. Gorantala, S. et al. (2021). A general purpose transpiler for fully homomorphic encryption. arXiv preprint arXiv:2106.07893.
4. Viand, A. et al. (2021). SoK: Fully homomorphic encryption compilers. In 2021 IEEE Symposium on Security and Privacy (SP).
Tutores CUARTERO GÓMEZ, FERNANDO RANEA ROBLES, ADRIAN | Alumno GREGORIO RUIZ, CARLOS
|
|