T-79.514 Special Course on Cryptology September 30, 2004
Recent Cryptanalytic Results on Dedicated Hash Functions.
Markku-Juhani O. Saarinen
Helsinki University of Technology
mjos@tcs.hut.fi
T.79-514 Markku-Juhani O. Saarinen 1
Recent Cryptanalytic Results on Dedicated Hash Functions. - - PowerPoint PPT Presentation
T-79.514 Special Course on Cryptology September 30, 2004 Recent Cryptanalytic Results on Dedicated Hash Functions. Markku-Juhani O. Saarinen Helsinki University of Technology mjos@tcs.hut.fi T.79-514 Markku-Juhani O. Saarinen 1 Terminology
T.79-514 Markku-Juhani O. Saarinen 1
T.79-514 Markku-Juhani O. Saarinen 2
T.79-514 Markku-Juhani O. Saarinen 3
T.79-514 Markku-Juhani O. Saarinen 4
T.79-514 Markku-Juhani O. Saarinen 5
T.79-514 Markku-Juhani O. Saarinen 6
T.79-514 Markku-Juhani O. Saarinen 7
T.79-514 Markku-Juhani O. Saarinen 8
T.79-514 Markku-Juhani O. Saarinen 9
T.79-514 Markku-Juhani O. Saarinen 10
T.79-514 Markku-Juhani O. Saarinen 11
T.79-514 Markku-Juhani O. Saarinen 12
T.79-514 Markku-Juhani O. Saarinen 13
Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD
Xiaoyun Wang1, Dengguo Feng2, Xuejia Lai3, Hongbo Yu1 The School of Mathematics and System Science, Shandong University, Jinan250100, China1 Institute of Software, Chinese Academy of Sciences, Beijing100080, China21 Collisions for MD5
MD5 is the hash function designed by Ron Rivest [9] as a strengthened version of MD4[8]. In 1993 Bert den Boer and Antoon Bosselaers [1] found pseudo-collision for MD5 which is made of the same message with two different sets of initial value. H. Dobbertin[3] found another kind of collision which consists of two different 512-bit messages with a chosen initial value V I c. ED BA x C B F x C B AC x A V I 763 4 D , 97 62 5 , 341042 3 0x B , 2375 12 : c c c c c Our attack can find many real collisions which are composed of two 1024-bit messages with the original initial value IV of MD5. 76543210 , 98 , 89 , 01234567 : x D xfedcba C abcdef x B x A IV 14 , 11 , 4 ), , 2 ,... 2 ,.... 2 , , , , ( , 31 15 31 1 1 ' '2 Collisions for HAVAL-128
HAVAL is proposed in [10] . HAVAL is a hashing algorithm that can compress messages of any length in 3,43 Collisions for MD4
MD4 is designed by R. L. Rivest[8] . Attack of H. Dobbertin in Eurocrypto'96[2] can find collision with probability 1/222. Our attack can find collision with hand calculation, such trhat 12 , 2 , 1 ), ,..., , 2 , ,...., , 2 2 , 2 , ( , 16 31 28 314 Collisions for RIPEMD
RIPEMD was developed for the RIPE project (RACE Integrrity Primitives Evalustion, 1988-1992). In 1995, H. Dobbertin proved that the reduced version RIPEMD with two rounds is not collision-free[4]. We prove that the full RIPEMD also isn’t collision-free. The following are two pairs of collisions for RIPEMD. ) ( ) ( M RIPEMD M RIPEMD c where 15 , 10 , 3 ), 2 ,..., 2 2 ,.... 2 , , , ( , 31 31 18 205 Remark
Besides the above hash functions we break, there are some other hash functions not having ideal security. For example, collision of SHA-0 [6] can be found within the running-time of about 240 SHA-0 algorithms, and HAVAL-160 can be found a collision with probability 1/232. 1 B. den Boer, Antoon Bosselaers, Collisions for the Compression Function of MD5, Eurocrypto,93. 2 H. Dobbertin, Cryptanalysis of MD4, Fast Software Encryption, LNCS 1039, D. , Springer-Verlag, 1996. 3 H. Dobbertin, Cryptanalysis of MD5 compress, presented at the rump session of EurocrZpt'96. 4 Hans Dobbertin, RIPEMD with Two-round Compress Function is Not Collision-Free, J. Cryptology 10(1), 1997. 5 H. Dobbertin, A. Bosselaers, B. Preneel, "RIPMEMD-160: A Strengthened Version of RIPMMD," Fast Software EncrZption, LNCS 1039, D.Gollmann, Ed., Springer-Verlag, 1996, pp. 71-82. 6 FIPS 180-1, Secure hash standard, NIST, US Department of Commerce, Washington D. C., April 1995. 7 P. R. Kasselman, W T Penzhorn , Cryptananlysis od reduced version of HAVAL, Vol. 36, No. 1, Electronic Letters, 2000. 8 R. L Rivest, The MD4 Message Digest Algorithm, Request for Comments (RFC)1320, Internet Activities Board, Internet Privacy Task Force, April 1992. 9 R. L Rivest, The MD5 Message Digest Algorithm, Request for Comments (RFC)1321, Internet Activities Board, Internet PrivacZ Task Force, April 1992.3RIPEMD-1281 10 Y. Zheng, J. Pieprzyk, J. Seberry, HAVAL--A One-way Hashing Algorithm with Variable Length of Output, Auscrypto'92.Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD
Xiaoyun Wang1, Dengguo Feng2, Xuejia Lai3, Hongbo Yu1 The School of Mathematics and System Science, Shandong University, Jinan250100, China1 Institute of Software, Chinese Academy of Sciences, Beijing100080, China21 Collisions for MD5
MD5 is the hash function designed by Ron Rivest [9] as a strengthened version of MD4 [8]. In 1993 Bert den Boer and Antoon Bosselaers [1] found pseudo-collision for MD5 which is made of the same message with two different sets of initial value. H. Dobbertin[3] found a free-start collision which consists of two different 512-bit messages with a chosen initial value V I . ED BA x C B F x C B AC x A V I 763 4 D , 97 62 5 , 341042 3 0x B , 2375 12 : Our attack can find many real collisions which are composed of two 1024-bit messages with the original initial value IV of MD5: 10325476 , 98 , 89 67452301 : x D badcfe x C xefcdab ,B x A IV ) , 2 ,..., 2 ,..., 2 , , , , ( , 31 15 31 1 1 C C M M ) , 2 ,..., 2 ,..., 2 , , , , ( , 31 15 31 2 2 C C N N i i (non-zeros at position 4,11 and 14) such that ) , ( 5 ) , ( 5 i i N M MD N M MD . On IBM P690, it takes about one hour to find such M and M , after that, it takes only 15 seconds to 5 minutes to find i N and i N , so that ) , ( i N M and ) , ( i N M will produce the same hash same value. Moreover,2 Collisions for HAVAL-128
HAVAL is proposed in [10]. HAVAL is a hashing algorithm that can compress messages of any length in 3,4C C M M
i i M1 579faf8e 9ecf579 574a6aba 78413511 a2b410a4 ad2f6c9f b56202c 4d757911 bdeaae7 78bc91f2 47bc6d7d 9abdd1b1 a45d2015 817104ff 264758a8 61064ea5 M1 579faf8e 9ecf579 574a6aba 78513511 a2b410a4 ad2f6c9f b56202c 4d757911 bdeaae7 78bc91f2 c7c06d7d 9abdd1b1 a45d2015 817104ff 264758a8 e1064ea5 H 1fab152 1654a31b 7a33776a 9e968ba7 M2 579faf8e 9ecf579 574a6aba 78413511 a2b410a4 ad2f6c9f b56202c 4d757911 bdeaae7 78bc91f2 47bc6d7d 9abdd1b1 a45d2015 a0a504ff b18d58a8 e70c66b6 M2 579faf8e 9ecf579 574a6aba 78513511 a2b410a4 ad2f6c9f b56202c 4d757911 bdeaae7 78bc91f2 c7c06d7d 9abdd1b1 a45d2015 a0a504ff b18d58a8 670c66b6 H 1f2c159f 569b31a6 dfcaa51a 25665d24 Table 4 The collisions for RIPEMD5 Remark
Besides the above hash functions we break, there are some other hash functions not having ideal security. For example, collision of SHA-0 [6] can be found with about 240 computations of SHA-0 algorithms, and a collision for HAVAL-160 can be found with probability 1/232. Note that the messages and all other values in this paper are composed of 32-bit words, in each 32-bit word the most left byte is the most significant byte. 1 B. den Boer, Antoon Bosselaers, Collisions for the Compression Function of MD5, Eurocrypto,93. 2 H. Dobbertin, Cryptanalysis of MD4, Fast Software Encryption, LNCS 1039, D. , Springer-Verlag, 1996. 3 H. Dobbertin, Cryptanalysis of MD5 compress, presented at the rump session of EurocrZpt'96. 4 Hans Dobbertin, RIPEMD with Two-round Compress Function is Not Collision-Free, J. Cryptology 10(1), 1997. 5 H. Dobbertin, A. Bosselaers, B. Preneel, "RIPMEMD-160: A Strengthened Version of RIPMMD," Fast Software EncrZption, LNCS 1039, D.Gollmann, Ed., Springer-Verlag, 1996, pp. 71-82. 6 FIPS 180-1, Secure hash standard, NIST, US Department of Commerce, Washington D. C., April 1995. 7 P. R. Kasselman, W T Penzhorn , Cryptananlysis od reduced version of HAVAL, Vol. 36, No. 1, Electronic Letters, 2000. 8 R. L. Rivest, The MD4 Message Digest Algorithm, Request for Comments (RFC)1320, Internet Activities Board, Internet Privacy Task Force, April 1992. 9 R. L Rivest, The MD5 Message Digest Algorithm, Request for Comments (RFC)1321, Internet Activities Board, Internet PrivacZ Task Force, April 1992.3RIPEMD-1281 10 Y. Zheng, J. Pieprzyk, J. Seberry, HAVAL--A One-way Hashing Algorithm with Variable Length of Output, Auscrypto'92.T.79-514 Markku-Juhani O. Saarinen 14
T.79-514 Markku-Juhani O. Saarinen 15
T.79-514 Markku-Juhani O. Saarinen 16
T.79-514 Markku-Juhani O. Saarinen 17
T.79-514 Markku-Juhani O. Saarinen 18
T.79-514 Markku-Juhani O. Saarinen 19
T.79-514 Markku-Juhani O. Saarinen 20
T.79-514 Markku-Juhani O. Saarinen 21
T.79-514 Markku-Juhani O. Saarinen 22
T.79-514 Markku-Juhani O. Saarinen 23
T.79-514 Markku-Juhani O. Saarinen 24
T.79-514 Markku-Juhani O. Saarinen 25
T.79-514 Markku-Juhani O. Saarinen 26
T.79-514 Markku-Juhani O. Saarinen 27
T.79-514 Markku-Juhani O. Saarinen 28
T.79-514 Markku-Juhani O. Saarinen 29
T.79-514 Markku-Juhani O. Saarinen 30
(A, B, C, D, E) = 02AAD5C2 DC766713 19C66B2F 7CEAE5B1 CC08CC0B W0...15 = 8DA3F8F6 BBA5050C 99D3C3DC BBA5050C 99D3C3DC E42BAFB3 37DF640F 1ABABEEA 8DA3F8F6 E42BAFB3 37DF640F B57DEBB5 5AA5AB1F 44ED8DA0 1B63271F EAE12A73 (A, B, C, D, E) = FC56BE44 03A42CDA F68056F0 960F5286 32985CD9
(A′, B′, C′, D′, E′) = 4258DA7D 02AAD5C2 F71D99C4 19C66B2F 7CEAE5B1 W0...15 = BBA5050C 99D3C3DC BBA5050C 99D3C3DC E42BAFB3 37DF640F 1ABABEEA 8DA3F8F6 E42BAFB3 37DF640F B57DEBB5 5AA5AB1F 44ED8DA0 1B63271F EAE12A73 BA7C9CF9 (A′, B′, C′, D′, E′) = 58BB28F0 FC56BE44 C0E90B35 F68056F0 960F5286 T.79-514 Markku-Juhani O. Saarinen 31
T.79-514 Markku-Juhani O. Saarinen 32
T.79-514 Markku-Juhani O. Saarinen 33
T.79-514 Markku-Juhani O. Saarinen 34
T.79-514 Markku-Juhani O. Saarinen 35