CRC-32C Hash kóða reiknivél
Birt: 19. mars 2025 kl. 20:52:18 UTC
Hash kóða reiknivél sem notar CRC-32C (Cyclic Redundancy Check 32 bita, C afbrigði) kjötkássaaðgerð til að reikna út kjötkássakóða byggt á textainnslátt eða upphleðslu skráar.CRC-32C Hash Code Calculator
Cyclic Redundancy Check (CRC) er villugreiningarkóði sem almennt er notaður til að greina breytingar fyrir slysni á hráum gögnum. Þó að það sé ekki tæknilega dulmáls kjötkássaaðgerð, er CRC-32 oft vísað til sem kjötkássa vegna getu þess til að framleiða fasta stærð úttaks (32 bita) frá breytilegri lengd inntaks. Útgáfan sem kynnt er á þessari síðu er CRC-32C afbrigðið, sem er nýrri, „snjallari“ (betri villugreining) útgáfa sem er oft vélbúnaðarhraða á nútíma örgjörva (í gegnum SSE 4.2).
Full upplýsingagjöf: Ég skrifaði ekki sérstaka útfærslu kjötkássaaðgerðarinnar sem notuð er á þessari síðu. Það er staðlað aðgerð sem fylgir PHP forritunarmálinu. Ég gerði vefviðmótið aðeins til að gera það almennt aðgengilegt hér til hægðarauka.
Um CRC-32C Hashaútreikning
Ég er ekki stærðfræðingur, en ég mun reyna að útskýra þessa hash aðgerð með einfaldri samanburði. Ólíkt mörgum af þeim krypto-hashaútreikningum er þetta ekki sérstaklega flókin aðferð, svo það ætti að vera í lagi ;-)
Ímyndaðu þér að þú sért að senda bréf með pósti, en þú ert varkár vegna þess að það gæti skemmst áður en það kemst til móttakanda. Með því að skoða innihald bréfsins reiknarðu út CRC-32 stuðul og skrifar það á umslagið. Þegar móttakandinn fær bréfið getur hann líka reiknað út stuðulinn og séð hvort hann passi við það sem þú skrifaðir. Ef það passar var bréfið ekki skemmt eða breytt á leiðinni.
Hvernig CRC-32 framkvæmir þetta er ferli sem skiptist í fjóra þætti:
Skref 1: Bæta við smá plássi (Padding)
- CRC bætir við smá aukarými í lok skilaboðanna (eins og pakkarískorn í kassa).
- Þetta hjálpar til við að greina villur auðveldlega.
Skref 2: Galdrastafurinn (Pólínómíal)
- CRC-32 notar sérstakan "galdrastaf" til að mæla gögnin.
- Ímyndaðu þér þennan staf sem mynstrið af bólum og raufum (þetta er pólínómíal, en þú þarft ekki að hafa áhyggjur af því orðinu).
- Algengasti "stafurinn" fyrir CRC-32 er fast mynstur.
Skref 3: Rúlla stafnum (Deilingarferlið)
- Nú rúllar CRC stafnum yfir skilaboðin.
- Á hverju stað er það athugað hvort bólur og raufur passi saman.
- Ef þau passa ekki saman, tekur CRC eftir því (þetta er gert með einföldum XOR, eins og að kveikja eða slökkva á rofum).
- Það heldur áfram að rúlla og kveikja/slökkva á rofum þar til það nær endanum.
Skref 4: Lokaútkomu (Stuðullinn)
- Eftir að hafa rúllað stafnum yfir allt skilaboðin, stendur þú eftir með lítið númer (32 bita langt) sem táknar upprunalegu gögnin.
- Þetta númer er eins og einstakt fingrafar fyrir skilaboðin.
- Þetta er CRC-32 stuðullinn.
Útgáfan sem kynnt er á síðunni er CRC-32C afbrigðið, sem ætti að vera fyrir valinu, sérstaklega ef þú ert að nota CPU sem hefur það hraðvirkjað (SSE 4.2 og síðar) og þarft ekki samhæfi við önnur afbrigði.
Ég hef einnig reiknivél fyrir önnur afbrigði: