Difference between revisions of "The Hash Function Zoo"

From The ECRYPT Hash Function Website
(Update on Vortex)
 
(39 intermediate revisions by 6 users not shown)
Line 1: Line 1:
 
{| border="1" cellpadding="2" cellspacing="0" align="center" class="wikitable"
 
{| border="1" cellpadding="2" cellspacing="0" align="center" class="wikitable"
 
|+'''The Hash Function Zoo, a collection of cryptographic hash functions (in alphabetical order)'''
 
|+'''The Hash Function Zoo, a collection of cryptographic hash functions (in alphabetical order)'''
 +
 +
<br>
 +
Also check out Paulo Barreto's [http://paginas.terra.com.br/informatica/paulobarreto/hflounge.html  Hash Function Lounge].
 +
<br>
 +
For the recent submissions to the SHA-3 competition, there is a separate [[The_SHA-3_Zoo| SHA-3 Zoo]]
 +
 
|- style="background:#efefef;"
 
|- style="background:#efefef;"
! width="300"| Hash Function Name !! Designer(s) !! Issued in !! Status Cryptanalysis
+
! width="150"| Hash Function Name !! Designer(s) !! Issued in !! Status Cryptanalysis
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/AR AR]                 || ISO || align="center"|1992 || broken
+
| [[AR]]          || ISO || align="center"|1992 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/Boognish Boognish]    || Daemen || align="center"|1992 || broken
+
| [[Boognish]]    || Daemen || align="center"|1992 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/Cellhash Cellhash]    || Daemen, Govaerts, Vandewalle || align="center"|1991 || ?
+
| [[Cellhash]]    || Daemen, Govaerts, Vandewalle || align="center"|1991 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/DHA-256 DHA-256]       || Lyubashevsky, Micciancio, Peikert, Rosen || align="center"|2006 || ?
+
| [[DASH]]    || Billet, Robshaw, Seurin, Yin || align="center"|2008 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/Edon-R Edon-R]     || Gligoroski, Markovski, Kocarev || align="center"|2006 || ?
+
| [[DHA-256]]     || Lee, Chang, Kim, Lee, Hong || align="center"|2006 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/FFT-HashI FFT-Hash I] || Schnorr || align="center"|1991 || broken
+
| [[Edon-R]]       || Gligoroski, Markovski, Kocarev || align="center"|2006 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/FFT-HashII FFT-Hash II] || Schnorr || align="center"|1992 || broken
+
| [[FFT-Hash I]]   || Schnorr || align="center"|1991 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/FORK256 FORK-256]       || Hong, Chang, Sung, Lee, Hong, Lee, Moon, Chee || align="center"|2006 || ?
+
| [[FFT-Hash II]|| Schnorr || align="center"|1992 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/FSB FSB]               || Augot, Finiasz, Sendrier || align="center"|2005 || ?
+
| [[FORK-256]]      || Hong, Chang, Sung, Lee, Hong, Lee, Moon, Chee || align="center"|2006 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/GOST GOST R 34.11-94] || Government Committee of Russia for Standards || align="center"|1990 || broken
+
| [[FSB]]          || Augot, Finiasz, Sendrier || align="center"|2005 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/HAVAL HAVAL]           || Zheng, Pieprzyk, Seberry || align="center"|1994 || broken
+
| [[GOST | GOST 34.11-94]]         || Government Committee of Russia for Standards || align="center"|1990 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/LASH-n LASH-n]         || Bentahar, Page, Saarinen, Silverman, Smart || align="center"|2006 || ?
+
| [[Grindahl-256]] || Knudsen, Rechberger, Thomsen || align="center"|2007 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/MAME MAME]               || Yoshida, Watanabe, Okeya, Kitahara, Wu, Kucuk, Preneel || align="center"|2007 || ?
+
| [[Grindahl-512]] || Knudsen, Rechberger, Thomsen || align="center"|2007 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/MD2 MD2]               || Rivest || align="center"|1989 || broken
+
| [[HAS-160]]      || Telecommunications Technology Association of Korea || align="center"| 2000 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/MD4 MD4]               || Rivest || align="center"|1990 || broken
+
| [[HAS-V]]        || Park, Hwang, Lee || align="center"|2000 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/MD5 MD5]               || Rivest || align="center"|1992 || broken
+
| [[HAVAL]]        || Zheng, Pieprzyk, Seberry || align="center"|1994 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/N-Hash N-Hash]        || Miyaguchi, Ohta, Iwata || align="center"|1990 || broken
+
| [[LAKE]]        || Aumasson, Meier, Phan|| align="center"|2008|| ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/PANAMA PANAMA]         || Daemen, Clapp || align="center"|1998 || broken
+
| [[LASH-n]]      || Bentahar, Page, Saarinen, Silverman, Smart || align="center"|2006 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/ParallelFFT-Hash Parallel FFT-Hash] || Schnorr, Vaudenay || align="center"|1993 || ?
+
| [[MAME]]        || Yoshida, Watanabe, Okeya, Kitahara, Wu, Kucuk, Preneel || align="center"|2007 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/RadioGatun RadioGatun[w]] || Bertoni, Daemen, Peeters, van Assche || align="center"|2006 || ?
+
| [[MD2]]         || Rivest || align="center"|1989 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/RIPEMD RIPEMD] || The RIPE Consortium || align="center"|1990 || broken
+
| [[MD4]]          || Rivest || align="center"|1990 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/RIPEMD-128 RIPEMD-128] || Dobbertin, Bosselaers, Preneel || align="center"|1996 || ?
+
| [[MD5]]          || Rivest || align="center"|1992 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/RIPEMD-160 RIPEMD-160] || Dobbertin, Bosselaers, Preneel || align="center"|1996 || ?
+
| [[N-Hash]]       || Miyaguchi, Ohta, Iwata || align="center"|1990 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/PKC-HASH PKC-HASH] || Shin, Rhee, Ryu, Lee || align="center"|1998 || broken
+
| [[PANAMA]]      || Daemen, Clapp || align="center"|1998 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/SHA0 SHA-0]           || NIST/NSA || align="center"|1991 || broken
+
| [[Parallel FFT-Hash]|| Schnorr, Vaudenay || align="center"|1993 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/SHA-1 SHA-1]           || NIST/NSA || align="center"|1993 || broken
+
| [[PARSHA-256]] || Pal, Sarkar || align="center"|2003 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/SHA-224 SHA-224]       || NIST/NSA || align="center"|2004 ||  
+
| [[PKC-HASH]] || Shin, Rhee, Ryu, Lee || align="center"|1998 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/SHA256 SHA-256]       || NIST/NSA || align="center"|2000 ||  
+
| [[RadioGatun]] || Bertoni, Daemen, Peeters, van Assche || align="center"|2006 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/SHA384 SHA-384]       || NIST/NSA || align="center"|2000 ||  
+
| [[RC4-HASH]] || Chang, Gupta, Nandi || align="center"|2006 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/SHA512 SHA-512]       || NIST/NSA || align="center"|2000 ||  
+
| [[RIPEMD]] || The RIPE Consortium || align="center"|1990 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/SMASH SMASH]           || Knudsen || align="center"|2005 || broken
+
| [[RIPEMD-128]] || Dobbertin, Bosselaers, Preneel || align="center"|1996 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/Snefru-n Snefru-n]     || Merkle  || align="center"|1990 || broken
+
| [[RIPEMD-160]] || Dobbertin, Bosselaers, Preneel || align="center"|1996 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/StepRightUp StepRightUp] || Daemen  || align="center"|1995 || wounded
+
| [[SHA-0]]           || NIST/NSA || align="center"|1991 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/SubHash SubHash]       || Daemen  || align="center"|1992 || ?
+
| [[SHA-1]]           || NIST/NSA || align="center"|1993 || broken
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/Tiger Tiger]       || Anderson, Biham  || align="center"|1996 || broken
+
| [[SHA-256/224]]       || NIST/NSA || align="center"|2000 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/VSH VSH]       || Contini, Lenstra, Steinfeld,  || align="center"|2005 || ?
+
| [[SHA-512/384]]       || NIST/NSA || align="center"|2000 || ?
 
