stringtranslate.com

Ataque de texto simple elegido

Un ataque de texto simple elegido ( CPA ) es un modelo de ataque para el criptoanálisis que presupone que el atacante puede obtener los textos cifrados de textos simples arbitrarios . [1] El objetivo del ataque es obtener información que reduzca la seguridad del esquema de cifrado . [2]

Los cifrados modernos tienen como objetivo proporcionar seguridad semántica, también conocida como indistinguibilidad del texto cifrado ante ataques de texto simple elegido , y por lo tanto, por diseño, generalmente son inmunes a los ataques de texto simple elegido si se implementan correctamente.

Introducción

En un ataque de texto simple elegido, el adversario puede (posiblemente de forma adaptativa ) solicitar los textos cifrados de mensajes de texto simple arbitrarios. Esto se formaliza permitiendo que el adversario interactúe con un oráculo de cifrado , visto como una caja negra . El objetivo del atacante es revelar toda o parte de la clave de cifrado secreta.

En la práctica, puede parecer inviable que un atacante pueda obtener textos cifrados de textos simples determinados. Sin embargo, la criptografía moderna se implementa en software o hardware y se utiliza para una amplia gama de aplicaciones; en muchos casos, un ataque de texto simple elegido suele ser muy factible (véase también En la práctica). Los ataques de texto simple elegido se vuelven extremadamente importantes en el contexto de la criptografía de clave pública , donde la clave de cifrado es pública y, por lo tanto, los atacantes pueden cifrar cualquier texto simple que elijan.

Diferentes formas

Existen dos formas de ataques de texto simple elegido:

Método general de un ataque

Un ataque general por lotes de texto simple elegido se lleva a cabo de la siguiente manera [ verificación fallida ] :

  1. El atacante puede elegir n textos sin formato. (Este parámetro n se especifica como parte del modelo de ataque y puede estar o no limitado).
  2. Luego, el atacante envía estos n textos simples al oráculo de cifrado.
  3. Luego, el oráculo de cifrado cifrará los textos simples del atacante y se los enviará de vuelta.
  4. El atacante recibe n textos cifrados del oráculo, de tal manera que el atacante sabe qué texto cifrado corresponde a cada texto simple.
  5. Basándose en los pares de texto simple y texto cifrado, el atacante puede intentar extraer la clave utilizada por el oráculo para codificar los textos simples. Como en este tipo de ataque el atacante tiene libertad para modificar el texto simple según sus necesidades, la complejidad del ataque puede verse reducida.

Considere la siguiente extensión de la situación anterior. Después del último paso,

  1. El adversario genera dos textos simples m 0 y m 1 .
  2. Se elige un bit b de forma uniforme y aleatoria .
  3. El adversario recibe el cifrado de m b , intenta "adivinar" qué texto simple recibió y genera un bit b' .

