Crypto Wiki
Advertisement

The following tables compare general and technical information for a number of cryptographic hash functions. Please see the individual functions' articles for further information. This article is not all-inclusive or necessarily up-to-date.

General information[]

Basic general information about the cryptographic hash functions: year, designer, references, etc.

Function Year[gi 1] Designer Derived from Reference
HAVAL 1992 Yuliang Zheng
Josef Pieprzyk
Jennifer Seberry
Website
MD2 1989 Ronald Rivest RFC 1319
MD4 1990 RFC 1320
MD5 1992 MD4
RFC 1321 page 1
RFC 1321
RIPEMD 1990 The RIPE Consortium[1] MD4
RIPEMD-160 page 2
RIPEMD-128
RIPEMD-256
RIPEMD-160
RIPEMD-320
1996 Hans Dobbertin
Antoon Bosselaers
Bart Preneel
RIPEMD[2] Website
SHA-0 1993 NSA SHA-0
SHA-1 1995 SHA-0 FIPS 180--3
SHA-256
SHA-512
SHA-384
2002
SHA-224 2004
GOST R 34.11-94 1994 FAPSI and VNIIstandart GOST 28147-89 RFC 5831
Tiger 1995 Ross Anderson
Eli Biham
Website
Whirlpool 2004 Vincent Rijmen
Paulo Barreto
Website

Notes[]

  1. It refers to the first official description of the algorithm, not designed date.

Compression function[]

The following tables compare technical information for compression functions of cryptographic hash functions. The information comes from the specifications, please reference them for more details.

Function Size (bits)[cf 1] Words
×Passes
=Rounds[cf 2]
Operations[cf 3] Endian[cf 4] Specification
Word Digest Chaining
values
[cf 5]
Computation
values[cf 6]
Block Length[cf 7]
HAVAL-3-128 32 ×4=128 ×8=256 ×32=1024 64 32×3=96 A B S little HAVAL
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 irrelevant RFC 1319
MD4 32 ×4=128 ×16=512 64 16×3=48 A B S little RFC 1320
MD5 16×4=64 RFC 1321
RIPEMD 32 ×4=128 ×8=256 ×16=512 64 16×3=48 A B S little
RIPEMD-128 16×4=64 RIPEMD-160
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 FIPS 180--3
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
GOST R 34.11-94 32 ×8=256 ×8=256 32 4 A B L S little RFC 5831
Tiger-192 64 ×3=192 ×3=192 ×8=512 64 8×3=24 A B L S little Tiger
Tiger-160 ×2.5=160
Tiger-128 ×2=128

Notes[]

  1. The omitted multiplicands are word sizes.
  2. Some authors interchange passes and rounds.
  3. A: addition, subtraction; B: bitwise operation; L: lookup table; S: shift, rotation.
  4. It refers to "byte" endianness only. If the operations consist of bitwise operations and lookup tables only, the endianness is irrelevant.
  5. The size of message digest equals to the size of chaining values usually. In truncated versions of certain cryptographic hash functions such as SHA-384, the former is less than the latter.
  6. The size of chaining values equals to the size of computation values usually. In certain cryptographic hash functions such as RIPEMD-160, the former is less than the latter because RIPEMD-160 use two sets of parallel computaion values and then combine into a single set of chaining values.
  7. The maximum input size = 2length size - 1 bits. For example, the maximum input size of SHA-1 = 264 - 1 bits.

Cryptanalysis[]

The following tables compare cryptanalysis status of cryptographic hash functions. This table is probably out of date.

Function Digest
size
Rounds Best known attacks
Complexity:rounds[c 1]
Collision Second
preimage
Preimage
RIPEMD 128 48 218
RIPEMD-160 160 80 251:48[1]
MD2 128 864 263.3[2] 273[3]
MD4 128 48 3 264 270.4
MD5 128 64 220.96 2123.4
SHA-0 160 80 233.6
SHA-1 160 80 251
SHA-256 256 64 228.5:24 2248.4:42
SHA-512 512 80 232.5:24 2494.6:42
GOST 256 256 2105 2192 2192
Tiger 192 24 262:19 2184.3

Notes[]

  1. The omitted rounds are full.

See also[]

References[]

External links[]

  1. The Hash Function Lounge - A list of hash functions and known attacks, by Paulo Barreto
  2. The eHash Main Page - A wiki for cryptographic hash functions
  3. The NIST Hash Competition Main Page - The competition to become SHA-3
Advertisement