List of hash functions


This is a list of hash functions, including cyclic redundancy checks, checksum functions, and cryptographic hash functions.

Cyclic redundancy checks

NameLengthType
cksum 32 bitsCRC with length appended
CRC-1616 bitsCRC
CRC-3232 bitsCRC
CRC-32 MPEG-232 bitsCRC
CRC-6464 bitsCRC

Adler-32 is often mistaken for a CRC, but it is not, it is a checksum.

Checksums

NameLengthType
BSD checksum 16 bitssum with circular rotation
SYSV checksum 16 bitssum with circular rotation
sum88 bitssum
sum1616 bitssum
sum2424 bitssum
sum3232 bitssum
fletcher-44 bitssum
fletcher-88 bitssum
fletcher-1616 bitssum
fletcher-3232 bitssum
Adler-3232 bitssum
xor88 bitssum
Luhn algorithm1 decimal digitsum
Verhoeff algorithm1 decimal digitsum
Damm algorithm1 decimal digitQuasigroup operation

Universal hash function families

NameLengthType
Rabin fingerprintvariablemultiply
tabulation hashingvariableXOR
universal one-way hash function
Zobrist hashingvariableXOR

Non-cryptographic hash functions

Keyed cryptographic hash functions

NameTag LengthType
BLAKE2arbitrarykeyed hash function
BLAKE3arbitrarykeyed hash function
HMAC
KMACarbitrarybased on Keccak
MD6512 bitsMerkle tree NLFSR
One-key MAC
PMAC
Poly1305-AES128 bitsnonce-based
SipHash64 bitsnon-collision-resistant PRF
HighwayHash64, 128 or 256 bitsnon-collision-resistant PRF
UMAC
VMAC

Unkeyed cryptographic hash functions

NameLengthType
BLAKE-256256 bitsHAIFA structure
BLAKE-512512 bitsHAIFA structure
BLAKE2sup to 256 bitsHAIFA structure
BLAKE2bup to 512 bitsHAIFA structure
BLAKE2XarbitraryHAIFA structure, extensible-output functions design
BLAKE3arbitraryMerkle tree
ECOH224 to 512 bitshash
FSB160 to 512 bitshash
GOST256 bitshash
Grøstlup to 512 bitshash
HAS-160160 bitshash
HAVAL128 to 256 bitshash
JH224 to 512 bitshash
LSH256 to 512 bitswide-pipe Merkle–Damgård construction
MD2128 bitshash
MD4128 bitshash
MD5128 bitsMerkle–Damgård construction
MD6up to 512 bitsMerkle tree NLFSR
RadioGatúnarbitraryideal mangling function
RIPEMD128 bitshash
RIPEMD-128128 bitshash
RIPEMD-160160 bitshash
RIPEMD-320320 bitshash
SHA-1160 bitsMerkle–Damgård construction
SHA-224224 bitsMerkle–Damgård construction
SHA-256256 bitsMerkle–Damgård construction
SHA-384384 bitsMerkle–Damgård construction
SHA-512512 bitsMerkle–Damgård construction
SHA-3 arbitrarysponge function
SkeinarbitraryUnique Block Iteration
Snefru128 or 256 bitshash
Spectral Hash512 bitswide-pipe Merkle–Damgård construction
Streebog256 or 512 bitsMerkle–Damgård construction
SWIFFT512 bitshash
Tiger192 bitsMerkle–Damgård construction
Whirlpool512 bitshash