Miklix

Kalkulačka hash kódu CRC-32

Vydáno: 17. února 2025 v 18:10:49 UTC

Kalkulačka hash kódu, která používá hashovací funkci CRC-32 (Cyclic Redundancy Check 32 bit) k výpočtu hash kódu na základě zadání textu nebo nahrání souboru.

Tato stránka byla strojově přeložena z angličtiny, aby byla přístupná co největšímu počtu lidí. Strojový překlad bohužel ještě není dokonalá technologie, takže může dojít k chybám. Pokud si přejete, můžete si prohlédnout původní anglickou verzi zde:

CRC-32 Hash Code Calculator

Cyclic Redundancy Check (CRC) je kód pro detekci chyb běžně používaný k detekci náhodných změn v nezpracovaných datech. I když technicky nejde o kryptografickou hashovací funkci, CRC-32 je často označován jako hash kvůli své schopnosti produkovat výstup s pevnou velikostí (32 bitů) ze vstupu s proměnnou délkou.

Plné odhalení: konkrétní implementaci hashovací funkce použité na této stránce jsem nenapsal. Jedná se o standardní funkci, která je součástí programovacího jazyka PHP. Vytvořil jsem pouze webové rozhraní, abych ji zde pro pohodlí zpřístupnil veřejnosti.


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

Data odeslaná nebo soubory nahrané prostřednictvím tohoto formuláře budou na serveru uchovávány pouze po dobu potřebnou k vygenerování požadovaného hash kódu. Budou smazány bezprostředně předtím, než se výsledek vrátí do prohlížeče.

Vstupní data:



Odeslaný text je kódován v UTF-8. Vzhledem k tomu, že hashovací funkce pracují s binárními daty, bude výsledek jiný, než kdyby byl text v jiném kódování. Pokud potřebujete vypočítat hash textu v konkrétním kódování, měli byste místo toho nahrát soubor.



O hashovacím algoritmu CRC-32

Nejsem matematik, ale pokusím se tuto hashovací funkci vysvětlit jednoduchou analogií. Na rozdíl od mnoha kryptografických hašovacích funkcí to není nijak zvlášť složitý algoritmus, takže to asi bude v pořádku ;-)

Představte si, že posíláte dopis poštou, ale bojíte se, že by se mohl poškodit, než dorazí k příjemci. Na základě obsahu dopisu vypočítáte kontrolní součet CRC-32 a napíšete jej na obálku. Když příjemce obdrží dopis, může také vypočítat kontrolní součet a zjistit, zda odpovídá tomu, co jste napsali. Pokud ano, dopis se cestou nepoškodil ani nezměnil.

Způsob, jakým to CRC-32 dělá, je čtyřkrokový proces:

Krok 1: Přidejte nějaké místo navíc (vycpávka)

  • CRC přidává na konci zprávy trochu místa navíc (jako když balíte arašídy do krabice).
  • To pomáhá snáze odhalit chyby.

Krok 2: Kouzelné pravítko (polynom)

  • CRC-32 používá k měření dat speciální "kouzelné pravítko".
    • Představte si toto pravítko jako vzor hrbolků a rýh (toto je polynom, ale s tím slovem si nedělejte starosti).
    • Nejběžnějším „pravítkem“ pro CRC-32 je pevný vzor.

Krok 3: Posunutí pravítka (proces dělení)

  • Nyní CRC posune pravítko přes zprávu.
    • Na každém místě kontroluje, zda jsou hrbolky a drážky zarovnány.
    • Pokud se neseřadí, CRC udělá poznámku (to se provádí pomocí jednoduchého XOR, jako je zapnutí nebo vypnutí přepínačů).
    • Posouvá a přehazuje spínače, dokud nedosáhne konce.

Krok 4: Konečný výsledek (kontrolní součet)

  • Po posunutí pravítka přes celou zprávu vám zůstane malé číslo (32 bitů dlouhé), které představuje původní data.
    • Toto číslo je jako jedinečný otisk pro zprávu.
    • Toto je kontrolní součet CRC-32.

Verze uvedená na stránce je původní funkcí CRC-32, kterou byste měli používat pro nejlepší kompatibilitu s jinými systémy.

Mám kalkulačky i pro ostatní varianty:

Sdílet na BlueskySdílejte na FacebookuSdílet na LinkedInSdílet na TumblrSdílet na XSdílet na LinkedInPřipnout na Pinterest

Mikkel Bang Christensen

O autorovi

Mikkel Bang Christensen
Mikkel je tvůrcem a majitelem webu miklix.com. Má více než 20 let zkušeností jako profesionální programátor/vývojář softwaru a v současné době pracuje na plný úvazek pro velkou evropskou IT společnost. Pokud zrovna nepíše blog, věnuje svůj volný čas široké škále zájmů, koníčků a aktivit, což se může do jisté míry odrážet v rozmanitosti témat na tomto webu.