stringtranslate.com

Ataque adaptativo de texto cifrado elegido

Un ataque de texto cifrado elegido adaptativo (abreviado como CCA2 ) es una forma interactiva de ataque de texto cifrado elegido en el que un atacante primero envía una cantidad de textos cifrados para ser descifrados elegidos de forma adaptativa y luego usa los resultados para distinguir un texto cifrado objetivo sin consultar al oráculo. en el texto cifrado del desafío. En un ataque adaptativo, al atacante se le permite además realizar consultas adaptativas después de que se revela el objetivo (pero la consulta del objetivo no está permitida). Está extendiendo el ataque de texto cifrado elegido indiferente (no adaptativo) (CCA1) donde no se permite la segunda etapa de consultas adaptativas. Charles Rackoff y Dan Simon definieron CCA2 y sugirieron un sistema basado en la definición y el sistema no adaptativos de CCA1 de Moni Naor y Moti Yung (que fue el primer tratamiento de la inmunidad a los ataques de texto cifrado elegidos de los sistemas de clave pública).

En ciertos entornos prácticos, el objetivo de este ataque es revelar gradualmente información sobre un mensaje cifrado o sobre la propia clave de descifrado. Para los sistemas de clave pública , los textos cifrados de elección adaptativa son generalmente aplicables sólo cuando tienen la propiedad de maleabilidad del texto cifrado , es decir, un texto cifrado puede modificarse de maneras específicas que tendrán un efecto predecible en el descifrado de ese mensaje.

Ataques prácticos

Los ataques de texto cifrado de elección adaptativa tal vez se consideraron una preocupación teórica, pero no se manifestaron en la práctica, hasta 1998, cuando Daniel Bleichenbacher (entonces de Bell Laboratories ) demostró un ataque práctico contra sistemas que usaban cifrado RSA en conjunto con el Función de codificación PKCS#1 v1.5 , incluida una versión del protocolo Secure Sockets Layer (SSL) utilizado por miles de servidores web en ese momento. [1]

Los ataques Bleichenbacher, también conocidos como el ataque del millón de mensajes, aprovecharon fallas dentro de la función de relleno PKCS #1 v1.5 para revelar gradualmente el contenido de un mensaje cifrado RSA. Bajo esta función de relleno, los textos sin formato rellenos tienen un formato fijo que deben seguir. Si el dispositivo de descifrado (por ejemplo, un servidor web equipado con SSL) revela de alguna manera si el relleno es válido, también sirve como un "oráculo" que revela información sobre la clave secreta. Encontrar la clave completa requiere enviar varios millones de textos cifrados de prueba al objetivo. [2] En términos prácticos, esto significa que una clave de sesión SSL puede quedar expuesta en un período de tiempo razonable, tal vez un día o menos.

Con ligeras variaciones, esta vulnerabilidad todavía existe en muchos servidores modernos, bajo el nuevo nombre "Return Of Bleichenbacher's Oracle Threat" (ROBOT). [3]

Previniendo ataques

Para evitar ataques de texto cifrado elegido de forma adaptativa, es necesario utilizar un esquema de cifrado o codificación que limite la maleabilidad del texto cifrado y una prueba de seguridad del sistema. Después del desarrollo teórico y básico de los sistemas seguros CCA, se han propuesto varios sistemas en el modelo Random Oracle: el estándar más común para el cifrado RSA es el relleno de cifrado asimétrico óptimo (OAEP). A diferencia de los esquemas improvisados, como el relleno utilizado en las primeras versiones de PKCS#1, se ha demostrado que OAEP es seguro en el modelo aleatorio de Oracle . [4] OAEP se incorporó a PKCS#1 a partir de la versión 2.0 publicada en 1998 como el ahora recomendado esquema de codificación, aunque el esquema anterior aún es compatible, pero no se recomienda para nuevas aplicaciones. [5] Sin embargo, el estándar de oro para la seguridad es mostrar que el sistema es seguro sin depender de la idealización de Random Oracle. [6]

Modelo matemático

En la criptografía de teoría de la complejidad, la seguridad contra ataques de texto cifrado elegido adaptativo se modela comúnmente utilizando la indistinguibilidad del texto cifrado (IND-CCA2).

Referencias

  1. ^ Bleichenbacher, Daniel (23 al 27 de agosto de 1998). Ataques de texto cifrado elegidos contra protocolos basados ​​en el estándar de cifrado RSA PKCS #1 (PDF) . CRIPTO '98. Santa Bárbara, California: Springer Berlín Heidelberg. págs. 1–12. doi : 10.1007/BFb0055716 . ISBN 978-3-540-64892-5.
  2. ^ Pornin, Thomas (2014). "¿Puedes explicar el ataque CCA de Bleichenbacher al PKCS#1 v1.5?". Intercambio de pila de criptografía .
  3. ^ Hanno Böck; Juraj Somorovsky; Craig joven. "Ataque de ROBOT" . Consultado el 27 de febrero de 2018 .
  4. ^ Fujisaki, Eiichiro; Okamoto, Tatsuaki; Pointcheval, David; Stern, Jacques (2004). "RSA-OAEP es segura según el supuesto de RSA" (PDF) . Revista de criptología . 17 (2): 81–104. CiteSeerX 10.1.1.11.7519 . doi :10.1007/s00145-002-0204-y. S2CID  218582909 . Consultado el 12 de enero de 2009 . 
  5. ^ Kaliski, B.; Staddon, J. (octubre de 1998). PKCS #1: Especificaciones de criptografía RSA Versión 2.0. IETF . doi : 10.17487/RFC2437 . RFC 2437 . Consultado el 20 de febrero de 2019 .
  6. ^ Katz, Jonathan; Lindell, Yehuda (2015). Introducción a la criptografía moderna (2 ed.). Boca Ratón: Chapman & Hall/CRC. págs. 174–175, 179–181. ISBN 978-1-4665-7027-6.