|-
 
|-
| [http://ehash.iaik.tugraz.at/index.php/Whirlpool Whirlpool]  || Barreto and Rijmen || align="center"|2000 || ?
+
| [[SMASH]]          || Knudsen || align="center"|2005 || broken
 +
|-
 +
| [[Snefru-n]]    || Merkle  || align="center"|1990 || broken
 +
|-
 +
| [[StepRightUp]] || Daemen  || align="center"|1995 || broken
 +
|-
 +
| [[SubHash]]      || Daemen  || align="center"|1992 || ?
 +
|-
 +
| [[SWIFFT]]      || Lyubashevsky, Micciancio, Peikert, Rosen || align="center"|2008 || ?
 +
|-
 +
| [[Tiger]]      || Anderson, Biham  || align="center"|1996 || broken
 +
|-
 +
| [[Vortex]]      || Gueron, Kounavis  || align="center"|2008 || broken
 +
|-
 +
| [[VSH]]      || Contini, Lenstra, Steinfeld  || align="center"|2005 || ?
 +
|-
 +
| [[Whirlpool]]  || Barreto and Rijmen || align="center"|2000 || ?
 
|}
 
|}
 +
 +
Regarding the column cryptanalysis status, for simplicity reasons we take the following view.
 +
As soon as there are results suggesting that an expected property of a hash function is less than ideal, we list it as 'broken'. Resulting attacks may be by no means practical.
 +
 +
