Miklix

Calculator de cod hash MurmurHash3C

Publicat: 18 februarie 2025 la 00:34:20 UTC

Calculator de cod hash care utilizează funcția hash MurmurHash3C pentru a calcula un cod hash pe baza introducerii textului sau a încărcării fișierului.

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:

MurmurHash3C Hash Code Calculator

MurmurHash3 este o funcție hash non-criptografică proiectată de Austin Appleby în 2008. Este utilizată pe scară largă pentru hashing de uz general datorită vitezei, simplității și proprietăților sale bune de distribuție. Funcțiile MurmurHash sunt deosebit de eficiente pentru structurile de date bazate pe hash, cum ar fi tabelele hash, filtrele bloom și sistemele de deduplicare a datelor.

Varianta prezentată pe această pagină este varianta 3C, care este optimizată pentru sisteme pe 32 de biți, la fel ca și varianta 3A. Cu toate acestea, spre deosebire de varianta 3A, produce coduri hash de 128 de biți (16 octeți), reprezentate de obicei ca un număr hexazecimal de 32 de 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 MurmurHash3C Hash

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ă preferați o explicație matematică completă, corectă din punct de vedere științific, sunt sigur că o puteți găsi în altă parte ;-)

Acum, imaginați-vă că aveți o cutie mare de cărămizi LEGO. De fiecare dată când le aranjezi într-un mod anume, faci o poză. Indiferent cât de mare sau colorată este aranjamentul, aparatul foto îți oferă întotdeauna o fotografie mică, cu dimensiuni fixe. Fotografia respectivă reprezintă creația ta LEGO, dar într-o formă compactă.

MurmurHash3 face ceva similar cu datele. Preia orice fel de date (text, numere, fișiere) și le micșorează la o „amprentă” sau o valoare hash mică, fixă. Această amprentă ajută computerele să identifice, să sorteze și să compare rapid datele fără a fi nevoie să se uite la întreg.

O altă analogie ar fi ca și cum ați coace un tort și MurmurHash3 este rețeta de a transforma acel tort într-un mic cupcake (hașul). Acesta ar fi un proces în trei etape:

Pasul 1: Tăiați în bucăți (ruperea datelor)

  • În primul rând, MurmurHash3 îți taie datele în bucăți egale, cum ar fi tăierea prăjiturii în pătrate egale.

Pasul 2: amestecați ca un nebun (amestecând bucățile)

  • Fiecare piesă trece printr-un proces sălbatic de amestecare:
    • Întoarcerea: ca și răsturnarea unei clătite, rearanjează bucățile.
    • Agitarea: adaugă ingrediente aleatorii (operații matematice) pentru a amesteca lucrurile.
    • Squishing: Apasă datele împreună pentru a te asigura că nicio piesă originală nu iese în evidență.

Pasul 3: Testul final al gustului (finalizare)

  • După ce a amestecat toate bucățile, MurmurHash3 îi dă o ultimă agitație pentru a se asigura că chiar și cea mai mică firimitură de modificare a datelor originale ar schimba total aroma (hașul).

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

Mikkel Bang Christensen

Despre autor

Mikkel Bang 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.