Calculator de cod hash CRC-32
Publicat: 17 februarie 2025 la 18:12:13 UTC
Calculator de cod hash care utilizează funcția hash CRC-32 (Cyclic Redundancy Check 32 bit) pentru a calcula un cod hash bazat pe introducerea textului sau încărcarea fișierului.CRC-32 Hash Code Calculator
Cyclic Redundancy Check (CRC) este un cod de detectare a erorilor folosit în mod obișnuit pentru a detecta modificări accidentale ale datelor brute. Deși nu este, din punct de vedere tehnic, o funcție hash criptografică, CRC-32 este adesea denumit hash datorită capacității sale de a produce o ieșire de dimensiune fixă (32 de biți) de la intrare cu lungime variabilă.
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.
Despre algoritmul CRC-32 Hash
Nu sunt matematician, dar voi încerca să explic această funcție hash cu o analogie simplă. Spre deosebire de multe dintre funcțiile hash criptografice, nu este un algoritm deosebit de complicat, așa că probabil va fi bine ;-)
Imaginează-ți că trimiți o scrisoare prin poștă, dar ești îngrijorat că s-ar putea deteriora înainte de a ajunge la destinatar. Pe baza conținutului scrisorii, calculezi o sumă de control CRC-32 și o scrii pe plic. Când destinatarul primește scrisoarea, el sau ea poate calcula și suma de control și poate vedea dacă se potrivește cu ceea ce ați scris. Dacă se întâmplă, scrisoarea nu a fost deteriorată sau schimbată pe parcurs.
Modul în care CRC-32 face acest lucru este un proces în patru etape:
Pasul 1: Adăugați puțin spațiu suplimentar (căptușeală)
- CRC adaugă puțin spațiu suplimentar la sfârșitul mesajului (cum ar fi ambalarea alunelor într-o cutie).
- Acest lucru îl ajută să identifice mai ușor erorile.
Pasul 2: Rigla magică (polinomul)
- CRC-32 folosește o „riglă magică” specială pentru a măsura datele.
- Gândiți-vă la această riglă ca la un model de denivelări și caneluri (acesta este polinomul, dar nu vă faceți griji pentru acest cuvânt).
- Cea mai comună „riglă” pentru CRC-32 este un model fix.
Pasul 3: alunecarea riglei (procesul de împărțire)
- Acum CRC glisează rigla peste mesaj.
- La fiecare loc, verifică dacă denivelările și canelurile se aliniază.
- Dacă nu se aliniază, CRC face o notă (acest lucru se face folosind XOR simplu, cum ar fi pornirea sau oprirea comutatoarelor).
- Continuă să gliseze și să rotească întrerupătoarele până ajunge la capăt.
Pasul 4: rezultatul final (suma de control)
- După ce glisați rigla pe întregul mesaj, rămâneți cu un număr mic (lungime de 32 de biți) care reprezintă datele originale.
- Acest număr este ca o amprentă digitală unică pentru mesaj.
- Aceasta este suma de control CRC-32.
Versiunea prezentată pe pagină este funcția originală CRC-32, care este cea pe care ar trebui să o utilizați pentru cea mai bună compatibilitate cu alte sisteme.
Am calculatoare și pentru celelalte variante: