Streebog

Streebog
General
Designers FSB, InfoTeCS JSC
First published 2012
Related to GOST
Certification GOST standard
Detail
Digest sizes 256 and 512
Rounds 12
Best public cryptanalysis
Second preimage attack with 2266 time complexity.[1]

Streebog is a cryptographic hash function defined in the Russian national standard GOST R 34.11-2012 Information Technology - Cryptographic Information Security - Hash Function. It was created to replace an obsolete GOST hash function defined in the old standard GOST R 34.11-94, and as an asymmetric reply to SHA-3 competition by the US National Institute of Standards and Technology.[2] The function is also described in RFC 6986.

Description

Streebog is a family of two hash functions, Streebog-256 and Streebog-512, that produce output 256-bit or 512-bit hash respectively from a bit string of arbitrary size using the Merkle-Damgård construction.[3] The high-level structure of the new hash function resembles the one from GOST R 34.11-94, however, the compression function was changed significantly.[4] The compression function operates in Miyaguchi-Preneel mode and employs a 12-round AES-like cipher.

The function was named Streebog after Stribog, the god of rash wind in ancient Slavic mythology,[2] and is often referred by this name, even though it is not explicitly mentioned in the text of the standard.[5]

Examples of Streebog hashes

Hash values of empty string.

Streebog-256("")
0x 3f539a213e97c802cc229d474c6aa32a825a360b2a933a949fd925208d9ce1bb
Streebog-512("")
0x 8e945da209aa869f0455928529bcae4679e9873ab707b55315f56ceb98bef0a7 \
   362f715528356ee83cda5f2aac4c6ad2ba3a715c1bcd81cb8e9f90bf4c1c1a8a

Even a small change in the message will (with overwhelming probability) result in a mostly different hash, due to the avalanche effect. For example, adding a period to the end of the sentence:

Streebog-256("The quick brown fox jumps over the lazy dog")
0x 3e7dea7f2384b6c5a3d0e24aaa29c05e89ddd762145030ec22c71a6db8b2c1f4
Streebog-256("The quick brown fox jumps over the lazy dog.")
0x 36816a824dcbe7d6171aa58500741f2ea2757ae2e1784ab72c5c3c6c198d71da

Cryptanalysis

In 2013 the Russian Technical Committee for Standardization “Cryptography and Security Mechanisms” (TC 26) with the participation of Academy of Cryptography of the Russian Federation declared an open competition for cryptanalysis of Streebog hash function,[6] which attracted the international attention to the function.

Bingke Ma, Bao Li, Ronglin Hao, and Xiaoqian Li in their work "Improved Cryptanalysis on Reduced-Round GOST and Whirlpool Hash Function" describe a preimage attack that takes 2496 time and 264 memory or 2504 time and 211 memory to find a single preimage of GOST-512 reduced to 6 rounds.[7] They also describe collision attack with 2181 time complexity and 264 memory requirement in the same paper.

J. Guo, J. Jean, G. Leurent, T. Peyrin, and L. Wang in their work “The Usage of Counter Revisited: Second-Preimage Attack on New Russian Standardized Hash Function” describe a second preimage attack on full Streebog-512 with total time complexity equivalent to 2266 compression function evaluations, if the message has more than 2259 blocks.[1]

Riham AlTawy and Amr M. Youssef published an attack to a modified version of Streebog with different round constants.[8] While this attack may not have a direct impact on the security of the original Streebog hash function, it raised a question about the origin of the used parameters in the function. The designers published a paper explaining that these are pseudorandom constants generated with Streebog-like hash function, provided with 12 different natural language input messages.[9]

Riham AlTawy, Aleksandar Kircanski and Amr M. Youssef found 5-round free-start collision and a 7.75 free-start near collision for the internal cipher with complexities 28 and 240, respectively, as well as attacks on the compression function with 7.75 round semi free-start collision with time complexity 2184 and memory complexity 28, 8.75 and 9.75 round semi free-start near collisions with time complexities 2120 and 2196, respectively.[10]

Zongyue Wang, Hongbo Yu and Xiaoyun Wang describe a collision attack on the compression function reduced to 9.5 rounds with 2176 time complexity and 2128 memory complexity.[11]

References

  1. 1 2 Jian Guo, Jérémy Jean, Gaëtan Leurent, Thomas Peyrin, Lei Wang (2014-08-29). The Usage of Counter Revisited: Second-Preimage Attack on New Russian Standardized Hash Function. SAC 2014.
  2. 1 2 https://www.streebog.net/ GOST R 34.11-2012: Streebog Hash Function
  3. https://mjos.fi/doc/saarinen_stribob.pdf StriBob: Authenticated Encryption from GOST R 34.11-2012 LPS Permutation
  4. http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.380.318 Algebraic Aspects of the Russian Hash Standard GOST R 34.11-2012
  5. http://protect.gost.ru/document.aspx?control=7&baseC=6&page=1&month=6&year=-1&search=&id=180209 Full text of GOST R 34.11-2012 standard (Russian)
  6. http://www.streebog.info/ Open Research Papers Competition dedicated to analysis of cryptographic properties of the hash-function GOST R 34.11-2012
  7. https://eprint.iacr.org/2014/375.pdf Improved Cryptanalysis on Reduced-Round GOST and Whirlpool Hash Function (Full Version)
  8. Watch your Constants: Malicious Streebog https://eprint.iacr.org/2014/879.pdf
  9. http://www.tc26.ru/en/ISO_IEC/streebog/streebog_constants_eng.pdf Note on Streebog constants origin
  10. https://eprint.iacr.org/2013/539.pdf Rebound attacks on Stribog
  11. Zongyue Wang, Hongbo Yu, Xiaoyun Wang (2013-09-10). "Cryptanalysis of GOST R hash function". Information Processing Letters 114 (12): 655–662. doi:10.1016/j.ipl.2014.07.007.
This article is issued from Wikipedia - version of the Thursday, April 14, 2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.