Seznam hashovacích funkcí - List of hash functions
Toto je seznam hashovací funkce, počítaje v to cyklické kontroly nadbytečnosti, kontrolní součet funkce a kryptografické hashovací funkce.
Kontroly cyklické redundance
název | Délka | Typ |
---|---|---|
cksum (Unix) | 32 bitů | CRC s připojenou délkou |
CRC-16 | 16 bitů | CRC |
CRC-32 | 32 bitů | CRC |
CRC-32 MPEG-2 | 32 bitů | CRC |
CRC-64 | 64 bitů | CRC |
Adler-32 je často mylně považováno za CRC, ale není, je kontrolní součet.
Kontrolní součty
název | Délka | Typ |
---|---|---|
Kontrolní součet BSD (Unix) | 16 bitů | součet s kruhovou rotací |
Kontrolní součet SYSV (Unix) | 16 bitů | součet s kruhovou rotací |
součet8 | 8 bitů | součet |
součet16 | 16 bitů | součet |
součet24 | 24 bitů | součet |
součet32 | 32 bitů | součet |
fletcher-4 | 4 bity | součet |
fletcher-8 | 8 bitů | součet |
fletcher-16 | 16 bitů | součet |
fletcher-32 | 32 bitů | součet |
Adler-32 | 32 bitů | součet |
xor8 | 8 bitů | součet |
Luhnův algoritmus | 1 desetinná číslice | součet |
Algoritmus Verhoeff | 1 desetinná číslice | součet |
Dammův algoritmus | 1 desetinná číslice | Kvazigroup úkon |
Univerzální rodiny hash funkcí
název | Délka | Typ |
---|---|---|
Rabinův otisk prstu | proměnná | násobit |
hašování tabulky | proměnná | XOR |
univerzální jednosměrná hash funkce | ||
Zobristický hash | proměnná | XOR |
Nekryptografické hashovací funkce
název | Délka | Typ |
---|---|---|
Pearsonův hash | 8 bitů (nebo více) | XOR / stůl |
Paul Hsieh's SuperFastHash[1] | 32 bitů | |
Buzhash | proměnná | XOR / stůl |
Fowler – Noll – Vo hashovací funkce (FNV hash) | 32, 64, 128, 256, 512 nebo 1024 bitů | xor / produkt nebo produkt / XOR |
Jenkinsova hashovací funkce | 32 nebo 64 bitů | XOR / přidání |
Bernstein hash djb2[2] | 32 nebo 64 bitů | shift / add nebo mult / add nebo shift / add / xor nebo mult / xor |
PJW hash / Elf Hash | 32 nebo 64 bitů | přidat, posunout, xor |
MurmurHash | 32, 64 nebo 128 bitů | produkt / rotace |
Rychlý hash[3] | 32, 64 bitů | xorshift operace |
SpookyHash | 32, 64 nebo 128 bitů | vidět Jenkinsova hashovací funkce |
CityHash[4] | 32, 64, 128 nebo 256 bitů | |
FarmHash[5] | 32, 64 nebo 128 bitů | |
MetroHash[6] | 64 nebo 128 bitů | |
číselný hash (nhash)[7] | proměnná | dělení / modulo |
xxHash[8] | 32, 64, 128 bitů | produkt / rotace |
t1ha (rychle pozitivní hash)[9] | 64 a 128 bitů | produkt / rotace / XOR / přidat |
pHash[10] | pevné nebo proměnné | vidět Percepční hašování |
dhash[11] | 128 bitů | vidět Percepční hašování |
SDBM [12][13] | 32 nebo 64 bitů | mult / add nebo shift / add také se používá v GNU AWK |
Klíčové kryptografické hashovací funkce
název | Délka značky | Typ |
---|---|---|
BLAKE2 | libovolný | klíčovaná hash funkce (prefix-MAC) |
BLAKE3 | libovolný | klíčovaná hashovací funkce (dodáváno IV) |
HMAC | ||
KMAC | libovolný | založené na Keccaku |
MD6 | 512 bitů | Merkle strom NLFSR |
Jedním klíčem MAC (OMAC; CMAC) | ||
PMAC (kryptografie) | ||
Poly1305-AES | 128 bitů | nonce-based |
SipHash | 64 bitů | nekolizně odolný PRF |
HighwayHash[14] | 64, 128 nebo 256 bitů | nekolizně odolný PRF |
UMAC | ||
VMAC |
Nezařízené kryptografické hashovací funkce
název | Délka | Typ |
---|---|---|
BLAKE-256 | 256 bitů | Struktura HAIFA[15] |
BLAKE-512 | 512 bitů | Struktura HAIFA[15] |
BLAKE2s | až 256 bitů | Struktura HAIFA[15] |
BLAKE2b | až 512 bitů | Struktura HAIFA[15] |
BLAKE2X | libovolný | Struktura HAIFA,[15] design funkcí rozšiřitelného výstupu (XOF)[16] |
BLAKE3 | libovolný | Merkle strom |
ECOH | 224 až 512 bitů | hash |
FSB | 160 až 512 bitů | hash |
GOST | 256 bitů | hash |
Grøstl | až 512 bitů | hash |
HAS-160 | 160 bitů | hash |
HAVAL | 128 až 256 bitů | hash |
JH | 224 až 512 bitů | hash |
LSH[17] | 256 až 512 bitů | širokoúhlé potrubí Konstrukce Merkle – Damgård |
MD2 | 128 bitů | hash |
MD4 | 128 bitů | hash |
MD5 | 128 bitů | Konstrukce Merkle – Damgård |
MD6 | až 512 bitů | Merkle strom NLFSR (je to také klíčovaná hash funkce) |
RadioGatún | libovolný | ideální funkce manglování |
RIPEMD | 128 bitů | hash |
RIPEMD-128 | 128 bitů | hash |
RIPEMD-160 | 160 bitů | hash |
RIPEMD-320 | 320 bitů | hash |
SHA-1 | 160 bitů | Konstrukce Merkle – Damgård |
SHA-224 | 224 bitů | Konstrukce Merkle – Damgård |
SHA-256 | 256 bitů | Konstrukce Merkle – Damgård |
SHA-384 | 384 bitů | Konstrukce Merkle – Damgård |
SHA-512 | 512 bitů | Konstrukce Merkle – Damgård |
SHA-3 (podmnožina Keccak) | libovolný | funkce houba |
Přadeno | libovolný | Unikátní bloková iterace |
Snefru | 128 nebo 256 bitů | hash |
Spectral Hash | 512 bitů | širokopásmová konstrukce Merkle – Damgård |
Streebog | 256 nebo 512 bitů | Konstrukce Merkle – Damgård |
SWIFFT | 512 bitů | hash |
Tygr | 192 bitů | Konstrukce Merkle – Damgård |
vířivá vana | 512 bitů | hash |
Viz také
- Shrnutí zabezpečení funkce hash
- Zabezpečené hashovací algoritmy
- Soutěž o hashovací funkci NIST
- Funkce odvození klíče (kategorie)
Reference
- ^ "Hashovací funkce". www.azillionmonkeys.com. Citováno 2015-06-10.
- ^ "Hashovací funkce". www.cse.yorku.ca. Citováno 2020-06-16.
- ^ Zilong Tan. „fast-hash on Github“.
- ^ cityhash na GitHub
- ^ farmhash na GitHub
- ^ MetroHash na GitHub
- ^ Perl kód v horní polovině stránky, anglický text ve spodní polovině
- ^ xxHash na GitHub
- ^ Leonid Jurijev. „t1ha on Github“.
- ^ „pHash.org: Domov pHash, open source perceptual hash library“. pHash.org. Citováno 2020-06-16.
- ^ "dhash". PyPI. 2017-08-23. Citováno 2020-06-16.
- ^ "Hashovací funkce". www.cse.yorku.ca. Citováno 2020-06-16.
- ^ „původní zdrojový kód SDBM“. github zrcadlové úložiště. Citováno 2020-10-30.
- ^ highwayhash na GitHub
- ^ A b C d E Eli Biham a Orr Dunkelman (20. července 2007). „Rámec pro iterační hashovací funkce - HAIFA“. Citovat deník vyžaduje
| deník =
(Pomoc) - ^ Jean-Philippe Aumasson, Samuel Neves, Zooko Wilcox-O’Hearn a Christian Winnerlein (3. prosince 2016). „BLAKE2X“ (PDF). Citovat deník vyžaduje
| deník =
(Pomoc)CS1 maint: více jmen: seznam autorů (odkaz) - ^ Kim, Dong-Chan; Hong, Deukjo; Lee, Jung-Keun; Kim a, Woo-Hwan; Kwon, Daesung (2016). „LSH: Nová rodina rychlých zabezpečených hash funkcí“ (PDF). Citovat deník vyžaduje
| deník =
(Pomoc)