stringtranslate.com

Redonda (criptografía)

En criptografía , una ronda o función circular es una transformación básica que se repite ( itera ) varias veces dentro del algoritmo. Dividir una función algorítmica grande en rondas simplifica tanto la implementación como el criptoanálisis . [1]

Por ejemplo, el cifrado que utiliza un cifrado simplificado de tres rondas se puede escribir como , donde C es el texto cifrado y P es el texto sin formato . Normalmente, las rondas se implementan utilizando la misma función, parametrizada por la constante de ronda y, para los cifrados de bloque , la clave de ronda del programa de claves . La parametrización es esencial para reducir la autosimilitud del cifrado, lo que podría dar lugar a ataques de deslizamiento . [1]

Aumentar el número de rondas "casi siempre" [2] protege contra el criptoanálisis diferencial y lineal , ya que para estas herramientas el esfuerzo crece exponencialmente con el número de rondas. Sin embargo, aumentar el número de rondas no siempre convierte los cifrados débiles en fuertes, ya que algunos ataques no dependen del número de rondas. [3]

La idea de un cifrado iterativo que utilice la aplicación repetida de operaciones simples no conmutativas que produzcan difusión y confusión se remonta a 1945, a la versión entonces secreta del trabajo de CE Shannon " Teoría de la comunicación de sistemas secretos "; [4] Shannon se inspiró en las transformaciones de mezcla utilizadas en el campo de la teoría de sistemas dinámicos (cf. mapa de herradura ). La mayoría de los cifrados modernos utilizan un diseño iterativo con un número de rondas elegido habitualmente entre 8 y 32 (con 64 e incluso 80 utilizados en hashes criptográficos ). [5]

En algunas descripciones de cifrados similares a Feistel , en particular la del RC5 , se utiliza el término " media vuelta " para definir la transformación de parte de los datos (una característica distintiva del diseño de Feistel). Esta operación corresponde a una vuelta completa en las descripciones tradicionales de los cifrados de Feistel (como DES ). [6]

Constantes redondas

La inserción de constantes dependientes de las rondas en el proceso de cifrado rompe la simetría entre rondas y, por lo tanto, frustra los ataques de deslizamiento más obvios. [3] La técnica es una característica estándar de la mayoría de los cifrados de bloques modernos. Sin embargo, una mala elección de constantes de ronda o interrelaciones no deseadas entre las constantes y otros componentes del cifrado aún podrían permitir ataques de deslizamiento (por ejemplo, atacar la versión inicial del modo de cifrado que preserva el formato FF3). [7]

Muchos cifrados ligeros utilizan una programación de claves muy simple: las claves circulares se obtienen añadiendo las constantes circulares a la clave de cifrado . Una mala elección de las constantes circulares en este caso puede hacer que el cifrado sea vulnerable a ataques invariantes; entre los cifrados que se rompen de esta manera se incluyen SCREAM y Midori64. [8]

Mejoramiento

Daemen y Rijmen afirman que uno de los objetivos de optimizar el cifrado es reducir la carga de trabajo general, el producto de la complejidad de las rondas y el número de rondas. Existen dos enfoques para abordar este objetivo: [2]

Cifras de ronda reducida

Las técnicas de criptoanálisis incluyen el uso de versiones de los cifrados con menos rondas que las especificadas por sus diseñadores. Dado que una sola ronda suele ser criptográficamente débil, muchos ataques que no funcionan contra la versión completa de los cifrados funcionarán con esas variantes de rondas reducidas . El resultado de ese ataque proporciona información valiosa sobre la solidez del algoritmo [9] , una ruptura típica del cifrado completo comienza como un éxito contra uno de rondas reducidas [10] .

Referencias

  1. ^ desde Aumasson 2017, pág. 56.
  2. ^ ab Daemen y Rijmen 2013, p. 74.
  3. ^ por Biryukov y Wagner 1999.
  4. ^ Shannon, Claude (1 de septiembre de 1945). "Una teoría matemática de la criptografía" (PDF) . pág. 97.
  5. ^ Biryukov 2005.
  6. ^ Kaliski y Yin 1995, pág. 173.
  7. ^ Dunkelman y col. 2020, pág. 252.
  8. ^ Beierle y otros 2017.
  9. ^ Robshaw 1995, pág. 23.
  10. ^ Schneier 2000, pág. 2.

Fuentes