From HandWiki - Reading time: 7 min
The following tables compare general and technical information for a number of cryptographic hash functions. See the individual functions' articles for further information. This article is not all-inclusive or necessarily up-to-date. An overview of hash function security/cryptanalysis can be found at hash function security summary.
Basic general information about the cryptographic hash functions: year, designer, references, etc.
| Function | Year | Designer | Derived from | Reference |
|---|---|---|---|---|
| BLAKE | 2008 | Jean-Philippe Aumasson Luca Henzen Willi Meier Raphael C.-W. Phan |
ChaCha20 | Website Specification |
| BLAKE2 | 2012 | Jean-Philippe Aumasson Samuel Neves Zooko Wilcox-O'Hearn Christian Winnerlein |
BLAKE | Website Specification RFC 7693 |
| BLAKE3 | 2020 | Jack O'Connor Jean-Philippe Aumasson Samuel Neves Zooko Wilcox-O'Hearn |
BLAKE2 | Website Specification |
| GOST R 34.11-94 | 1994 | FAPSI and VNIIstandart | GOST 28147-89 | RFC 5831 |
| HAVAL | 1992 | Yuliang Zheng Josef Pieprzyk Jennifer Seberry |
Website Specification | |
| KangarooTwelve | 2016 | Guido Bertoni Joan Daemen Michaël Peeters Gilles Van Assche |
Keccak | Website Specification |
| MD2 | 1989 | Ronald Rivest | RFC 1319 | |
| MD4 | 1990 | RFC 1320 | ||
| MD5 | 1992 | MD4 | RFC 1321 | |
| MD6 | 2008 | Website Specification | ||
| RIPEMD | 1992 | MD4 | ||
| RIPEMD-128 RIPEMD-256 RIPEMD-160 RIPEMD-320 |
1996 | Hans Dobbertin Antoon Bosselaers Bart Preneel |
RIPEMD | Website Specification |
| SHA-0 | 1993 | NSA | SHA-0 | |
| SHA-1 | 1995 | SHA-0 | Specification | |
| SHA-256 SHA-384 SHA-512 |
2002 | |||
| SHA-224 | 2004 | |||
| SHA-3 (Keccak) | 2008 | Guido Bertoni Joan Daemen Michaël Peeters Gilles Van Assche |
RadioGatún | Website Specification |
| Streebog | 2012 | FSB, InfoTeCS JSC | RFC 6986 | |
| Tiger | 1995 | Ross Anderson Eli Biham |
Website Specification | |
| Whirlpool | 2004 | Vincent Rijmen Paulo Barreto |
Website |
| Algorithm | Output size (bits) | Internal state size[note 1] | Block size | Length size | Word size | Rounds |
|---|---|---|---|---|---|---|
| BLAKE2b | 512 | 512 | 1024 | 128[note 2] | 64 | 12 |
| BLAKE2s | 256 | 256 | 512 | 64[note 3] | 32 | 10 |
| BLAKE3 | Unlimited | 256[note 4] | 512 | 64 | 32 | 7 |
| GOST | 256 | 256 | 256 | 256 | 32 | 32 |
| HAVAL | 256/224/192/160/128 | 256 | 1024 | 64 | 32 | 3/4/5 |
| MD2 | 128 | 384 | 128 | – | 32 | 18 |
| MD4 | 128 | 128 | 512 | 64 | 32 | 3 |
| MD5 | 128 | 128 | 512 | 64 | 32 | 64 |
| PANAMA | 256 | 8736 | 256 | – | 32 | – |
| RadioGatún | Unlimited[note 5] | 58 words | 19 words[note 6] | – | 1–64[note 7] | 18[note 8] |
| RIPEMD | 128 | 128 | 512 | 64 | 32 | 48 |
| RIPEMD-128, -256 | 128/256 | 128/256 | 512 | 64 | 32 | 64 |
| RIPEMD-160 | 160 | 160 | 512 | 64 | 32 | 80 |
| RIPEMD-320 | 320 | 320 | 512 | 64 | 32 | 80 |
| SHA-0 | 160 | 160 | 512 | 64 | 32 | 80 |
| SHA-1 | 160 | 160 | 512 | 64 | 32 | 80 |
| SHA-224, -256 | 224/256 | 256 | 512 | 64 | 32 | 64 |
| SHA-384, -512, -512/224, -512/256 | 384/512/224/256 | 512 | 1024 | 128 | 64 | 80 |
| SHA-3 | 224/256/384/512[note 9] | 1600 | 1600 - 2*bits | –[note 10] | 64 | 24 |
| SHA3-224 | 224 | 1600 | 1152 | – | 64 | 24 |
| SHA3-256 | 256 | 1600 | 1088 | – | 64 | 24 |
| SHA3-384 | 384 | 1600 | 832 | – | 64 | 24 |
| SHA3-512 | 512 | 1600 | 576 | – | 64 | 24 |
| Tiger(2)-192/160/128 | 192/160/128 | 192 | 512 | 64 | 64 | 24 |
| Whirlpool | 512 | 512 | 512 | 256 | 8 | 10 |
The following tables compare technical information for compression functions of cryptographic hash functions. The information comes from the specifications, please refer to them for more details.
| Function | Size (bits)[note 1] | Words × Passes = Rounds[note 2] |
Operations[note 3] | Endian[note 4] | |||||
|---|---|---|---|---|---|---|---|---|---|
| Word | Digest | Chaining values[note 5] |
Computation values[note 6] |
Block | Length [note 7] | ||||
| GOST R 34.11-94 | 32 | ×8 = 256 | ×8 = 256 | 32 | 4 | A B L S | Little | ||
| HAVAL-3-128 | 32 | ×4 = 128 | ×8 = 256 | ×32 = 1,024 | 64 | 32 × 3 = 96 | A B S | Little | |
| HAVAL-3-160 | ×5 = 160 | ||||||||
| HAVAL-3-192 | ×6 = 192 | ||||||||
| HAVAL-3-224 | ×7 = 224 | ||||||||
| HAVAL-3-256 | ×8 = 256 | ||||||||
| HAVAL-4-128 | ×4 = 128 | 32 × 4 = 128 | |||||||
| HAVAL-4-160 | ×5 = 160 | ||||||||
| HAVAL-4-192 | ×6 = 192 | ||||||||
| HAVAL-4-224 | ×7 = 224 | ||||||||
| HAVAL-4-256 | ×8 = 256 | ||||||||
| HAVAL-5-128 | ×4 = 128 | 32 × 5 = 160 | |||||||
| HAVAL-5-160 | ×5 = 160 | ||||||||
| HAVAL-5-192 | ×6 = 192 | ||||||||
| HAVAL-5-224 | ×7 = 224 | ||||||||
| HAVAL-5-256 | ×8 = 256 | ||||||||
| MD2 | 8 | ×16 = 128 | ×32 = 256 | ×48 = 384 | ×16 = 128 | None | 48 × 18 = 864 | B | N/A |
| MD4 | 32 | ×4 = 128 | ×16 = 512 | 64 | 16 × 3 = 48 | A B S | Little | ||
| MD5 | 16 × 4 = 64 | ||||||||
| RIPEMD | 32 | ×4 = 128 | ×8 = 256 | ×16 = 512 | 64 | 16 × 3 = 48 | A B S | Little | |
| RIPEMD-128 | 16 × 4 = 64 | ||||||||
| RIPEMD-256 | ×8 = 256 | ||||||||
| RIPEMD-160 | ×5 = 160 | ×10 = 320 | 16 × 5 = 80 | ||||||
| RIPEMD-320 | ×10 = 320 | ||||||||
| SHA-0 | 32 | ×5 = 160 | ×16 = 512 | 64 | 16 × 5 = 80 | A B S | Big | ||
| SHA-1 | |||||||||
| SHA-256 | ×8 = 256 | ×8 = 256 | 16 × 4 = 64 | ||||||
| SHA-224 | ×7 = 224 | ||||||||
| SHA-512 | 64 | ×8 = 512 | ×8 = 512 | ×16 = 1024 | 128 | 16 × 5 = 80 | |||
| SHA-384 | ×6 = 384 | ||||||||
| Tiger-192 | 64 | ×3 = 192 | ×3 = 192 | ×8 = 512 | 64 | 8 × 3 = 24 | A B L S | Not Specified | |
| Tiger-160 | ×2.5=160 | ||||||||
| Tiger-128 | ×2 = 128 | ||||||||
| Function | Word | Digest | Chaining values |
Computation values |
Block | Length | Words × Passes = Rounds |
Operations | Endian |
| Size (bits) | |||||||||