Un cifrado tiene encriptaciones indistinguibles bajo un ataque de texto simple elegido si después de ejecutar el experimento anterior el adversario no puede adivinar correctamente ( b = b' ) con una probabilidad no despreciable mejor que 1/2. [3]

Ejemplos

Los siguientes ejemplos demuestran cómo algunos cifrados que cumplen con otras definiciones de seguridad pueden romperse con un ataque de texto simple elegido.

Cifrado César

El siguiente ataque al cifrado César permite la recuperación completa de la clave secreta:

  1. Supongamos que el adversario envía el mensaje: Attack at dawn,
  2. y el oráculo vuelve Nggnpx ng qnja.
  3. El adversario puede entonces recuperar la clave de la misma manera que en el caso del cifrado César. El adversario podría deducir las sustituciones AN , TG y así sucesivamente. Esto llevaría al adversario a determinar que 13 era la clave utilizada en el cifrado César.

Con metodologías de cifrado más complejas o intrincadas, el método de descifrado requiere más recursos; sin embargo, el concepto central sigue siendo relativamente el mismo.

Libretas de un solo uso

El siguiente ataque a un block de un solo uso permite recuperar por completo la clave secreta. Supongamos que la longitud del mensaje y la longitud de la clave son iguales a n .

  1. El adversario envía una cadena compuesta por n ceros al oráculo.
  2. El oráculo devuelve la operación exclusiva bit a bit de la clave con la cadena de ceros.
  3. La cadena devuelta por el oráculo es la clave secreta.

Si bien el block de un solo uso se utiliza como ejemplo de un criptosistema seguro en términos de información , esta seguridad solo se cumple en el caso de definiciones de seguridad más débiles que la seguridad CPA. Esto se debe a que, según la definición formal de seguridad CPA, el oráculo de cifrado no tiene estado. Esta vulnerabilidad puede no ser aplicable a todas las implementaciones prácticas: el block de un solo uso puede volverse seguro si se evita la reutilización de claves (de ahí el nombre de block de "un solo uso").

En la práctica

En la Segunda Guerra Mundial, los criptoanalistas de la Marina de los EE. UU. descubrieron que Japón estaba planeando atacar una ubicación denominada "AF". Creían que "AF" podría ser la isla Midway , porque otras ubicaciones en las islas hawaianas tenían palabras clave que comenzaban con "A". Para probar su hipótesis de que "AF" correspondía a "Midway Island", pidieron a las fuerzas estadounidenses en Midway que enviaran un mensaje de texto sin formato sobre los suministros bajos. Los japoneses interceptaron el mensaje e inmediatamente informaron a sus superiores que "AF" tenía poco agua, lo que confirmó la hipótesis de la Marina y les permitió posicionar su fuerza para ganar la batalla . [3] [4]

También durante la Segunda Guerra Mundial , los descifradores de códigos aliados en Bletchley Park a veces pedían a la Royal Air Force que colocara minas en una posición que no tuviera abreviaturas o alternativas en la referencia de cuadrícula del sistema naval alemán. La esperanza era que los alemanes, al ver las minas, usaran una máquina Enigma para cifrar un mensaje de advertencia sobre las minas y un mensaje de "todo despejado" después de que fueran removidas, dando a los aliados suficiente información sobre el mensaje para descifrar el Enigma naval alemán. Este proceso de plantar un texto claro conocido se llamaba jardinería . [5] Los descifradores de códigos aliados también ayudaron a crear mensajes enviados por el agente doble Juan Pujol García , cuyos informes de radio cifrados fueron recibidos en Madrid, descifrados manualmente y luego reencriptados con una máquina Enigma para su transmisión a Berlín. [6] Esto ayudó a los descifradores de códigos a descifrar el código utilizado en la segunda etapa, habiendo proporcionado el texto original . [7]

En la actualidad, los ataques de texto simple elegido (CPA) se utilizan a menudo para romper cifrados simétricos . Para que se considere seguro mediante CPA, el cifrado simétrico no debe ser vulnerable a ataques de texto simple elegido. Por lo tanto, es importante que los implementadores de cifrados simétricos comprendan cómo un atacante intentaría romper su cifrado y realizar mejoras relevantes.

En algunos ataques de texto simple elegido, es posible que el atacante solo deba elegir una pequeña parte del texto simple; dichos ataques se conocen como ataques de inyección de texto simple.

Relación con otros ataques

Un ataque de texto simple elegido es más poderoso que un ataque de texto simple conocido , porque el atacante puede apuntar directamente a términos o patrones específicos sin tener que esperar a que aparezcan de forma natural, lo que permite una recopilación más rápida de datos relevantes para el criptoanálisis. Por lo tanto, cualquier cifrado que evite ataques de texto simple elegido también es seguro contra ataques de texto simple conocido y solo de texto cifrado .

Sin embargo, un ataque de texto simple elegido es menos poderoso que un ataque de texto cifrado elegido , donde el atacante puede obtener los textos simples de textos cifrados arbitrarios. Un atacante CCA a veces puede romper un sistema seguro CPA. [3] Por ejemplo, el cifrado El Gamal es seguro contra ataques de texto simple elegido, pero vulnerable a ataques de texto cifrado elegido porque es incondicionalmente maleable .

Véase también

Referencias

  1. ^ Ross Anderson, Ingeniería de seguridad: una guía para construir sistemas distribuidos confiables . Primera edición (2001): http://www.cl.cam.ac.uk/~rja14/book.html
  2. ^ Barrera, John Fredy; Vargas, Carlos; Tebaldi, Myrian; Torroba, Roberto (15 de octubre de 2010). "Ataque de texto claro elegido en un sistema de cifrado de correlador de transformada conjunta". Optics Communications . 283 (20): 3917–3921. Bibcode :2010OptCo.283.3917B. doi :10.1016/j.optcom.2010.06.009. ISSN  0030-4018.
  3. ^ abc Katz, Jonathan ; Lindell, Yehuda (2007). Introducción a la criptografía moderna: principios y protocolos . Boca Raton: Chapman and Hall/CRC. ISBN 978-1584885511.OCLC 893721520  .
  4. ^ Weadon, Patrick D. "Cómo la criptología permitió a los Estados Unidos cambiar el rumbo de la Guerra del Pacífico". www.navy.mil . Marina de los EE. UU. Archivado desde el original el 31 de enero de 2015 . Consultado el 19 de febrero de 2015 .
  5. ^ Morris, Christopher (1993), "Los pobres parientes de Navy Ultra", en Hinsley, FH ; Stripp, Alan (eds.), Codebreakers: The inside story of Bletchley Park , Oxford: Oxford University Press, pág. 235, ISBN 978-0-19-280132-6
  6. ^ Kelly, Jon (27 de enero de 2011). "El trozo de papel que engañó a Hitler". BBC . Consultado el 1 de enero de 2012. Los nazis creían que Pujol, a quien llamaban en código Alaric Arabel, era uno de sus activos más preciados .
  7. ^ Seaman (2004). "El primer código que los alemanes le dieron a Garbo para sus comunicaciones inalámbricas resultó ser el mismo código que se utilizaba en los circuitos alemanes"
Escuche este artículo ( 11 minutos )
Icono de Wikipedia hablado
Este archivo de audio se creó a partir de una revisión de este artículo con fecha del 28 de diciembre de 2023 y no refleja ediciones posteriores. ( 28/12/2023 )