Miklix

Calculator de cod hash Fowler-Noll-Vo FNV1-64

Publicat: 17 februarie 2025 la 21:35:07 UTC
Ultima actualizare: 12 ianuarie 2026 la 13:26:44 UTC

Calculator de cod hash care utilizează funcția hash Fowler-Noll-Vo 1 pe 64 de biți (FNV1-64) pentru a calcula un cod hash pe baza introducerii de text sau a încărcării unui fișier.

Această pagină a fost tradusă automat din limba engleză pentru a o face accesibilă cât mai multor persoane. Din păcate, traducerea automată nu este încă o tehnologie perfecționată, astfel încât pot apărea erori. Dacă preferați, puteți vizualiza versiunea originală în limba engleză aici:

Fowler-Noll-Vo FNV1-64 Hash Code Calculator

Funcția hash FNV-1 pe 64 de biți face parte din familia de funcții hash Fowler-Noll-Vo (FNV), concepută pentru hashing rapid, menținând în același timp o bună distribuție a valorilor hash. Este utilizată în mod obișnuit în aplicații precum tabele hash, sume de control și căutări de date. Produce un cod hash pe 64 de biți (8 octeți), adesea reprezentat ca un număr hexazecimal de 16 cifre.

Dezvăluire completă: nu am scris implementarea specifică a funcției hash utilizată pe această pagină. Aceasta este o funcție standard inclusă în limbajul de programare PHP. Am creat doar interfața web pentru a o pune la dispoziția publicului aici pentru comoditate.


Calculați noul cod Hash

Datele transmise sau fișierele încărcate prin intermediul acestui formular vor fi păstrate pe server doar atât timp cât este necesar pentru a genera codul hash solicitat. Acestea vor fi șterse imediat înainte ca rezultatul să fie returnat browserului dumneavoastră.

Date de intrare:



Textul trimis este codificat UTF-8. Deoarece funcțiile hash operează cu date binare, rezultatul va fi diferit decât dacă textul ar fi în altă codificare. Dacă trebuie să calculați un hash al unui text într-o anumită codificare, trebuie să încărcați un fișier.



Despre algoritmul hash Fowler-Noll-Vo FNV-1 pe 64 de biți

Nu sunt matematician, dar voi încerca să explic această funcție hash folosind o analogie pe care colegii mei non-matematicieni o pot înțelege. Dacă preferi o explicație corectă din punct de vedere științific, de tip matematică înfiorătoare, sunt sigur că o poți găsi în altă parte ;-)

În primul rând, să ne gândim la algoritmul FNV-1 ca la o rețetă pentru prepararea unui smoothie special. Fiecare ingredient pe care îl adăugați (cum ar fi fructe, lapte sau miere) reprezintă o informație - cum ar fi litere, numere sau chiar un fișier întreg.

Acum, scopul este de a amesteca aceste ingrediente într-un mod foarte specific, astfel încât chiar și cea mai mică modificare a rețetei (cum ar fi adăugarea unei afine în plus) să facă smoothie-ul să aibă un gust complet diferit. Așa funcționează funcțiile hash - ele creează o „aromă” unică (sau o valoare hash) pentru fiecare set unic de ingrediente (sau date de intrare).

Modul în care algoritmul FNV-1 face acest lucru este un proces în mai mulți pași:

Pasul 1: Începeți cu o bază (bază de decalaj)

Gândește-te la asta ca și cum ai turna o bază specială de smoothie în blender. Această bază este întotdeauna aceeași, indiferent de ingredientele pe care le adaugi. În FNV-1, aceasta se numește „bază de compensare” - doar un număr de pornire fantezist.

Pasul 2: Adăugați ingredientele unul câte unul (procesarea datelor)

Acum începeți să adăugați ingredientele, unul câte unul - să zicem o căpșună, apoi o banană, apoi niște miere. Fiecare dintre acestea reprezintă un octet de date.

Pasul 3: Amestecați cu un multiplicator secret (FNV Prime)

După ce adaugi fiecare ingredient, apeși butonul de mixare, dar iată surpriza: blenderul înmulțește totul cu un „număr magic” secret numit FNV prim. Acest lucru ajută la mixarea foarte bună a ingredientelor.

Pasul 4: Adăugați o notă de magie (operația XOR)

Înainte de a adăuga următorul ingredient, presari puțin praf magic (aceasta este operațiunea XOR). E ca și cum ai inversa aroma în moduri neașteptate, asigurându-te că până și micile schimbări fac o mare diferență.

Pasul 5: Repetați până la finalizare

Continui să mixezi și să presari magie după fiecare ingredient nou până când ai procesat totul.

Pasul 6: Smoothie final (valoare hash)

Când ai terminat, torni smoothie-ul. Gustul final (valoarea de hash) este unic pentru acea combinație exactă de ingrediente. Dacă ai fi adăugat măcar o afină în plus, ar fi avut un gust complet diferit.

Versiunea prezentată aici este versiunea originală FNV-1 pe 64 de biți. Există, de asemenea, o versiune îmbunătățită FNV-1a pe 64 de biți disponibilă: Link

Lectură suplimentară

Dacă ți-a plăcut această postare, s-ar putea să-ți placă și aceste sugestii:


Distribuie pe BlueskyDistribuie pe FacebookDistribuie pe LinkedInDistribuie pe TumblrDistribuie pe XDistribuie pe LinkedInPin pe Pinterest

Mikkel Christensen

Despre autor

Mikkel Christensen
Mikkel este creatorul și proprietarul miklix.com. El are peste 20 de ani de experiență ca programator de calculatoare/dezvoltator software profesionist și este în prezent angajat cu normă întreagă pentru o mare corporație europeană de IT. Atunci când nu scrie pe blog, își petrece timpul liber cu o gamă largă de interese, hobby-uri și activități, care se pot reflecta într-o anumită măsură în varietatea de subiecte abordate pe acest site.