Kalkulačka hash kódu MurmurHash3F
Publikované: 18. februára 2025 o 0:28:16 UTC
Kalkulačka hash kódu, ktorá používa funkciu MurmurHash3F hash na výpočet hash kódu na základe zadávania textu alebo nahrávania súboru.MurmurHash3F Hash Code Calculator
MurmurHash3 je nekryptografická hašovacia funkcia navrhnutá Austinom Applebym v roku 2008. Je široko používaná na univerzálne hašovanie vďaka svojej rýchlosti, jednoduchosti a dobrým distribučným vlastnostiam. Funkcie MurmurHash sú obzvlášť účinné pre dátové štruktúry založené na hash, ako sú hašovacie tabuľky, filtre kvetov a systémy na deduplikáciu údajov.
Variant prezentovaný na tejto stránke je variant 3F, ktorý je optimalizovaný pre 64-bitové systémy. Vytvára 128 bitové (16 bajtové) hash kódy, ktoré sú zvyčajne reprezentované ako 32-miestne hexadecimálne číslo.
Úplné odhalenie: konkrétnu implementáciu hashovacej funkcie použitej na tejto stránke som nenapísal. Ide o štandardnú funkciu, ktorá je súčasťou programovacieho jazyka PHP. Vytvoril som len webové rozhranie, aby som ju tu pre pohodlie sprístupnil verejnosti.
O hashovom algoritme MurmurHash3F
Nie som matematik, ale pokúsim sa vysvetliť túto hašovaciu funkciu pomocou analógie, ktorej rozumejú moji kolegovia nematematici. Ak dávate prednosť vedecky správnemu, úplnému matematickému vysvetleniu, som si istý, že ho nájdete inde ;-)
Teraz si predstavte, že máte veľkú krabicu LEGO kociek. Zakaždým, keď ich usporiadate konkrétnym spôsobom, urobíte fotografiu. Bez ohľadu na to, aké veľké alebo farebné je usporiadanie, fotoaparát vám vždy poskytne malú fotografiu pevnej veľkosti. Táto fotografia predstavuje váš výtvor LEGO, ale v kompaktnej forme.
MurmurHash3 robí niečo podobné s údajmi. Berie akýkoľvek druh údajov (text, čísla, súbory) a zmenšuje ich na malý, pevný „odtlačok prsta“ alebo hodnotu hash. Tento odtlačok pomáha počítačom rýchlo identifikovať, triediť a porovnávať údaje bez toho, aby sa museli pozerať na celú vec.
Ďalšou analógiou by bolo pečenie koláča a MurmurHash3 je recept na premenu tohto koláča na malý koláčik (hash). Toto by bol proces v troch krokoch:
Krok 1: Nasekajte na kúsky (rozbitie údajov)
- Po prvé, MurmurHash3 rozdelí vaše údaje na rovnaké časti, ako je to, že tortu nakrájate na rovnomerné štvorce.
Krok 2: Miešajte ako blázon (miešanie kúskov)
- Každý kus prechádza divokým procesom miešania:
- Preklápanie: Rovnako ako prevrátenie palacinky, preskupuje kúsky.
- Miešanie: Pridáva náhodné ingrediencie (matematické operácie), aby sa veci zmiešali.
- Squishing: Stlačí údaje dohromady, aby sa zabezpečilo, že nevynikne žiadny originálny kus.
Krok 3: Záverečný test chuti (finalizácia)
- Po zmiešaní všetkých kúskov MurmurHash3 ešte raz zamieša, aby sa zabezpečilo, že aj tá najmenšia omrvinka zmeny v pôvodných údajoch úplne zmení chuť (haš).