Articulo de referencia

Streebog

266 [[time complexity]]. "}},"i":0}}]}"> Streebog ( en ruso : Стрибог ) es una función hash criptográfica definida en la norma nacional rusa GOST R 34.11-2012 , Tecnología de la...

Streebog ( en ruso : Стрибог ) es una función hash criptográfica definida en la norma nacional rusa GOST R 34.11-2012 , Tecnología de la Información – Seguridad de la Información Criptográfica – Función Hash . Fue creada para reemplazar una función hash GOST obsoleta definida en la antigua norma GOST R 34.11-94, y como respuesta asimétrica a la competencia SHA-3 del Instituto Nacional de Estándares y Tecnología de EE. UU . [ 2 ] La función también se describe en la RFC 6986 y es una de las funciones hash en la ISO/IEC 10118-3:2018. [ 3 ]

Descripción

Streebog opera en bloques de 512 bits de la entrada, utilizando la construcción Merkle-Damgård para manejar entradas de tamaño arbitrario. [ 4 ]

La estructura de alto nivel de la nueva función hash se asemeja a la de GOST R 34.11-94; sin embargo, la función de compresión se modificó significativamente. [ 5 ] La función de compresión opera en modo Miyaguchi-Preneel y emplea un cifrado tipo AES de 12 rondas con un bloque de 512 bits y una clave de 512 bits. (Utiliza una matriz de bytes de 8×8 en lugar de la matriz de 4×4 de AES).

Streebog-256 utiliza un estado inicial diferente al de Streebog-512 y trunca el hash de salida, pero por lo demás es idéntico.

La función recibió el nombre de Streebog en honor a Stribog , el dios del viento impetuoso en la mitología eslava antigua, [ 2 ] y a menudo se la conoce por este nombre, aunque no se menciona explícitamente en el texto del estándar. [ 6 ]

Ejemplos de hashes de Streebog

Valores hash de una cadena vacía.

Streebog-256("") 0x3f539a213e97c802cc229d474c6aa32a825a360b2a933a949fd925208d9ce1bb Streebog-512("") 0x8e945da209aa869f0455928529bcae4679e9873ab707b55315f56ceb98bef0a7\ 362f715528356ee83cda5f2aac4c6ad2ba3a715c1bcd81cb8e9f90bf4c1c1a8a

Incluso un pequeño cambio en el mensaje dará como resultado (con una probabilidad abrumadora) un hash mayormente diferente, debido al efecto avalancha . Por ejemplo, agregar un punto al final de la oración:

Streebog-256 (" El rápido zorro marrón salta sobre el perro perezoso ") 0x 3e7dea7f2384b6c5a3d0e24aaa29c05e89ddd762145030ec22c71a6db8b2c1f4 Streebog-256 (" El rápido zorro marrón salta sobre el perro perezoso .") 0x36816a824dcbe7d6171aa58500741f2ea2757ae2e1784ab72c5c3c6c198d71da Streebog-512 (" El rápido zorro marrón salta sobre el perro perezoso ") 0x d2b793a0bb6cb5904828b5b6dcfb443bb8f33efc06ad09368878ae4cdc8245b9\ 7e60802469bed1e7c21a64ff0b179a6a1e0bb74d92965450a0adab69162c00fe Streebog-512 (" El rápido zorro marrón salta sobre el perro perezoso .") 0x fe0c42f267d921f940faa72bd9fcf84f9f1bd7e9d055e9816e4c2ace1ec83be8 \ 2d2957cd59b86e123d8f5adee80b3ca08a017599a9fc1a14d940cf87c77df070

Criptoanálisis

En 2013, el Comité Técnico Ruso de Normalización "Criptografía y Mecanismos de Seguridad" (TC 26), con la participación de la Academia de Criptografía de la Federación Rusa, declaró un concurso abierto para el criptoanálisis de la función hash Streebog, [ 7 ] lo que atrajo la atención internacional hacia la función.

