Miklix

Fowler-Noll-Vo FNV1-64 Kalkulator hash koda

Objavljeno: 17. februar 2025. u 21:36:34 UTC
Posljednje ažurirano: 12. januar 2026. u 13:26:59 UTC

Kalkulator hash koda koji koristi Fowler-Noll-Vo 1 64-bitnu (FNV1-64) hash funkciju za izračunavanje hash koda na osnovu unosa teksta ili otpremanja datoteke.

Ova stranica je mašinski prevedena sa engleskog kako bi bila dostupna što većem broju ljudi. Nažalost, mašinsko prevođenje još nije usavršena tehnologija, pa može doći do grešaka. Ako želite, možete pogledati originalnu englesku verziju ovdje:

Fowler-Noll-Vo FNV1-64 Hash Code Calculator

FNV-1 64-bitna hash funkcija dio je Fowler-Noll-Vo (FNV) porodice hash funkcija, dizajniranih za brzo hashiranje uz održavanje dobre distribucije hash vrijednosti. Često se koristi u aplikacijama kao što su hash tabele, kontrolne sume i pretrage podataka. Proizvodi 64-bitni (8 bajtni) hash kod, često predstavljen kao 16-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.


Izračunajte novi hash kod

Podaci dostavljeni ili datoteke učitane putem ovog obrasca će se čuvati na serveru onoliko dugo koliko je potrebno da se generiše traženi hash kod. Biće izbrisan neposredno prije nego što se rezultat vrati u vaš pretraživač.

Ulazni podaci:



Poslani tekst je kodiran UTF-8. Pošto hash funkcije rade na binarnim podacima, rezultat će biti drugačiji nego da je tekst u drugom kodiranju. Ako trebate izračunati hash teksta u određenom kodiranju, trebali biste umjesto toga prenijeti datoteku.



O 64-bitnom hash algoritmu Fowler-Noll-Vo FNV-1

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, zastrašujuće matematičko objašnjenje, siguran sam da ga možete pronaći negdje drugdje ;-)

Prvo, zamislimo FNV-1 algoritam kao recept za pravljenje posebnog smoothieja. Svaki sastojak koji dodate (poput voća, mlijeka ili meda) predstavlja dio podatka - poput slova, brojeva ili čak cijele datoteke.

Sada je cilj pomiješati ove sastojke na vrlo specifičan način tako da čak i najmanja promjena u receptu (poput dodavanja jedne dodatne borovnice) učini da okus smoothieja bude potpuno drugačiji. Tako funkcioniraju hash funkcije - one stvaraju jedinstveni "okus" (ili hash vrijednost) za svaki jedinstveni skup sastojaka (ili ulaznih podataka).

Način na koji FNV-1 algoritam ovo radi je proces koji se sastoji od više koraka:

Korak 1: Počnite s bazom (pomaknuta baza)

Zamislite ovo kao da sipate posebnu bazu za smoothie u blender. Ova baza je uvijek ista, bez obzira na sastojke koje dodate. U FNV-1, ovo se naziva "offset osnova" - samo fensi početni broj.

Korak 2: Dodajte sastojke jedan po jedan (obrada podataka)

Sada počinjete dodavati sastojke, jedan po jedan - recimo jagodu, zatim bananu, pa malo meda. Svaki od njih predstavlja bajt podataka.

Korak 3: Pomiješajte sa tajnim multiplikatorom (FNV Prime)

Nakon dodavanja svakog sastojka, pritisnete dugme za blendanje, ali evo u čemu je stvar: blender sve množi tajnim "magičnim brojem" koji se zove FNV prost broj. Ovo pomaže da se stvari dobro izmiješaju.

Korak 4: Dodajte malo magije (XOR operacija)

Prije dodavanja sljedećeg sastojka, posipate malo magične prašine (ovo je XOR operacija). To je kao da mijenjate okus na neočekivane načine, osiguravajući da čak i male promjene naprave veliku razliku.

Korak 5: Ponavljajte dok ne završite

Nastavljaš miksati i posipati magiju nakon svakog novog sastojka dok sve ne obradiš.

Korak 6: Završni smoothie (Hash vrijednost)

Kada završite, prelijte smoothie. Konačni okus (hash vrijednost) je jedinstven za tu tačnu kombinaciju sastojaka. Da ste dodali čak i jednu dodatnu borovnicu, okus bi bio potpuno drugačiji.

Verzija predstavljena ovdje je originalna 64-bitna verzija FNV-1. Dostupna je i poboljšana 64-bitna verzija FNV-1a: Link

Dodatno čitanje

Ako vam se svidio ovaj post, možda će vam se svidjeti i ovi prijedlozi:


Podijelite na BlueskyPodijelite na FacebookuPodijelite na LinkedIn-uPodijelite na Tumblr-uPodijeli na XPodijelite na LinkedIn-uPrikači na Pinterest

Mikkel Christensen

O autoru

Mikkel Christensen
Mikkel je kreator i vlasnik miklix.com. Ima preko 20 godina iskustva kao profesionalni kompjuterski programer/programer softvera i trenutno je zaposlen sa punim radnim vremenom u velikoj evropskoj IT korporaciji. Kada ne piše blog, svoje slobodno vrijeme provodi na širokom spektru interesovanja, hobija i aktivnosti, što se u određenoj mjeri može odraziti na različite teme koje se obrađuju na ovoj web stranici.