Miklix

Kalkulačka hash kódu CRC-32B

Publikované: 17. februára 2025 o 18:29:42 UTC
Posledná aktualizácia: 12. januára 2026 o 9:16:05 UTC

Kalkulačka hash kódu, ktorá používa hash funkciu CRC-32B (Cyclic Redundancy Check 32 bit, variant B) na výpočet hash kódu na základe zadaného textu alebo nahraného súboru.

Táto stránka bola strojovo preložená z angličtiny, aby bola prístupná čo najväčšiemu počtu ľudí. Žiaľ, strojový preklad ešte nie je dokonalá technológia, takže sa môžu vyskytnúť chyby. Ak chcete, môžete si pozrieť pôvodnú anglickú verziu tu:

CRC-32B Hash Code Calculator

Cyklická redundantná kontrola (CRC) je kód na detekciu chýb, ktorý sa bežne používa na detekciu náhodných zmien v nespracovaných dátach. Hoci CRC-32 technicky nie je kryptografickou hašovacou funkciou, často sa označuje ako hash kvôli svojej schopnosti vytvoriť výstup s pevnou veľkosťou (32 bitov) z vstupu s premenlivou dĺžkou. Verzia uvedená na tejto stránke je variant CRC-32B, čo je v skutočnosti len zvláštnosť jazyka PHP, ktorá obracia bity (little-endian vs. big-endian v pôvodnom CRC-32).

Úplné odhalenie: konkrétnu implementáciu hashovacej funkcie použitej na tejto stránke som nenapísal. Ide o štandardnú funkciu, ktorá je súčasťou programovacieho jazyka PHP. Vytvoril som len webové rozhranie, aby som ju tu pre pohodlie sprístupnil verejnosti.


Výpočet nového kódu Hash

Údaje odoslané alebo súbory nahrané prostredníctvom tohto formulára sa na serveri uchovávajú len tak dlho, ako je potrebné na vygenerovanie požadovaného kódu hash. Vymažú sa bezprostredne pred vrátením výsledku do prehliadača.

Vstupné údaje:



Odoslaný text je kódovaný v UTF-8. Keďže hašovacie funkcie pracujú s binárnymi údajmi, výsledok bude iný, ako keby bol text v inom kódovaní. Ak potrebujete vypočítať hash textu v konkrétnom kódovaní, mali by ste namiesto toho nahrať súbor.



O hašovacom algoritme CRC-32B

Nie som matematik, ale pokúsim sa vysvetliť túto hašovaciu funkciu jednoduchou analógiou. Na rozdiel od mnohých kryptografických hašovacích funkcií to nie je nijako zvlášť zložitý algoritmus, takže to pravdepodobne bude v poriadku ;-)

Predstavte si, že posielate list poštou, ale obávate sa, že by sa mohol poškodiť skôr, ako dorazí k príjemcovi. Na základe obsahu listu vypočítate kontrolný súčet CRC-32 a napíšete ho na obálku. Keď príjemca list dostane, môže tiež vypočítať kontrolný súčet a zistiť, či sa zhoduje s tým, čo ste napísali. Ak áno, list nebol počas cesty poškodený ani zmenený.

CRC-32 to robí v štyroch krokoch:

Krok 1: Pridajte trochu viac miesta (odsadenie)

  • CRC pridáva na koniec správy trochu viac miesta (ako balenie arašidov do krabice).
  • To mu pomáha ľahšie odhaliť chyby.

Krok 2: Magické pravítko (polynóm)

  • CRC-32 používa na meranie údajov špeciálne „magické pravítko“. Predstavte si toto pravítko ako vzor hrbolčekov a drážok (toto je polynóm, ale s týmto slovom sa nemusíte báť). Najbežnejším „pravítkom“ pre CRC-32 je pevný vzor.

Krok 3: Posúvanie pravítka (proces delenia)

  • CRC teraz posúva pravítko po správe. Na každom mieste kontroluje, či sa hrbole a drážky zhodujú. Ak sa nezhodujú, CRC si to urobí (to sa robí pomocou jednoduchého XOR, ako je zapnutie alebo vypnutie prepínačov). Neustále posúva a prepína prepínače, kým nedosiahne koniec.

Krok 4: Konečný výsledok (kontrolný súčet)

  • Po posunutí pravítka cez celú správu vám zostane malé číslo (32 bitov), ktoré predstavuje pôvodné dáta. Toto číslo je ako jedinečný odtlačok prsta pre správu. Ide o kontrolný súčet CRC-32.

Verzia uvedená na stránke je variant CRC-32B, čo je prevažne zvláštnosť PHP, ktorá mení poradie bitov (little-endian vs. big-endian). Túto verziu by ste mali pravdepodobne používať iba v prípade, že konkrétne potrebujete kompatibilitu s inou PHP aplikáciou, ktorá ju používa.

Mám kalkulačky aj pre ostatné varianty:

  • Odkaz
  • Odkaz

Ďalšie čítanie

Ak sa vám tento príspevok páčil, možno sa vám budú páčiť aj tieto návrhy:


Zdieľať na BlueskyZdieľať na FacebookuZdieľať na LinkedInZdieľať na TumblrZdieľať na XZdieľať na LinkedInPripnúť na Pintereste

Mikkel Christensen

O autorovi

Mikkel Christensen
Mikkel je tvorcom a majiteľom miklix.com. Má viac ako 20 rokov skúseností ako profesionálny počítačový programátor/vývojár softvéru a v súčasnosti pracuje na plný úväzok pre veľkú európsku IT korporáciu. Keď práve nepíše blog, venuje svoj voľný čas širokej škále záujmov, koníčkov a aktivít, čo sa môže do istej miery odrážať v rôznorodosti tém na tejto webovej lokalite.