El criptosistema Gentry (del apellido del creador Craig Gentry) es la primera construcción posible para un criptosistema completamente homomórfico basado en criptografía de celosía . Fue propuesto por primera vez por Craig Gentry en 2009 [1] y fue el tema de su tesis doctoral. El esquema Gentry admite operaciones de suma y multiplicación en texto cifrado, lo que le permite crear anillos para implementar cualquier cálculo arbitrario. Posteriormente, tuvo muchas mejoras y modificaciones con el fin de mejorar su rendimiento.
El esquema utiliza [2] celosías ideales J en cadenas de polinomios módulo . La forma normal hermítica de una red ideal tiene la forma [2] :
, donde yr es la raíz del módulo d.
Generación de claves [2]
es la inversa de , es decir , donde es la matriz identidad.
La clave pública será la matriz dada por los números r y d. La clave privada serán dos polinomios .
Cifrado [2]
Que sea necesario cifrar un poco
En la entrada está el bit b y la clave pública V. Se elige el vector de ruido cuyas componentes toman valores 0,1,-1. Luego se calcula el vector y el texto cifrado se calcula mediante la fórmula [2]
Aquí, para una base V del espacio L y un vector c dado, la expresión se usa para denotar un vector tal que [2]
Descifrado [2]
La entrada tiene un vector C y matrices V y W. El bit original b se obtiene como resultado de la operación:
Homomorfismo [2]
El cifrado es homomórfico con respecto a las operaciones de suma y multiplicación. Para realizar sumas o multiplicaciones de textos cifrados, es necesario realizar estas operaciones en la base V
Resistencia [3]
Gentry justificó la seguridad de su esquema con dos problemas: el problema de la complejidad del peor caso de criptografía en redes ideales y el problema de la suma de subconjuntos. Ambos problemas son -difíciles, por lo que la estabilidad del sistema se reduce a un problema -difícil.
Defectos
Una desventaja significativa de este esquema es que la ejecución de los cálculos conduce a la acumulación de errores [4] y, después de que se excede , se vuelve imposible descifrar el mensaje. Una de las soluciones a este problema es volver a cifrar los datos después de un cierto número de operaciones, sin embargo, esta opción reduce el rendimiento de los cálculos y requiere un acceso constante a la clave secreta [3] .
Se considera un esquema que es homomórfico con respecto a la operación de suma solamente [4] .
Generación de claves
Cifrado
La entrada contiene el texto a cifrar y la clave pública. El texto cifrado será la suma de un número arbitrario de elementos de la clave pública y el texto sin formato.
descifrado
La entrada contiene un texto cifrado y números y . El resto de dividir el texto cifrado por y por se calcula secuencialmente . El resultado será el mensaje original.
homomorfismo
Para obtener la suma de los textos y , basta con sumar los textos cifrados y realizar la operación de descifrado. En realidad:
La ventaja de este esquema es la facilidad de implementación y los bajos requerimientos de recursos. Las desventajas incluyen un conjunto finito de claves públicas y solo un homomorfismo parcial.
El primer intento de implementar el esquema Gentry fue realizado en 2010 por Smart y Werkauteren [5] . Para la implementación, eligieron un esquema que utiliza celosías ideales para un determinante simple. Tales estructuras están representadas por dos números enteros (independientemente de su tamaño). Smart y Wertkauteren propusieron un método de descifrado en el que la clave secreta es un solo número entero. Así, los científicos lograron implementar un circuito homomórfico homogéneo, pero no pudieron implementar la técnica Gentry en el caso de parámetros suficientemente grandes y, por lo tanto, no lograron obtener un circuito cargable y completamente homomórfico.
El principal obstáculo en esta implementación fue la dificultad de generar claves para esquemas homogéneos: en primer lugar, los esquemas deben generar una gran cantidad de "candidatos" para encontrar una clave para la cual el determinante es simple - hasta candidatos cuando se trabaja con estructuras de dimensión . Además, incluso después de encontrar la variante óptima, la complejidad de calcular la clave secreta correspondiente a esta estructura es igual, al menos para redes de dimensión . Por estas razones, los científicos no han podido generar claves dimensionales . Además, Smart y Vercauteren estimaron que el polinomio de descifrado tendrá un grado de varios cientos, y esto requiere el uso de una red de al menos dimensión para el procedimiento con sus parámetros , lo que supera significativamente las capacidades computacionales del procedimiento de generación de claves [ 2] .
En 2011, Craig Gentry, junto con Shai Halevi, presentó [2] una implementación práctica para un esquema de cifrado totalmente homomórfico, similar al utilizado en trabajos anteriores por Smart y Wertcauteren. La optimización principal consiste en un método de generación de claves para el cifrado básico relativamente homomórfico que no requiere una inversión polinomial completa. Esto reduce la complejidad asintótica de a cuando se trabaja con redes dimensionales (y en la práctica reduce el tiempo de cálculo de muchas horas a varios minutos).