Note that the source for most of the data collected here (proposals and analysis results) is published in one of the following venues. Journal of Cryptology, IEEE Transactions on Information Theory, proceedings of IACR conferences like Crypto, Eurocrypt, Asiacrypt, Africacrypt, FSE. Additionally also SAC, ISC, CT-RSA, PKCS, FIPS and ISO Standards are used.

Latest revision as of 14:53, 30 July 2009

The Hash Function Zoo, a collection of cryptographic hash functions (in alphabetical order)
Also check out Paulo Barreto's Hash Function Lounge.
For the recent submissions to the SHA-3 competition, there is a separate SHA-3 Zoo
Hash Function Name Designer(s) Issued in Status Cryptanalysis
AR ISO 1992 broken
Boognish Daemen 1992 broken
Cellhash Daemen, Govaerts, Vandewalle 1991 ?
DASH Billet, Robshaw, Seurin, Yin 2008 ?
DHA-256 Lee, Chang, Kim, Lee, Hong 2006 ?
Edon-R Gligoroski, Markovski, Kocarev 2006 ?
FFT-Hash I Schnorr 1991 broken
FFT-Hash II Schnorr 1992 broken
FORK-256 Hong, Chang, Sung, Lee, Hong, Lee, Moon, Chee 2006 broken
FSB Augot, Finiasz, Sendrier 2005 ?
GOST 34.11-94 Government Committee of Russia for Standards 1990 broken
Grindahl-256 Knudsen, Rechberger, Thomsen 2007 broken
Grindahl-512 Knudsen, Rechberger, Thomsen 2007 ?
HAS-160 Telecommunications Technology Association of Korea 2000 ?
HAS-V Park, Hwang, Lee 2000 broken
HAVAL Zheng, Pieprzyk, Seberry 1994 broken
LAKE Aumasson, Meier, Phan 2008 ?
LASH-n Bentahar, Page, Saarinen, Silverman, Smart 2006 broken
MAME Yoshida, Watanabe, Okeya, Kitahara, Wu, Kucuk, Preneel 2007 ?
MD2 Rivest 1989 broken
MD4 Rivest 1990 broken
MD5 Rivest 1992 broken
N-Hash Miyaguchi, Ohta, Iwata 1990 broken
PANAMA Daemen, Clapp 1998 broken
Parallel FFT-Hash Schnorr, Vaudenay 1993 ?
PARSHA-256 Pal, Sarkar 2003 ?
PKC-HASH Shin, Rhee, Ryu, Lee 1998 broken
RadioGatun Bertoni, Daemen, Peeters, van Assche 2006 ?
RC4-HASH Chang, Gupta, Nandi 2006 broken
RIPEMD The RIPE Consortium 1990 broken
RIPEMD-128 Dobbertin, Bosselaers, Preneel 1996 ?
RIPEMD-160 Dobbertin, Bosselaers, Preneel 1996 ?
SHA-0 NIST/NSA 1991 broken
SHA-1 NIST/NSA 1993 broken
SHA-256/224 NIST/NSA 2000 ?
SHA-512/384 NIST/NSA 2000 ?
SMASH Knudsen 2005 broken
Snefru-n Merkle 1990 broken
StepRightUp Daemen 1995 broken
SubHash Daemen 1992 ?
SWIFFT Lyubashevsky, Micciancio, Peikert, Rosen 2008 ?
Tiger Anderson, Biham 1996 broken
Vortex Gueron, Kounavis 2008 broken
VSH Contini, Lenstra, Steinfeld 2005 ?
Whirlpool Barreto and Rijmen 2000 ?

Regarding the column cryptanalysis status, for simplicity reasons we take the following view. As soon as there are results suggesting that an expected property of a hash function is less than ideal, we list it as 'broken'. Resulting attacks may be by no means practical.

Note that the source for most of the data collected here (proposals and analysis results) is published in one of the following venues. Journal of Cryptology, IEEE Transactions on Information Theory, proceedings of IACR conferences like Crypto, Eurocrypt, Asiacrypt, Africacrypt, FSE. Additionally also SAC, ISC, CT-RSA, PKCS, FIPS and ISO Standards are used.