MurmurHash3C Kalkulator Hash Koda
Objavljeno: 18. februar 2025. u 00:36:25 UTC
Posljednje ažurirano: 12. januar 2026. u 13:32:29 UTC
MurmurHash3C Hash Code Calculator
MurmurHash3 je nekriptografska hash funkcija koju je dizajnirao Austin Appleby 2008. godine. Široko se koristi za hashiranje opće namjene zbog svoje brzine, jednostavnosti i dobrih svojstava distribucije. MurmurHash funkcije su posebno efikasne za strukture podataka zasnovane na hashu kao što su hash tabele, Bloom filteri i sistemi za deduplikaciju podataka.
Varijanta predstavljena na ovoj stranici je 3C varijanta, koja je optimizovana za 32-bitne sisteme, isto kao i 3A varijanta. Međutim, za razliku od 3A varijante, ona proizvodi 128-bitne (16-bajtne) heš kodove, obično predstavljene kao 32-cifreni heksadecimalni broj.
Potpuno otkrivanje: Nisam napisao konkretnu implementaciju hash funkcije koja se koristi na ovoj stranici. To je standardna funkcija uključena u programski jezik PHP. Napravio sam samo web sučelje da ga ovdje učinim javno dostupnim radi praktičnosti.
O MurmurHash3C hash algoritmu
Nisam matematičar, ali pokušat ću objasniti ovu hash funkciju koristeći analogiju koju moje kolege nematematičari mogu razumjeti. Ako više volite naučno ispravno, potpuno matematičko objašnjenje, siguran sam da ga možete pronaći negdje drugdje ;-)
Sada zamislite da imate veliku kutiju LEGO kockica. Svaki put kada ih složite na određeni način, napravite fotografiju. Bez obzira na to koliko je aranžman velik ili šaren, kamera vam uvijek daje malu fotografiju fiksne veličine. Ta fotografija predstavlja vašu LEGO kreaciju, ali u kompaktnom obliku.
MurmurHash3 radi nešto slično s podacima. Uzima bilo koju vrstu podataka (tekst, brojeve, datoteke) i smanjuje ih na mali, fiksni "otisak prsta" ili hash vrijednost. Ovaj otisak prsta pomaže računarima da brzo identificiraju, sortiraju i upoređuju podatke bez potrebe da gledaju cijelu stvar.
Druga analogija bi bila kao pečenje torte, a MurmurHash3 je recept za pretvaranje te torte u mali kolačić (hash). To bi bio proces u tri koraka:
Korak 1: Isjeckajte na komade (razbijanje podataka)
- Prvo, MurmurHash3 dijeli vaše podatke na jednake dijelove, kao što tortu reže na jednake kvadrate.
Korak 2: Miješajte kao ludi (miješanje komadića)
- Svaki komad prolazi kroz divlji proces miješanja: Okretanje: Poput okretanja palačinke, preuređuje dijelove. Miješanje: Dodaje nasumične sastojke (matematičke operacije) kako bi se stvari izmiješale. Gnječenje: Pritišće podatke kako bi se osiguralo da se nijedan originalni komad ne ističe.
Korak 3: Završni test okusa (Finalizacija)
- Nakon miješanja svih dijelova, MurmurHash3 ih još jednom promiješa kako bi se osiguralo da čak i najmanja promjena u originalnim podacima potpuno promijeni okus (hash-a).
Dodatno čitanje
Ako vam se svidio ovaj post, možda će vam se svidjeti i ovi prijedlozi:
