CRC-32 jaucējkoda kalkulators
Publicēts: 2025. gada 17. februāris 18:11:48 UTC
Jaucējkoda kalkulators, kas izmanto CRC-32 (cikliskās atlaišanas pārbaudes 32 bitu) jaukšanas funkciju, lai aprēķinātu jaucējkodu, pamatojoties uz teksta ievadi vai faila augšupielādi.CRC-32 Hash Code Calculator
Cikliskā redundances pārbaude (CRC) ir kļūdu noteikšanas kods, ko parasti izmanto, lai noteiktu nejaušas izmaiņas neapstrādātajos datos. Lai gan tehniski tā nav kriptogrāfiska jaucējfunkcija, CRC-32 bieži tiek saukta par jaucējfunkciju, jo tā spēj radīt fiksēta izmēra izvadi (32 biti) no mainīga garuma ievades.
Pilnīga informācijas izpaušana: es neesmu rakstījis šajā lapā izmantotās hash funkcijas konkrēto implementāciju. Tā ir standarta funkcija, kas iekļauta PHP programmēšanas valodā. Es tikai izveidoju tīmekļa saskarni, lai padarītu to publiski pieejamu šeit ērtības labad.
Par CRC-32 hash algoritmu
Es neesmu matemātiķis, bet es mēģināšu izskaidrot šo jaucējfunkciju ar vienkāršu analoģiju. Atšķirībā no daudzām kriptogrāfijas jaucējfunkcijām, tas nav īpaši sarežģīts algoritms, tāpēc, iespējams, viss būs kārtībā ;-)
Iedomājieties, ka sūtāt vēstuli pa pastu, taču uztraucaties, ka tā var tikt sabojāta, pirms tā nonāk pie adresāta. Pamatojoties uz vēstules saturu, jūs aprēķiniet CRC-32 kontrolsummu un uzrakstiet to uz aploksnes. Kad adresāts saņem vēstuli, viņš vai viņa var arī aprēķināt kontrolsummu un redzēt, vai tā atbilst jūsu rakstītajam. Ja tā notiek, vēstule nav bojāta vai mainīta.
Veids, kā CRC-32 to dara, ir četru posmu process:
1. darbība: pievienojiet papildu vietu (polsterējums)
- CRC ziņojuma beigās pievieno nedaudz papildu vietas (piemēram, zemesriekstu iesaiņošana kastē).
- Tas palīdz vieglāk pamanīt kļūdas.
2. darbība: burvju lineāls (polinoms)
- CRC-32 datu mērīšanai izmanto īpašu "maģisko lineālu".
- Padomājiet par šo lineālu kā par izciļņiem un rievām (tas ir polinoms, taču neuztraucieties par šo vārdu).
- Visizplatītākais CRC-32 "lineāls" ir fiksēts raksts.
3. darbība: lineāla bīdīšana (dalīšanas process)
- Tagad CRC slīd lineālu pāri ziņojumam.
- Katrā vietā tā pārbauda, vai izciļņi un rievas sakrīt.
- Ja tie nesakrīt, CRC veic piezīmi (tas tiek darīts, izmantojot vienkāršu XOR, piemēram, ieslēdzot vai izslēdzot slēdžus).
- Tas turpina bīdīt un pagriezt slēdžus, līdz sasniedz beigas.
4. darbība: gala rezultāts (kontrolsumma)
- Pēc lineāla slīdēšanas pāri visam ziņojumam jums paliek neliels skaitlis (32 biti garš), kas apzīmē sākotnējos datus.
- Šis numurs ir kā unikāls ziņojuma pirkstu nospiedums.
- Šī ir CRC-32 kontrolsumma.
Lapā redzamā versija ir oriģinālā CRC-32 funkcija, kas ir jāizmanto, lai nodrošinātu vislabāko saderību ar citām sistēmām.
Man ir kalkulatori arī citiem variantiem: