Javítókódok és módok

Vágólapra másolva!
 
Vágólapra másolva!

Lassan közhelynek számít, hogy a XXI. század az elektronikus információ százada lesz. A világhálón felmérhetetlen mennyiségű információ vált elérhetővé; a vásárlást, a banki műveleteket, a szállodafoglalást, a menetjegyigénylést stb. mindinkább számítógépen keresztül végezzük. Mindez felveti az információ biztonságos és gazdaságos tárolásának és átvitelének a kérdését. Az alkalmazott módszerekről, s az ezeket megalapozó elméletről beszélgetünk Györfi Lászlóval, a BME professzorával.

Mivel foglalkozik az információelmélet?
-
Az információelmélet két fő területe az információ tömörítése és az információ védelme. A tömörítés egyik típusa, amikor a tömörített információból tökéletesen visszaállítható az eredeti üzenet. Így tömörítjük például a programokat és az adathalmazokat, és persze a szöveges üzeneteket, dokumentumokat és az irodalmi alkotásokat is. Némi veszteséggel tömörítjük a hangot és a képet, ezek esetében nem érdemes a tökéletes reprodukálhatóságot megkövetelnünk. Megelégszünk azzal, ha a "tömörítményből" visszaállított hang, álló- vagy mozgókép élvezeti értéke nem csökken az eredetiéhez képest.
Az információvédelem egyik fontos területe az információ sérülés elleni védelme. Hibajavító kódolással az információt helyre tudjuk állítani, ha például a tárolása vagy a továbbítása során megsérül néhány karakter (bit). Védelmi feladat a titkosítás; erre akkor kerül sor, ha nem akarjuk, hogy az információhoz jogosulatlan személy hozzáférjen. De a szervert, a számítógépet, a hálózatot stb. (az ezekben tárolt, áramló információt) is szeretnénk megvédeni a behatolóktól. Nagy kihívás, hogy miként hitelesíthető a távolból például egy szerződés; ennek eszköze a digitális aláírás.

Ezek az elvárások többnyire együtt jelentkeznek.
- Valóban. Egy banki tranzakció során hibátlanul kell az adatokat átküldeni, s az adatoknak biztonsággal meg kell érkezniük akkor is, ha az átvitel során az információ megsérül. A banknak a távolból meg kell győződnie arról, hogy valóban mi kezdeményeztük a banki műveletet: az átutalást, a lekötést és így tovább. S persze fontos, hogy banki adatainkhoz illetéktelenek ne férhessenek hozzá.

Hogyan segít bennünket a "kódolás" a véletlenszerű hibák kijavításában?
- Ez nagymértékben függ a hibák jellegétől. Nézzük példaként a CD-n tárolt információt. Itt leggyakrabban úgynevezett csomós hiba fenyeget. Ha például a CD-olvasófej elé valamilyen kis szennyeződés kerül, a lemez felületén pályaszakaszok mehetnek teljesen tönkre, s persze elvész az ott tárolt információ is. Az ilyen hiba ellen az információ (a netán előforduló hiba) szétszórásával védekeznek. Egy táblázatba sorról sorra beírják az információt, majd a sorokat ellátják hibajavító karakterekkel. A CD esetében 24x24-es táblázatot használnak, s minden 24 bájt (karakter) hosszú sort négy hibajavító bájttal (karakterrel) látnak el. A hibajavító karakter egyfajta ellenőrző kód, értéke a sorban rögzített bájtoktól (információtól) függ. Így könnyen kimutatható, ha a sorbeli információ hibás. Ám ha a táblázat jelsorozatait soronként írjuk a lemezre, akkor egészen biztos, hogy hibázás esetén tíz-tizenöt egymás mellett tönkremenő karaktert nem lehet helyreállítani. És most jön a trükk! Lényege, hogy a táblázat oszlopaihoz újabb hibajavító karaktereket rendelnek, s a CD-re nem soronként, hanem oszloponként írják fel az információt. Így az estleges hibák az oszlopok mentén szétszóródnak. A CD-n a spirál mentén rögzített karaktersorozat folyamatosan olvasva értelmetlen. A táblázat alapján azonban az eredeti információ könnyen reprodukálható.

Miért éppen 4 hibajavító bájt szükségeltetik egy 24 bájtos sorhoz?
- Ennyi szükséges ahhoz, hogy 4 véletlen hibát kiszűrhessük. Az ellenőrző-hibajavító bájtokat az információt hordozó bájtokból szorzással és összeadással képezzük. Ha az így létrejött 28 bájtban legfeljebb 4 hiba van, az kiolvasáskor kiderül. A modem elolvassa az első 24 karaktert, majd legyártja az ellenőrző-hibajavító karaktereket. Ha az utolsó 4 karakter megegyezik a kiszámítottal, jöhet a következő adatcsomag, egyébként újraküldést kérünk. Ha a hibák száma 28 karakterenként több, mint 4, a módszer nem működik. De minthogy a hibákat "szétszórtuk", ennek nagyon kicsi az esélye.

Horányi Gábor