Aller au contenu

Liste de fonctions de hachage

Un article de Wikipédia, l'encyclopédie libre.

Cette page liste les fonctions de hachage. Parmi ces fonctions on trouve des contrôles de redondance cyclique, des sommes de contrôle et des fonctions de hachage cryptographiques.

Contrôle de redondance cyclique

[modifier | modifier le code]
Nom Taille 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 (en) 16 bits CRC

La fonction Adler-32 est souvent prise pour un contrôle de redondance cyclique mais c'est une somme de contrôle.

Somme de contrôles

[modifier | modifier le code]
Nom Taille Type
sum (Unix) 16 ou 32 bits Somme
sum8 8 bits Somme
sum16 16 bits Somme
sum24 24 bits Somme
sum32 32 bits Somme
fletcher-4 4 bits Somme
fletcher-8 8 bits Somme
fletcher-16 16 bits Somme
fletcher-32 32 bits Somme
Adler-32 32 bits Somme
xor8 8 bits Somme
Formule de Luhn 4 bits Somme
Verhoeff algorithm 4 bits Somme
Damm algorithm 1 chiffre décimal Opérations dans un quasigroupe

Familles de fonctions de hachage universelles

[modifier | modifier le code]
Nom Taille Type
Zobrist hashing variable xor
fonction de hachage universelle à sens unique
tabulation hashing variable xor
empreinte de Rabin variable multiply

Fonctions de hachage non cryptographiques

[modifier | modifier le code]
Nom Taille Type
Pearson hashing (en) 8 bits xor/table
Paul Hsieh's SuperFastHash[1] 32 bits
Buzhash variable xor/table
Fowler–Noll–Vo hash function (en)
(FNV Hash)
32, 64, 128, 256,
512, or 1024 bits
xor/product or
product/xor
Jenkins hash function (en) 32 or 64 bits xor/addition
Java hashCode() 32 bits
Bernstein hash djb2[2] 32 bits
PJW hash / Elf Hash 32, 64 bits hash
MurmurHash (en) 32, 64, or 128 bits product/rotation
SpookyHash 32, 64 or 128 bits Cf Jenkins hash function
CityHash 64, 128, or 256 bits
numeric hash (nhash)[3] variable Division/Modulo
xxHash[4] 32, 64 bits

Fonctions de hachage cryptographiques avec clé

[modifier | modifier le code]
Nom Tag Length Type
VMAC
UMAC
Poly1305-AES 128 bits nonce-based
PMAC (cryptography)
SipHash 64 bits non-collision-resistant PRF
One-key MAC
MD6 512 bits Arbre de Merkle NLFSR
Hash-based message authentication code

Fonctions de hachage cryptographiques sans clé

[modifier | modifier le code]
Nom Taille Type
BLAKE-256 256 bits HAIFA structure[5]
BLAKE-512 512 bits HAIFA structure[5]
ECOH 224 to 512 bits hash
FSB 160 to 512 bits hash
GOST 256 bits hash
Grøstl 256 to 512 bits hash
HAS-160 160 bits hash
HAVAL 128 to 256 bits hash
JH 512 bits hash
MD2 128 bits hash
MD4 128 bits hash
MD5 128 bits Construction de Merkle-Damgård
MD6 512 bits Arbre de Merkle NLFSR (C'est aussi une fonction de hachage à clé)
RadioGatún Up to 1216 bits hash
RIPEMD 128 bits hash
RIPEMD-128 128 bits hash
RIPEMD-160 160 bits hash
RIPEMD-320 320 bits hash
SHA-1 160 bits Construction de Merkle-Damgård
SHA-224 224 bits Construction de Merkle-Damgård
SHA-256 256 bits Construction de Merkle-Damgård
SHA-384 384 bits Construction de Merkle-Damgård
SHA-512 512 bits Construction de Merkle-Damgård
SHA-3 (Nommée anciennement Keccak) arbitraire fonction éponge
Skein arbitraire Unique Block Iteration
Snefru 128 or 256 bits hash
Spectral Hash 512 bits Wide pipe Construction de Merkle-Damgård
SWIFFT 512 bits hash
Tiger 192 bits Construction de Merkle-Damgård
Whirlpool 512 bits hash

Notes et références

[modifier | modifier le code]
(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « List of hash functions » (voir la liste des auteurs).
  1. (en)« Hash functions », sur www.azillionmonkeys.com (consulté le )
  2. http://www.cse.yorku.ca/~oz/hash.html
  3. Perl code at top half of page, English text at bottom half
  4. Liste de fonctions de hachage sur GitHub
  5. a et b Eli Biham and Orr Dunkelman, « A Framework for Iterative Hash Functions – HAIFA »,

Articles connexes

[modifier | modifier le code]