Liste de fonctions de hachage
Apparence
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).
- (en)« Hash functions », sur www.azillionmonkeys.com (consulté le )
- http://www.cse.yorku.ca/~oz/hash.html
- Perl code at top half of page, English text at bottom half
- Liste de fonctions de hachage sur GitHub
- Eli Biham and Orr Dunkelman, « A Framework for Iterative Hash Functions – HAIFA »,