stringtranslate.com

Cifrado determinista

Un esquema de cifrado determinista (a diferencia de un esquema de cifrado probabilístico ) es un criptosistema que siempre produce el mismo texto cifrado para un texto simple y una clave determinados , incluso en ejecuciones separadas del algoritmo de cifrado. Algunos ejemplos de algoritmos de cifrado determinista son el criptosistema RSA (sin relleno de cifrado) y muchos cifrados de bloque cuando se utilizan en modo ECB o con un vector de inicialización constante .

Fuga

El cifrado determinista puede filtrar información a un espía, que puede reconocer textos cifrados conocidos. Por ejemplo, cuando un adversario se entera de que un texto cifrado determinado corresponde a un mensaje interesante, puede aprender algo cada vez que se transmite ese texto cifrado. Para obtener información sobre el significado de varios textos cifrados, un adversario puede realizar un análisis estadístico de los mensajes transmitidos a través de un canal cifrado, o intentar correlacionar los textos cifrados con acciones observadas (por ejemplo, notar que un texto cifrado determinado siempre se recibe inmediatamente antes de una inmersión submarina). Esta preocupación es particularmente grave en el caso de la criptografía de clave pública , donde cualquier parte puede cifrar mensajes elegidos utilizando una clave de cifrado pública. En este caso, el adversario puede construir un gran "diccionario" de pares útiles de texto simple/texto cifrado, y luego observar el canal cifrado para encontrar textos cifrados coincidentes.

Aplicaciones

Si bien los esquemas de cifrado deterministas nunca pueden ser semánticamente seguros , tienen algunas ventajas sobre los esquemas probabilísticos.

Búsqueda de datos cifrados en bases de datos

Una de las principales motivaciones para el uso del cifrado determinista es la búsqueda eficiente de datos cifrados. Supongamos que un cliente desea subcontratar una base de datos a un proveedor de servicios de bases de datos que posiblemente no sea de confianza. Si cada entrada está cifrada utilizando un criptosistema de clave pública, cualquiera puede añadir datos a la base de datos, y sólo el "receptor" distinguido que tiene la clave privada puede descifrar las entradas de la base de datos. Sin embargo, si el receptor desea buscar un registro específico en la base de datos, esto se vuelve muy difícil. Existen algunos esquemas de cifrado de clave pública que permiten la búsqueda de palabras clave, [1] [2] [3] sin embargo, todos estos esquemas requieren un tiempo de búsqueda lineal en el tamaño de la base de datos. Si las entradas de la base de datos se cifraran con un esquema determinista y se ordenaran, entonces se podría recuperar un campo específico de la base de datos en tiempo logarítmico.

Seguridad

Suponiendo que se va a utilizar un esquema de cifrado determinista, es importante entender cuál es el nivel máximo de seguridad que se puede garantizar.

Varios trabajos se han centrado en este problema exacto. El primer trabajo que definió rigurosamente la seguridad para un esquema determinista fue en CRYPTO 2007. [4] Este trabajo proporcionó definiciones de seguridad bastante sólidas (aunque más débiles que la seguridad semántica) y proporcionó construcciones en el modelo de oráculo aleatorio . Dos trabajos de seguimiento aparecieron el año siguiente en CRYPTO 2008, que proporcionaban equivalencias de definiciones y construcciones sin oráculos aleatorios. [5] [6]

Alternativas al cifrado determinista

Para contrarrestar este problema, los criptógrafos propusieron la noción de cifrado "aleatorio" o probabilístico . Bajo estos esquemas, un texto simple dado puede cifrarse en uno de un conjunto muy grande de posibles textos cifrados, elegidos aleatoriamente durante el proceso de cifrado. Con garantías de seguridad suficientemente fuertes, los ataques propuestos anteriormente se vuelven inviables, ya que el adversario no podrá correlacionar dos cifrados del mismo mensaje, ni correlacionar un mensaje con su texto cifrado, incluso si tiene acceso a la clave de cifrado pública. Esta garantía se conoce como seguridad semántica o indistinguibilidad de textos cifrados , y tiene varias definiciones según las capacidades asumidas del atacante (ver seguridad semántica ).

Véase también

Referencias

  1. ^ Boneh, Dan; Di Crescenzo, Giovanni; Ostrovsky, Rafail; Persiano, Giuseppe (2004). "Cifrado de clave pública con búsqueda de palabras clave" (PDF) . Avances en criptología - EUROCRYPT 2004. Apuntes de clase en informática. Vol. 3027. págs. 506–522. doi :10.1007/978-3-540-24676-3_30. ISBN 978-3-540-21935-4.
  2. ^ Gu, Chunxiang; Zhu, Yuefei; Zhang, Yajuan (2006). "Cifrado de clave pública eficiente con esquemas de búsqueda de palabras clave a partir de emparejamientos" (PDF) . Consultado el 3 de marzo de 2015 . {{cite journal}}: Requiere citar revista |journal=( ayuda )
  3. ^ Michel, Abdalla; et al. (2005). "Revisión del cifrado con capacidad de búsqueda: propiedades de consistencia, relación con el cifrado anónimo y extensiones". Crypto 2005 : 205–222.
  4. ^ Bellare, Mihir; Boldyreva, Alexandra; O'Neill, Adam (2007). "Cifrado determinista y eficientemente buscable". Avances en criptología - CRYPTO 2007. Apuntes de clase en informática. Vol. 4622. págs. 535–552. doi : 10.1007/978-3-540-74143-5_30 . ISBN . 978-3-540-74142-8.
  5. ^ Boldyreva, Alexandra; Fehr, Serge; O'Neill, Adam (2008). "Sobre nociones de seguridad para cifrado determinista y construcciones eficientes sin oráculos aleatorios". En Wagner, David (ed.). Avances en criptología – CRYPTO 2008. Apuntes de clase en informática. Vol. 5157. Berlín, Heidelberg: Springer. págs. 335–359. doi : 10.1007/978-3-540-85174-5_19 . ISBN . 978-3-540-85174-5.
  6. ^ Bellare, Mihir; Fischlin, Marc; O'Neill, Adam; Ristenpart, Thomas (2008). "Cifrado determinista: equivalencias definicionales y construcciones sin oráculos aleatorios". En Wagner, David (ed.). Avances en criptología – CRYPTO 2008. Apuntes de clase en informática. Vol. 5157. Berlín, Heidelberg: Springer. págs. 360–378. doi : 10.1007/978-3-540-85174-5_20 . ISBN . 978-3-540-85174-5.