Ma, et al ., describen un ataque de preimagen que requiere 2 496 de tiempo y 2 64 de memoria o 2 504 de tiempo y 2 11 de memoria para encontrar una única preimagen de GOST-512 reducida a 6 rondas. [ 8 ] También describen un ataque de colisión con una complejidad temporal de 2 181 y un requerimiento de memoria de 2 64 en el mismo artículo.

Guo, et al ., describen un segundo ataque de preimagen en Streebog-512 completo con una complejidad temporal total equivalente a 2 266 evaluaciones de la función de compresión, si el mensaje tiene más de 2 259 bloques. [ 1 ]

AlTawy y Youssef publicaron un ataque a una versión modificada de Streebog con diferentes constantes de ronda. [ 9 ] Si bien este ataque puede no tener un impacto directo en la seguridad de la función hash Streebog original, planteó una pregunta sobre el origen de los parámetros utilizados en la función. Los diseñadores publicaron un artículo explicando que se trata de constantes pseudoaleatorias generadas con una función hash similar a Streebog, a partir de 12 mensajes de entrada diferentes en lenguaje natural. [ 10 ]

AlTawy, et al ., encontraron una colisión de inicio libre de 5 rondas y una colisión cercana de inicio libre de 7,75 rondas para el cifrado interno con complejidades de 2 8 y 2 40, respectivamente, así como ataques a la función de compresión con una colisión de inicio semi libre de 7,75 rondas con una complejidad temporal de 2 184 y una complejidad de memoria de 2 8 , y colisiones cercanas de inicio semi libre de 8,75 y 9,75 rondas con complejidades temporales de 2 120 y 2 196 , respectivamente. [ 11 ]

Wang, et al ., describen un ataque de colisión en la función de compresión reducido a 9,5 rondas con una complejidad temporal de 2 176 y una complejidad de memoria de 2 128. [ 12 ]

En 2015, Biryukov, Perrin y Udovenko realizaron ingeniería inversa de la estructura de generación de la caja S no publicada (que anteriormente se afirmaba que se generaba aleatoriamente) y concluyeron que los componentes subyacentes son criptográficamente débiles. [ 13 ]

Véase también

Referencias

  1. 1 2 Jian Guo; Jérémy Jean; Gaëtan Leurent; Thomas Peyrin; Lei Wang (2014-08-29). El uso de Counter revisitado: ataque de segunda preimagen a la nueva función hash estandarizada rusa . SAC 2014.
  2. 1 2 GOST R 34.11-2012: Función hash de Streebog
  3. "ISO/IEC 10118-3:2018 Técnicas de seguridad informática — Funciones hash — Parte 3: Funciones hash dedicadas" .
  4. StriBob: Cifrado autenticado de GOST R 34.11-2012 LPS Permutation
  5. Aspectos algebraicos del estándar de hash ruso GOST R 34.11-2012
  6. Texto completo de la norma GOST R 34.11-2012 (en ruso)
  7. Concurso de trabajos de investigación abiertos dedicado al análisis de las propiedades criptográficas de la función hash GOST R 34.11-2012
  8. Bingke Ma; Bao Li; Ronglin Hao; Xiaoqian Li. "Criptoanálisis mejorado en GOST de ronda reducida y función hash de remolino (versión completa)" (PDF) .
  9. Riham AlTawy; Amr M. Youssef. "Watch your Constants: Malicious Streebog" (PDF) .
  10. Nota sobre el origen de las constantes de Streebog
  11. Riham AlTawy; Aleksandar Kircanski; Amr M. Youssef. "Ataques de rebote contra Stribog" (PDF) .
  12. Zongyue Wang; Hongbo Yu; Xiaoyun Wang (10 de septiembre de 2013). "Criptoanálisis de la función hash GOST R" . Information Processing Letters . 114 (12): 655– 662. doi : 10.1016/j.ipl.2014.07.007 .
  13. Biryukov, Alex; Perrin, Léo; Udovenko, Aleksei (2016). "Ingeniería inversa de la caja S de Streebog, Kuznyechik y STRIBOBr1 (versión completa)" . Cryptology ePrint Archive .
Obtenido de " https://en.wikipedia.org/w/index.php?title=Streebog&oldid=1292151161 "