CRC vs Checksum
Bármikor, amikor az adatokat egy számítógépen tárolják, azzal a szándékkal, hogy továbbítsák azokat, gondoskodni kell arról, hogy az adatok ne sérüljenek meg. Ha sérült adatokat küldtek, pontatlan adatok kerülnek továbbításra, és előfordulhat, hogy nem a kívánt módon működik. Ezért szükség van egy hibaérzékelő rendszerre, amely ellenőrzi, hogy minden bevitt adat rendben van-e és nem sérült-e, mielőtt bármilyen titkosítás vagy átvitel megtörténne. Két fő módszer létezik az adatok ellenőrzésére.
Az ellenőrző összeg vitathatatlanul a legrégebbi módszer, amelyet az összes adat validálásakor használtak az elküldés előtt. Az ellenőrző összeg az adatok hitelesítésében is segít, mivel a nyers adatoknak és a bevitt adatoknak meg kell egyezniük. Ha anomáliát észlelnek, amelyet érvénytelen ellenőrzőösszegnek neveznek, akkor feltételezhető, hogy egy adott módszernél adatkompromittáció állt fenn.
A ciklikus redundancia-ellenőrzés, vagy a CRC, ahogyan arra általában hivatkoznak, az adat validálásánál alkalmazott fogalom is. A CRC által alkalmazott elv hasonló az ellenőrző összegekhez, de ahelyett, hogy a Checksum által alkalmazott 8 bájtos rendszert használja az adatok konzisztenciájának ellenőrzésére, a CRC meghatározásánál a polinomiális megoszlást kell használni. A CRC leggyakrabban 16 vagy 32 bit hosszú. Ha egyetlen bájt hiányzik, az következetlenség meg van jelölve az adatokban, mivel az nem adja meg az eredeti értéket.
Különbségek
A kettő között megfigyelt egyik különbség az, hogy a CRC matematikai képletet alkalmaz, amely 16 vagy 32 bites kódoláson alapul, szemben a 8 bájt alapú Checksum-nal, az adatok rendellenességeinek ellenőrzésekor. A CRC hash-alapú megközelítésen alapul, míg a Checksum az összes csonkított adat hozzáadásakor kapja meg értékeit, amelyek 8 vagy 16 bit lehetnek. A CRC tehát nagyobb mértékben képes felismerni az adatok hibáit, mint egyetlen, a hash rendszerben hiányzó bit, amely megváltoztatja a teljes eredményt.
Az ellenõrzõ összeg viszont kevesebb átláthatóságot igényel, és bõv hibadetektálást biztosít, mivel a változóval bájtot ad hozzá. Ezért elmondható, hogy a CRC fő célja az olyan hibák sokféleségének felismerése, amelyek az analóg módban történő adatátvitel során előfordulhatnak. A kontrolszumot viszont azt lehet mondani, hogy kizárólag azzal a céllal készült, hogy észrevegye a szoftver végrehajtása során esetlegesen előforduló rendszeres hibákat..
A CRC javítás az ellenőrző összegekhez képest. Mint korábban megjegyeztük, az ellenőrző összegek a számítás hagyományos formája, és a CRC-k csupán a számtani előrelépések, amelyek növelik a számítás bonyolultságát. Ez lényegében növeli a rendelkezésre álló mintákat, és így a módszerrel több hiba is felismerhető. Az ellenőrző összegről kimutatták, hogy elsősorban az egybites hibákat észleli. A CRC azonban felismeri az adatok kiszámításában megfigyelt kettős bites hibákat. A két adat-érvényesítési módszer közötti különbségek megértése során összegyűjtik a tudást arról, hogy ezt a két módszert miért használják kéz a kézben az internetes protokollban, mivel ez csökkenti az előforduló internetes protokollok sérülékenységét..
Összegzés:
- A CRC alaposabb, mint a Checksum, a hibák ellenőrzésében és a jelentésekben.
- A Checksum a két program közül régebbi.
- A CRC bonyolultabb számításokkal rendelkezik, mint az ellenőrző összeg.
- Az ellenőrző összeg elsősorban az egy bites adatváltozásokat érzékeli, míg a CRC ellenőrizheti és észlelheti a kétjegyű hibákat.
- A CRC összetettebb funkciója miatt több hibát képes felismerni, mint az ellenőrző összeg.
- Ellenőrző összeget főleg az adatok érvényesítésében használnak a szoftver megvalósításakor.
- A CRC-t elsősorban az analóg adatátvitel során az adatok kiértékelésére használják.