This is a list of hash functions, including cyclic redundancy checks, checksum functions, and cryptographic hash functions.
Contents
Cyclic redundancy checks
| Name |
Length |
Type |
| BSD checksum |
16 bits |
CRC |
| Checksum |
32 bits |
CRC |
| CRC-16 |
16 bits |
CRC |
| CRC-32 |
32 bits |
[CRC |
| CRC-32 MPEG-2 |
32 bits |
CRC |
| CRC-64 |
64 bits |
CRC |
| SYSV checksum |
16 bits |
CRC |
Adler-32 is often mistaken for a CRC, but it is not, it is a #Checksums|checksum.
Checksums
| Name |
Length |
Type |
| sum (Unix) |
16 or 32 bits |
sum |
| sum8 |
8 bits |
sum |
| sum16 |
16 bits |
sum |
| sum24 |
24 bits |
sum |
| sum32 |
32 bits |
sum |
| fletcher-4 |
4 bits |
sum |
| fletcher-8 |
8 bits |
sum |
| fletcher-16 |
16 bits |
sum |
| fletcher-32 |
32 bits |
sum |
| Adler-32 |
32 bits |
sum |
| xor8 |
8 bits |
sum |
| Luhn algorithm |
4 bits |
sum |
| Verhoeff algorithm |
4 bits |
sum |
| Damm algorithm |
1 decimal digit |
Quasigroup operation |
Universal hash function families
Non-cryptographic hash functions
| Name |
Length |
Type |
| Pearson hashing |
8 bits (or more) |
XOR/table |
| Paul Hsieh’s SuperFastHash |
32 bits |
|
| Buzhash |
variable |
XOR/table |
| Fowler–Noll–Vo hash function (FNV Hash) |
32, 64, 128, 256, 512, or 1024 bits |
xor/product or product/XOR |
| Jenkins hash function |
32 or 64 bits |
XOR/addition |
| Java hashCode() |
32 bits |
|
| Bernstein hash djb2 |
32 bits |
|
| PJW hash / Elf Hash |
32 or 64 bits |
hash |
| MurmurHash |
32, 64, or 128 bits |
product/rotation |
| SpookyHash |
32, 64, or 128 bits |
see Jenkins hash function |
| CityHash |
64, 128, or 256 bits |
|
| numeric hash (nhash) |
variable |
Division/Modulo |
| xxHash |
32, 64 bits |
product/rotation |
| HighwayHash |
64, 128, or 256 bits |
product/permutation |
| t1ha (Fast Positive Hash) |
32, 64 bits |
product/rotation/XOR/add |
| jodyhash |
16, 32, or 64 bits |
add/rotation/XOR |
Keyed cryptographic hash functions
| Name |
Tag Length |
Type |
| VMAC |
|
|
| UMAC |
|
|
| BLAKE2 |
up to 512 bits |
keyed hash function (prefix-MAC) |
| Poly1305-AES |
128 bits |
nonce-based |
| PMAC (cryptography) |
|
|
| SipHash |
64 bits |
non-collision-resistant PRF |
| One-key MAC |
|
|
| MD6 |
512 bits |
Merkle tree NLFSR |
| HMAC |
|
|
Unkeyed cryptographic hash functions
See Also on BitcoinWiki
Source
http://wikipedia.org/