El ataque de texto sin formato elegido ( CPA ) es uno de los principales métodos de ataque criptoanalítico . El criptoanalista tiene una cierta cantidad de textos sin formato y los correspondientes textos cifrados , además, tiene la capacidad de cifrar varios textos sin formato preseleccionados [1] .
Un criptoanalista , según el principio de Kerckhoff , tiene toda la información sobre el sistema de encriptación utilizado, excepto un determinado conjunto de parámetros llamado clave . La tarea del criptoanalista es encontrar la clave o crear un algoritmo que permita descifrar cualquier mensaje cifrado con esta clave.
Dado:
donde el texto claro elegido por el criptoanalista, el texto cifrado, la función de cifrado, la clave.
Obtener: Cualquiera , o algoritmo cómo llegar desde [1]
La capacidad de realizar un ataque de texto sin formato elegido es bastante común. Por ejemplo, un atacante podría sobornar a alguien para cifrar un mensaje seleccionado. También es posible la siguiente situación: el atacante envía un mensaje al embajador de un determinado país, y este lo envía a su tierra natal en forma encriptada [2] .
El ataque de texto sin formato elegido se refiere a ataques activos en criptosistemas. Dichos ataques violan la integridad y confidencialidad de la información transmitida [3] .
La figura 1 muestra un diagrama de un ataque basado en el texto sin formato elegido. El atacante (A) recibe el texto cifrado del usuario (C). La tarea del atacante es "adivinar" el texto sin formato . Dado que el atacante tiene acceso al bloque de cifrado , tiene la capacidad de cifrar sus mensajes y analizar los textos cifrados recibidos. . Como resultado, el atacante recoge el mensaje y lo reenvía al usuario.
Hay dos tipos de ataques basados en el texto sin formato elegido:
Según Bruce Schneier , existen 4 formas principales de ataque criptoanalítico [1] :
En el caso de un ataque basado en texto cifrado, el criptoanalista solo tiene acceso al texto cifrado. Este es el tipo de ataque más difícil debido a la poca información disponible.
En un ataque de texto sin formato conocido, el criptoanalista conoce tanto el texto sin formato como el texto cifrado. Este tipo de ataque es más efectivo que un ataque basado en texto cifrado debido a la mayor cantidad de información conocida sobre el criptosistema.
Un ataque de texto sin formato elegido es un tipo de ataque más potente que un ataque de texto sin formato conocido. La capacidad de preseleccionar textos sin formato brinda más opciones para extraer la clave del sistema. También es cierto que si un criptosistema es vulnerable a un ataque de texto sin formato conocido, también es vulnerable a un ataque de texto sin formato elegido [5] .
El ataque de texto sin formato emparejado se utilizó durante la Segunda Guerra Mundial .
En 1942, los criptoanalistas de la Marina de los EE. UU. interceptaron una orden encriptada del comando japonés. Habiendo descifrado parte del mensaje, los criptoanalistas estadounidenses se enteraron del inminente ataque al misterioso "AF", pero no pudieron averiguar el lugar del ataque. Asumiendo que Midway Island era el objetivo más probable para los japoneses , los estadounidenses intentaron un truco. Redactaron un informe de que la isla carecía de agua dulce y la enviaron por un canal sin protección. Unos días después, los oficiales de inteligencia estadounidenses interceptaron un texto cifrado japonés que informaba que había poca agua dulce en el AF. Por lo tanto, el comando estadounidense sabía de antemano sobre el próximo ataque al atolón de Midway [6] .
Los criptoanalistas británicos de Bletchley Park utilizaron con éxito un ataque de texto sin formato elegido para descifrar la correspondencia alemana. Los británicos provocaron al enemigo a usar ciertas palabras y nombres en los mensajes de texto. Por ejemplo, si los alemanes limpiaron recientemente una sección de las aguas costeras de minas, los servicios de inteligencia británicos podrían anunciar que el área fue nuevamente minada. Esto provocó una corriente de mensajes encriptados del comando alemán, que incluían la palabra "minas" y el nombre del territorio. Por lo tanto, los británicos pudieron captar texto sin formato y analizar textos cifrados con bastante eficacia para descifrar los cifrados alemanes. Este ataque se puede calificar como un ataque de texto sin formato elegido de forma adaptativa , ya que los criptoanalistas británicos podrían elegir el siguiente texto sin formato para cifrar en función de los resultados ya obtenidos [7] .
Considere un ejemplo simple de un ataque a un cifrado afín usando caracteres latinos de la A a la Z.
A | B | C | D | mi | F | GRAMO | H | yo | j | k | L | METRO | norte | O | PAGS | q | R | S | T | tu | V | W | X | Y | Z |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | una | 2 | 3 | cuatro | 5 | 6 | 7 | ocho | 9 | diez | once | 12 | 13 | catorce | quince | dieciséis | 17 | Dieciocho | 19 | veinte | 21 | 22 | 23 | 24 | 25 |
Función de cifrado:
El criptoanalista realiza un ataque basado en el texto sin formato elegido. El texto sin formato elegido es "HAHAHA", el texto cifrado correspondiente es "NONONO". El objetivo del criptoanalista es encontrar la forma explícita de la función de cifrado, es decir, calcular los coeficientes y .
Usando el par resultante de texto simple-texto cifrado, compondremos un sistema de ecuaciones:
Resolviendo el sistema, encontramos:
Función de cifrado: [8]
Criptoanálisis diferencialEl ataque de texto sin formato elegido se utiliza en un método de criptoanálisis diferencial propuesto por los criptoanalistas israelíes Eli Biham y Adi Shamir en 1990 para romper el criptosistema DES . El método se basa en el estudio de textos cifrados, cuyos textos sin formato tienen ciertas diferencias. Al analizar la evolución de las diferencias del texto cifrado durante las rondas DES, se determina una lista de claves posibles y se asigna una probabilidad a cada clave posible. En el proceso de análisis de los siguientes pares de textos cifrados, una de las claves se convertirá en la más probable [9] . Posteriormente, el método de criptoanálisis diferencial se extendió a criptosistemas como FEAL , Khafre , Lucifer , LOKI y otros [10] [11] .
Sea , textos sin formato coincidentes, , textos cifrados correspondientes. La diferencia entre textos sin formato y textos cifrados está determinada por la operación XOR : para describir posibles cambios en el valor durante el paso de las etapas DES, se introduce el concepto de una característica redonda , compuesta por diferencias en texto sin formato , texto cifrado y un conjunto de diferencias redondas (diferencias en los textos cifrados después de cada ronda intermedia) . A cada característica se le asigna la probabilidad de que un par aleatorio de textos sin formato con una diferencia produzca diferencias de ronda y diferencias de texto cifrado correspondientes a la característica después de pasar por la ronda de cifrado correspondiente. Un par de textos sin formato cuyo paso a través de una ronda DES está exactamente descrito por la característica se denomina "par correcto" ; de lo contrario, se denomina "par incorrecto". [9]
Para determinar la clave, se realiza un ataque basado en el texto sin formato elegido. En la etapa de recopilación de datos, el criptoanalista envía para el cifrado una gran cantidad de pares de textos sin formato con ciertas diferencias correspondientes a la característica con probabilidad (es decir, entre todos los pares de textos sin formato hay pares correctos). Luego, en la etapa de análisis de datos , se determina un conjunto de posibles claves redondas, para cada posible clave se calculan las diferencias de los textos cifrados correspondientes. Durante la última ronda de cifrado, se produce una enumeración completa de posibles claves. Para claves de ronda incorrectas, la probabilidad de una diferencia en los textos cifrados correspondientes a la característica será muy pequeña, para una clave de ronda correcta, la probabilidad será del orden de magnitud o superior. De esta manera puede determinar la clave de sistema correcta [9] [12] .
Cabe señalar que el método de criptoanálisis diferencial es poco práctico debido a los altos requisitos de tiempo y volumen de datos. Por ejemplo, descifrar un DES de 16 rondas requiere operaciones y textos sin formato coincidentes [9] .
Criptoanálisis linealEn 1993, el criptoanalista japonés Mitsuru Matsui propuso un método de criptoanálisis lineal para romper cifrados de bloque como DES. El método se basa en la construcción de relaciones lineales entre texto plano, texto cifrado y clave :
donde están los enésimos bits del texto, el texto cifrado y la clave, respectivamente. Tales relaciones se llaman aproximaciones lineales.
La esencia del método es calcular la probabilidad de ocurrencia de aproximaciones lineales. Si la probabilidad es diferente de , entonces es posible extraer información sobre la clave usando pares de texto simple-texto cifrado. Inicialmente, para cada ronda individual, se encuentra una aproximación lineal con la mayor probabilidad de sesgo. Luego, las aproximaciones redondas se combinan en una aproximación lineal general del criptosistema y, con la ayuda de pares de texto simple-texto cifrado, se hace una suposición sobre los valores de los bits clave [13] .
Inicialmente, el método de criptoanálisis lineal utilizaba un conocido ataque de texto sin formato. Por ejemplo, se necesitaron textos sin formato conocidos y 50 días para descifrar un DES de 16 rondas [13] . En 2000, Lars Knudsen propuso una variante de criptoanálisis lineal basada en textos sin formato elegidos: se necesitaban textos sin formato seleccionados para abrir 12 bits de la clave [14] .
El ataque de texto sin formato elegido se puede utilizar para romper criptosistemas asimétricos. En dichos sistemas, la clave pública está disponible para cualquier usuario, lo que le da al criptoanalista un control completo sobre el algoritmo de cifrado. Por lo tanto, siempre es posible organizar un ataque contra criptosistemas de clave pública basándose en el texto sin formato elegido [15] . Por ejemplo, si un atacante ha interceptado un texto cifrado , para descifrarlo basta con recoger otro mensaje y cifrarlo utilizando la clave pública . Si , se hace un intento más [16] .
Cifrado probabilísticoPor lo general, los criptosistemas asimétricos están diseñados para resistir ataques utilizando textos sin formato elegidos [15] . Por ejemplo, las defensas del criptosistema RSA contra ataques basados en el texto sin formato elegido se basan en la dificultad de calcular la raíz del texto cifrado mediante un módulo entero compuesto [17] . Otra forma de eliminar las fugas de información en los criptosistemas de clave pública es el cifrado probabilístico propuesto por Shafi Goldwasser y Silvio Micali . La idea principal del cifrado probabilístico es hacer coincidir varios textos cifrados seleccionados al azar con el mismo texto sin formato . Por lo tanto, si un criptoanalista trata de adivinar el texto sin formato P para descifrar , obtendrá un texto cifrado completamente diferente y no podrá verificar la exactitud de su suposición [18] .
Ataque al criptosistema RSAA pesar de la seguridad del criptosistema RSA contra los ataques de texto elegidos, hay una serie de vulnerabilidades que permiten a un criptoanalista descifrar el texto cifrado. Considere el siguiente algoritmo para atacar un sistema de firma electrónica basado en RSA propuesto por George David en 1982. El ataque se realiza bajo el supuesto de que el criptoanalista ha interceptado el texto cifrado . El objetivo del criptoanalista es obtener un mensaje abierto . Para llevar a cabo un ataque, un criptoanalista necesita poder firmar cualquier mensaje que elija [19] [20] .
Este método no le permite abrir el criptosistema en el sentido tradicional, es decir, obtener una clave privada, pero el criptoanalista puede descifrar un mensaje específico. Por lo tanto, este ataque es más débil que el ataque de texto sin formato emparejado para criptosistemas simétricos, que le permite obtener toda la información sobre el criptosistema si tiene éxito [20] .