DevToys Web Pro iconDevToys Web ProTinklaraštis
Įvertinkite mus:
Išbandykite naršyklės plėtinį:

Kontrolinės sumos skaičiuotuvas

  • Režimas:
    CRC-8
  • 87 (135)
    CRC-16
  • FA4D (64077)
    CRC-24
  • DF8BCE (14650318)
    CRC-32
  • EC4AC3D0 (3964322768)
    Adler-32
  • 1F9E046A (530449514)
    Techninė informacija

    Kaip veikia kontrolinės sumos skaičiuoklė

    Ką daro įrankis

    Kontrolinės sumos skaičiuoklė apskaičiuoja nekriptografines kontrolines sumas duomenų vientisumui tikrinti, palaikydama CRC-16, CRC-24, CRC-32, Adler-32 ir Luhn algoritmus. Ji priima tiek paprastą tekstą, tiek neapdorotą šešioliktainę baitų įvestį, todėl galite tikrinti kontrolines sumas pagal tinklo protokolus, failų formatus ir identifikacinius numerius. Rezultatai pateikiami šešioliktainiu ir dešimtainiu formatu, kad būtų lengva palyginti su specifikacijų dokumentais.

    Dažniausi kūrėjų naudojimo atvejai

    Programuotojai naudoja CRC skaičiuokles derindami tinklo protokolus (Ethernet naudoja CRC-32, PPP naudoja CRC-16), tikrindami failų vientisumą archyvų formatuose, tokiuose kaip ZIP ir PNG, arba validuodami identifikacinius numerius su Luhn (kredito kortelės, IMEI). Įterptinių sistemų inžinieriai naudoja šį įrankį patikrinti, ar CRC realizacijos atitinka tikėtiną išvestį prieš įrašant programinę aparatinę įrangą (firmware) arba testuojant nuosekliosios komunikacijos kadrus.

    Duomenų formatai, tipai arba variantai

    CRC-16 (CCITT) sukuria 16 bitų kontrolinę sumą, naudojamą XMODEM, Bluetooth ir USB. CRC-32 (ISO 3720) sukuria 32 bitų reikšmę, naudojamą Ethernet, ZIP ir PNG. Adler-32 yra greitesnė CRC-32 alternatyva, naudojama zlib. Luhn mod-10 nėra CRC, o kontrolinio skaitmens algoritmas, naudojamas kredito kortelių numeriams, ISIN kodams ir IMEI numeriams tikrinti. Šešioliktainės įvesties režimas leidžia įvesti neapdorotas baitų sekas protokolo lygmens verifikavimui.

    Dažniausios klaidos ir kraštiniai atvejai

    CRC algoritmai turi daug polinomų ir inicializacijos variantų — CRC-16-CCITT skiriasi nuo CRC-16-IBM, todėl visada patvirtinkite, kurio varianto tikisi protokolas. Kontrolinės sumos aptinka atsitiktinį sugadinimą, bet nesuteikia jokio saugumo nuo tyčinio klastojimo; tam naudokite kriptografines maišas. Naudodami šešioliktainės įvesties režimą įsitikinkite, kad baitai įvesti be skirtukų arba nuosekliai suvienodintu formatu, nes papildomas pusbaitis (nibble) pastums visus vėlesnius baitus.

    Kada naudoti šį įrankį, o kada kodą

    Naudokite šį naršyklės įrankį greitiems patikrinimams derinant protokolo kadrus, tikrinant vieną kredito kortelės numerį pagal Luhn algoritmą arba lyginant CRC rezultatą su specifikacija. Masiniam failų tikrinimui, CI konvejeriams ar įterptinės programinės aparatinės įrangos (firmware) kompiliavimams naudokite kalbai būdingas CRC bibliotekas (Python zlib.crc32, Node Buffer pagrindu veikiančius crc paketus), kurios gali apdoroti srautus ir integruotis į automatizuotas darbo eigas.