STEGANOGRAF KERTÉSZ CSABA, VÁMOSSY ZOLTÁN BUDAPESTI MŰSZAKI FŐISKOLA NEUMANN JÁNOS INFORMATIKAI FŐISKOLAI KAR 1034, BUDAPEST, NAGYSZOMBAT UTCA 19. HONLAP: ROBERTA.OBUDA.KANDO.HU/IAR
Tartalmi összefoglaló: Egy olyan program elkészítése volt a cél, amely képes 24 bites képekbe információt rejteni, majd ha akarja, akkor a felhasználó elküldheti a képeket e-mail formájában egy címzett számára. Az információk tömörítésre is kerülnek eközben, valamint rejtjelező eljárással kerülnek elkódolásra. Kulcsszavak: szteganográfia, kriptográfia, PNG formátum.
1. BEVEZETÉS
Ez a harmadik fél a lehallgató vagy támadó (intruder). Ő alapfeltétele a titkosításnak, mert ha nem létezne, akkor nem lenne szükség a titkosításra sem. A feladó-címzett páros mindent elkövet, hogy „beszélgetésük” titkos maradjon, addig a támadó célja, hogy törekvésük kudarcba fulladjon, vagyis megpróbál illetéktelenül hozzáférni az üzenet tartalmához, valamint a feladó nevében hamis üzenetet próbál küldeni (Virasztó 2001).
A görög eredetű szteganográfia szó jelentése rejtett írás, de köznapi értelemben az információk elrejtését értjük rajta olyan helyen, ahol nem is keresnénk. Ilyen rejtett információtovábbítás például a láthatatlan tinta, a mikroírás, valamint a szórt spektrumú kommunikáció. A számítógépek, és a digitális jeltárolás elterjedésével lehetővé vált ennek megfogalmazása a számítógépen tárolt dokumentumokra. Természetesen csak olyan „rejtekhelyet” választhatunk adatainknak, amiben a rejtés nem okoz feltűnő változást, hiszen ez a módszer lényege.
3.1 KÉT ELTÉRŐ MÓDSZERRŐL A kriptográfia és a szteganográfia két különböző módja az üzenet elrejtésének, és noha kiegészítik egymást, egyáltalán nem azonosak.
2. CÉLKITŰZÉS A most tárgyalt megoldásnál automatikus kulcshasználatnál nem lenne szükség a kulcs ismeretére, vagyis az a program önműködően generálná, illetve találná meg. Ez természetesen akkor használható, ha feltételezem azt, hogy a kódoló-dekódoló program csak az adó és vevő személynek áll a rendelkezésére. Így a kulcsot el lehet rejteni a kódolt adatok között, úgy hogy mindemellett a biztonság is megmarad. Az adatok rejtéséhez széleskörben elfogadott rejtjelező algoritmusok vannak alkalmazva.
A kriptográfia megváltoztatja az állomány vagy üzenet tartalmát, így az csak a címzett számára marad olvasható. A címzett rendelkezik azzal a kulccsal, mellyel a kódolt állomány visszafejthető, és a küldő által elkészített eredeti formában megtekinthetővé válik. A kódolt üzeneteket nem szokták elrejteni, érkezésük és elküldésük könnyedén észlelhető és lehallgatható. Ha a titkosítás módszerét meg is fejtik, a kódtörőnek még mindig szüksége van a pillanatnyilag használt kulcsra is az üzenet visszafejtéséhez.
3. AZ ADATREJTÉSRŐL
A szteganográfia úgy próbálja meg elrejteni az üzenetet, hogy a megfigyelő még azt sem veszi észre, hogy üzenetváltás történt. A titkosítással szemben a szteganográfia nem észlelhető, ezért gyakran használják a titkosítás kiegészítésére. Ezzel a kombinációval a rejtjelezett adat úgy eldugható, hogy az bármilyen lehallgatás ellen teljesen védetté válik.
A titkosítás és adatrejtés közös célja az, hogy az információt úgy tároljunk vagy juttassunk el a címzetthez, hogy annak tartalmához csak ő férhessen hozzá. Vagyis a kódolt üzenetek tartalmához való hozzáférés, és annak megváltoztatása nem lehetséges azok számára, akik nem jogosultak rá. A rejtjelezés során fel kell tételezni, hogy a címzetten és a feladón kívül létezik egy harmadik résztvevő is.
Steganograf
1
egyenlettel írható le, ahol Dk a dekódoló algoritmus, ami általában nagyon hasonlít a C kódoló algoritmushoz. Tulajdonképpen C inverze, ezért C-1 módon is jelölik. A tervezésnél érdemes elfogadni azt, hogy a titkosító és a dekódoló algoritmus nem titkos, hanem nyilvános. Erre azért is szükség van, mert a legtöbb esetben az algoritmusok nem is tarthatóak titokban. Ha egy olyan módszerről van szó, amit nem csak egy szűk körben, hanem „világraszólón”, egymásnak ismeretlen emberek is használnak, akkor a módszer csak akkor lehet elterjedt, ha az algoritmus mindenki által megismerhető (Virasztó 2001).
4. KRIPTOGRÁFIA Egy teljes kriptográfiai rendszer több fontosabb komponensből épül fel, melyek gyakran nem határolhatók el élesen egymástól. Az algoritmikus rendszer, ennek matematikai háttere; a kulcselosztás, -tárolás, -továbbítás (kulcsmenedzsment); valamint a kiegészítő védelmi rendszer, amely a teljes rendszer (ön)védelmét látja el: a támadások és kezelői hibák károkozását igyekszik csökkenteni, lehetőleg kiküszöbölni. 4.1 BLOKKOS REJTJELEZÉS
5.
A kriptográfiai technika kifejezés tulajdonképpen az algoritmusok használatának módszerét jelenti. Ezek alapvetően csak két típusba sorolhatók, de egyszerű műveletek és különböző visszacsatolási módszerek alkalmazásával sokféle kriptorendszer alakítható ki. A szimmetrikus algoritmusokat kétféle módszerrel lehet használni: a blokk-, illetve folyótitkosítást. Én ezek közül az előbbit használom, amely a nyílt szöveget általában legalább 64 bites részekre vágja szét, és ezekre alkalmazza a titkosító algoritmust. Így ugyanaz a nyílt szöveg blokk mindig ugyanazzal a kulccsal, ugyanarra a kriptoszöveg blokkra képződik le (Ködmön 1999). Én is 64 bites blokkokat használtam, amit fontos megjegyezni, hiszen befolyásolja a képben való elrejtés technikáját. Erre úgy van hatással, hogy a Steganograf egy pixelen színkomponensenként 3 bitet használ fel. Ez azt jelenti, hogy a 3 bit valamely többszöröse lehet a megfelelő arra, hogy egyszerű legyen a nagytömegű adat egyszerre történő kibeírása. A helyzetet kissé bonyolítja, hogy véletlenszerű biteket is szúr be a program az információk közé. Azonban sikerült megvalósítani algoritmikus szinten a megfelelő sebességet még ezek ellenére is.
A szteganográfia az adatrejtés tudománya. A titkosítás az üzenet értelmét változatja meg, az adatrejtés viszont igyekszik az információcsere tényét is titkolni, elfedni. A szteganográfiát az irodalomban átviteli biztonságnak (transmission security, TRANSEC) is nevezik. A magyar szóhasználatban egy, a lényeget jól megmutató kifejezés, az adatrejtés (data hiding) terjedt el. A szteganográfia mai, csúcstechnológiával felvértezett változatai képekbe vagy hangállományokba rejtik az üzenetet (bmp, wav, mp3, jpg), s egy ilyen különleges szoftverre van szükség az üzenet elrejtéséhez egy állományba. A titkos információt a kép vagy hangállomány létező, de lényegtelen apró részleteiben helyezi el, melyet az emberi szem vagy fül nem képes felfedezni. Az üzenet néhány észrevehetetlen hang, vagy néhány képpont egy JPEG képen. A felületes szemlélő számára a kép vagy hang teljesen rendben lévőnek látszik, és fogalmuk sincs arról, hogy ott rejtett üzenet búvik meg. A képeket csak egy „privát kulcs”, vagy kód használatával lehet megfejteni, melyet csak a címzett ismer. Ennek hiányában az üzenetet lehetetlen megnézni, elolvasni vagy meghallgatni (Infopen, 2002), (Symantec 2001, 2002).
4.1.1 A SZIMMETRIKUS, BLOKKOS KÓDOLÁS DEFINÍCIÓJA
5.1 ALAPELVEK
A kulcsként használt titkos információ tehát a rejtjelezéshez használt algoritmus egyik paramétere. Ha m az üzenet, és k a titkos kulcs, akkor az
A vizsgálódásaink során azt a médiát, amibe beletesszük az információt hordozónak (covertext) nevezzük, amit beleteszünk, azt egyszerűen üzenetnek (plaintext). Amit eredményül kapunk, az a stegotext. Az, hogy az üzenet nyílt szöveg vagy pedig rejtjelezett, az eljárás szempontjából közömbös.
M = Ck(m) a rejtjelezett üzenet, és Ck az az algoritmus, ami az m üzenetet alakítja át k függvényében. A C függvénynek olyan tulajdonsággal kell rendelkeznie, hogy M, a k ismeretében könnyen kiszámítható legyen, azonban M-ből k nélkül C ismeretében se lehessen meghatározni m-et, azaz C csak k ismeretében legyen invertálható. A rejtjelezett üzenet visszaállítása, azaz a dekódolási folyamat az
A plaintext-be elrejtett információ természetesen módosítja a covertext adatait. Némi ellentmondás, hogy minél több adatot kell elrejteni, annál kevésbé valósítható meg a rejtettség, mert a változás egyre észrevehetőbbé válik. A megvalósított egyensúly az adott feladattól vagy alkalmazástól függ.
m = Dk(M) = C-1k(M)
Steganograf
SZTEGANOGRÁFIA
Az adatrejtés ellen irányuló támadásoknak két fő iránya van: az adatrejtés elleni passzív támadásnak
2
azt nevezzük, amikor a támadó felfedi az adatrejtés tényét, és esetleg az elrejtett adatot is megismeri. Az adatrejtés elleni aktív támadásnak azt nevezzük, amikor a támadó az elrejtett adatot nem csak megismeri, hanem szeretné azt megváltoztatni vagy eltávolítani.
5.
Lehetőség van arra is, hogy 2 vagy 3 bitet is felhasználjunk. Ez ebben az esetben rendre 576Kb (25%), illetve 864Kb (37,5%) kapacitást biztosít a hordozóban. Minél több bitet használunk el, annál nagyobb lesz a színek torzulása, amit már emberi szemmel is észre lehet venni előbb vagy utóbb, de 2-3 bit még felhasználható.
6.
Ha az üzenet hosszabb, mint a hordozóból felhasználható méret, akkor két lehetőségünk van: vagy másik hordozó képet választunk, vagy addig nagyítjuk, amíg az üzenet végül elfér benne.
7.
Az ilyen nagyfelbontású, RGB színsémát alkalmazó, tömörítetlen képek egyik legnagyobb baja, hogy hatalmasak, ezért valamilyen bittartó tömörítésre mindenképpen van.
5.2 AZ ADATREJTÉS ALKALMAZÁSA Igazán olyan digitális csatornák alkalmasak a szteganográfia alkalmazására, amelyek valamilyen humán információt továbbítanak: a hang vagy a kép. A digitalizált formájuknak lényege, hogy a hangot, fényerőt elektromos úton mérhetővé teszik, majd ezután bizonyos időközönként mintát veszünk a jelből, és az abban a pillanatban a digitális eszközökkel mért értéket valahány biten (8-24) ábrázoljuk. Ha a számábrázolás a kettes számrendszer szabályainak megfelelően történik, akkor a legkisebb helyiértékű bitek esetleges megváltoz(tat)ása nem lesz érzékelhető. Természetesen nem szabad túl sok bitet módosítani, mert a változás előbb-utóbb akkora lesz, hogy az már zavaró és észrevehető.
5.4 BMP MÓDSZER ALTERNATIVÁK
Az elkészült BMP kép az eredetihez hasonlóan megnézhető, kezelhető. Ha figyelembe vesszük azt, hogy a fejléc utáni bájtok a képernyő jobb alsó sarkától kezdik leírni a képet (jobbról balra, alulról felfelé), és ha a lehetséges kapacitásnak csak kevesebb, mint 30-40%-át használjuk ki, akkor a kép felső felét akár össze is firkálhatjuk. Amit nem tehetünk: színkonverzió, összemosás, élesítés és egyéb teljes képre vonatkozó effektek, kicsinyítés és nagyítás és formátumváltás (kivéve, ha az új formátum veszteségmentes, és azonos színmélységet biztosít). Más alternatíva a JPEG képbe való kódolás. Ennek a tömörített formátumnak a hátránya, hogy az alsó biteket a színkomponensekben eldobja a jobb tömöríthetőség kedvéért, mint már korábban említettük. Emiatt ezekben adat rejtésére nincsen lehetőség, az egyetlen alternatíva, hogy a képben lévő képi információ Fourier transzformáltjait módosítva rejtünk el némi információt, azonban ennek kapacitása eléggé korlátozott, nagyságrendekkel kisebb az kép mérethez képest.
Ezen a médiák használatának oka az, hogy a humán információcsere redundáns a mindennapi életben, és a digitális adatfeldolgozás első lépcsőin egyaránt. (Gondoljunk egy hangfelvételre: sok a szünet, a hosszabb-rövidebb csönd, vagy ha ránézünk egy fényképre igen sok, viszonylag homogén területet találhatunk rajta) (Virasztó 2001). 5.3 PÉLDA: ADATREJTÉS KÉPBE Vegyünk nagyító alá egy true-color (24 bites) 1024x768 pixeldimenziójú képet, tömörítés, fejléc és formátum információ nélkül (Virasztó 2001): 1.
Minden képpont leírására 3 bájtot használunk, ezek rendre a vörös, zöld, kék színösszetevőket jelentik. Minden színösszetevő a maga 256 árnyalatával járul hozzá az adott pixel színéhez, így egy pixel 2563 =16 777 216 különböző színt vehet fel.
2.
A kép mérete ekkor: 1024x768x3x8 = 18 874 368 bit (18Mbit, 2304Kb).
3.
Ha minden képpontból elhasználjuk a legalsó bitet, és ide írjuk be az üzenetet, akkor a kép alapvetően nem változik meg, a színek megváltozását emberi szemmel nem lehet észrevenni.
4.
Egy bit felhasználásával 1024x768x3x1 = 2 359 296 bit (2.25Mbit, 288Kb) információt tudunk elraktározni a hordozó médiába, annak 12,5%-át felhasználva
Steganograf
EREDMÉNYE,
6. EDDIGI
MEGVALÓSÍTÁSOK
Jelen fejezet alapját az internetről letölthető szteganográfiával alkalmazó programok elemzése képezi. Itt három program lesz bemutatva a Streganograffal összehasonlítva, ami talán legjobban jellemzi a freeware és commercial kategóriát ezen a területen.
3
1. táblázat: Más szteganográf programok és a Steganograf összehasonlító jellemzése
6.1 MP3STEGO (1.1.4)1
támogatása. Ha elrejtünk egy JPEG file-ban egy állományt, akkor az bár nagyobb mértékben növeli az eredeti fájl méretét a covertext-énél. Nagy jelentősége a módszernek azért van, mert egy JPEG képre egyáltalán nem gyanakodhatnak, hogy el lenne benne rejtve valami is.
Az információk szabványos BMP-be vagy WAV-ba való rejtése helyett itt MP3 alkalmazásával találkozhatunk. Ilyen tömörített médiaformátumoknál (JPEG, MP3) elvesztjük az alsó biteket, amibe rejthetünk. Itt ugyanis eldobják azokat az adatokat, ami az ember számára nem észlelhető. Márpedig a szteganográfia éppenhogy ezekbe a bitekbe tudja elrejteni az információkat.
Támogatja a Blowfish használatát, Linuxos változata is elérhető forráskóddal együtt. Viszont nem találhatunk kezelőfelületet, és nem tudja tördelni a plaintext-et, ha nem fér bele egy képbe.
A készítő neve Fabien A. P. Petitcolas, aki Cambridge-ben készítette el ezt a programot, aminek letölthetjük a C-s forrását is. A software parancssoros DOS környezetű, be-, illetve kitömörítést végezhetünk vele, ami 16 bites WAV file-ból készít MP3-at és viszont, miközben némi szöveget el is tud benne rejteni. Azonban ez az MP3 méretéhez képest csak pár byte. Emiatt sajnos csak néhány mondatos üzeneteket küldhetünk el vele ismerősünknek, aki a jelszót ismerve kaphatja vissza azt.
6.3 STEGANOS FILE MANAGER (STEGANOS SECURITY SUITE 4.15) 3
6.2 STEGHIDE (0.4.6B)2
Egy kereskedelmi, kombinált szoftver, amelynek több részszolgáltatása van, amit egy központi menüből érhetünk el. Ennek egyetlen komponense használja a szteganográfiát, a Steganos File Manager. Ez az alprogram WAV-ba, DIB-be, valamint BMP-be tud fájlokat rejteni. Jelszó megadása kötelező hozzá, és kijelzi, hogy a megadott karaktersorozatban mennyi a hasznos bit a titkosító kulcshoz.
Ez is parancssoros program, ami WAV, BMP, JPEG, AU formátumokat támogat. A BMP és WAV file kezelésénél kb. 10 %-ába lehet rejt információkat. Ami különösen figyelemreméltó, az a JPEG
A Steganos File Manager Windowsos program, így kezelőfelülettel rendelkezik. A célképet a rejtés adatok megadási folyamatának végén kell választani, és nem tünteti fel a tárolókapacitást, ha nem fér el
1 2
http://www.cl.cam.ac.uk/~fapp2/steganography/mp3stego/ http://steghide.sourceforge.net
Steganograf
3
4
http://www.steganos.com
1. ábra: A program képe munka közben benne a titkosítandó adat, csak közli, hogy válaszszunk nagyobb hordozó állományt. A felhasznált titkosító eljárásokról, és a rejtési technikákról nem ad információt. 7.
7.1 A KÉPFORMÁTUMOKRÓL A szteganográfiában a BMP fájlba történő információrejtés már régóta megoldott, és sok megvalósítást megélt. A fellelhető szakirodalom is leginkább ezen keresztül szemlélteti az adatrejtést. A jellemzője az effajta technikának, hogy aránylag nagy tömegű adatot lehet (maximum kb. 35 %) elrejteni úgy, hogy az a képminőséget nem befolyásolja nagy mértékben. A hátránya azonban, hogy pl. az Interneten történő képküldés nagyon feltűnő BMP-ben, de a gazdaságosabb és tömörebb formátumoknál (pl.: JPEG, GIF) éppen az az információ veszlik el általuk, ami hordozza a rejtett adatokat.
STEGANOGRAF
A program fejlesztése Delphi 6-os környezet alatt folyik, és a szolgáltatásai széleskörűre lettek tervezve. A funkcióit egyetlen form-ról teljesen el lehet érni, ezért nincs szükség menürendszerre, de nem veszlik el a felhasználóbarát felület és az egyszerűség sem (lásd az 1. ábrát). A futtatható verzió mellett a forráskód is hozzáférhető, hogy mindenki elkészíthesse a személyre szabott implementációját.
Emiatt kompromisszumokat kell kötni, és egy olyan fájlformátumot kell használni a rejtő kép tárolására, ami megtartja a bitinformációkat, de tömörítést is biztosít (pl. PCX, PNG). Jelen esetben itt a PNG lett kimeneti fileformátumnak választva, mert ez a legtömörebb, bemeneti fájlként azonban lehet többféléből is választani (BMP, PCX, TIFF, JPEG, PNG, stb.), hiszen a forrás formátuma lényegtelen szteganografikus szempontból. Az eddigi megvalósításokat figyelembe véve a Steganograf széleskörűbben támogatja a képformátumok használatát.
Objektum-orientált alkalmazásként a rendszerelemek mellett más komponensek használatára is lehetőség van a Delphiben. A titkosítási eljárásoknál és a különböző képformátumoknál ki is használható, mert ez felesleges munkától szabítja meg az embert, ha nem kell implementálni ezek kezelését. Így külső külső komponensek lettek felhasználva ezen feladatok ellátására. A program fejlesztése során a szálprogramozás is helyet kapott, mert bár viszonylag rövid ideig, de a kódolás/dekódolás egy számításigényes folyamat. A szál ezekről folyamatosan tudósít a form alsó részén található státuszsoron keresztül küldött üzenetei által.
Steganograf
7.2 REJTHETŐ ADATOK Általánosságban elmondható, hogy a szteganografikus programok egyszerű üzeneteket, vagy állományokat tudnak eldugni. A Steganograf viszont mind a kettőt támogatja. Ráadásul fájl esetén binárisként kezeli azokat, és emiatt nem csak szöveges állományra alkalmas. Ha egy képben nincs elegendő kapacitás egy fájl tárolására, akkor a program képes automatikusan feldarabolni több részre a plaintext-et. 5
Ez a megoldás eddig egyáltalán nem jellemző.
hogy a folyamat végén ne látszódjon meg a transzformáció, ne romoljon jelentősen a képminőség. Ha a kép élvezhetőségének rovására megy a szteganográfiás eljárás, akkor a lényege veszlik el. Az irodalom akár 4 bitet is javasol, de néhány próbálkozás után be lehet látni, hogy 4 bit változása már nagyon meglátszódik a képen. Emiatt 3 bit lett célirányosan használva a képi információk között. Ennek következtében mint láthatjuk a 2. és a 3. ábrán, nem is lett észrevehető különbség a feldolgozott képek között, s így a hordozóban 35 %-os rejtési arányt tudtunk elérni.
A szöveges üzenetek tárolása is bináris fájlként történik, amit a program automatikusan generál le, és rejt el. Később a dekódolásnál ezt érzékeli, és az üzenetet megjeleníti, majd az átmenetileg létrehozott szöveges fájlt törli. 7.3 A PNG FORMÁTUM A PNG formátumnak van egy problémája, amely a használata során derült ki. Észrevettem, hogy a különböző próbák során a dekódolás során általában CRC hibás volt a dekódolás. Először nem tudtam megfejteni a hiba okát, azonban további vizsgálatok kimutatták, hogy a PNG még sem bittartó. Egysze-rűen a PNG algoritmusa először meghatározza a kép színkomponensei közt a legkisebb intenzitásértéket, majd törli az összes előfordulását. Ezért, hogyha előfordul néha olyan alacsony intenzitású pixel, ahol információt tárolunk, az törlődni fog. Ezt kiküszöböltem úgy, hogy beszúrtam alacsonyértékű pontokat, és így a magasabb értékű pontok lettek az információhordozók.
2. ábra: Az eredeti kép
7.4 TITKOSÍTÓ ALGORITMUSOK A kriptográfia használata a program készítésénél vetődött fel, mert a szteganográfia csak az információk elrejtésére képes. Azonban, ha ezt felfedik, ak-kor rögtön megtalálja a rejtett adatokat a támadó fél. Ezt kiküszöbölendő el is kell kódolni az adatokat, hogy azok megtalálása esetén se lehessen azok való-di tartalmát felfedni. A Blowfish, Cast128, Idea, Misty 1, RC2, RC5, Tea nevű blokkos (64 bites), szimmetrikus kódoló algoritmusok lettek felhasználva a rejtésnél. Ezek szélesebb körben elterjedt, elfogadott kriptográfiai eljárások, ezért volt jó mellettük dönteni. Azonban nem kell tölteni az időt az implementálásukkal, ha egy megbízható és gyors Delphi komponensre bízzuk a feladatot. Ez a DCPcrypt nevű könyvtár legutolsó Version 2 Beta2 változatáról van szó. Ezt az ingyenes komponenst 1999-2002 között David Barton fejlesztette ki, s a Steganograf is ezt használja is. Ennek köszönhetően a rejtjelezési eljárások nagyon széles támogatása lett meg-valósítva.
3. ábra: Az információkat rejtő kép 7.5 A STEGANOGRAF TITKOSÍTÁSI FOLYAMATA, ELREJTÉS Ha megfelelően beállított a felhasználó mindent, és kiválasztotta a kódoló eljárást, akkor végrehajtható az elrejtés folyamata. Ez a következő lépésekből áll: 1.
Ha kommentet kell hozzáfűzni a rejtett informá-ciókhoz, akkor a szöveget kiírja egy fájlba, és annak a nevét felveszi a rejtendő állományok listájára.
2.
A rejtendő állományokból először előállít egy előfeldolgozott állományt. Így egyetlenegy fájlba bele lesz másolva minden adat.
7.4 A HORDOZÓ KÉP VÁLTOZÁSA A programmal képekbe lehet információkat elrejteni. Ha akarjuk, ha nem, adatok kerülnek felülírásra a képi információkban. Természetesen az az érdekünk,
Steganograf
6
3.
Betöltjük egyenként a képek információit a memóriába.
4.
Utána elkezdi beírni az adatokat folyamatosan titkosítva a megadott algoritmus segítségével egy speciális szerkezettel az képekbe, az alsó három bitet használva, de úgy, hogy véletlenszerű biteket is a tökéletesebb rejtés érdekében. A szerkezet úgy néz ki, hogy a fájlinformációkat ebben mindig megelőzi egy fejléc információs tábla. Itt található az állomány eredeti neve, nagysága, a képzett ellnőrzőösszeg, az információk hányadik pozíciótól következnek, és mennyi információ van az adott képben.
5.
Az új képeket folyamatosan kimenti a titkosítás során a /Encode könyvtárba, ami a Steganograf könyvtárából nyílik.
7.6 ELLENŐRZŐÖSSZEG, E-MAIL KÜLDÉSE Az ellenőrző összeg a visszanyert adatok helyességének vizsgálatára szolgál. A Steganograf 16 bites ellenőrző összeget (CRC) állít elő, ami nem a legpontosabb, de figyelembevéve a különféle megoldásokat a célnak megfelelő és elégséges. Csak a Steghide-nál található 32 bites CRC. A stegotext elküldését e-mail formában nem nagyon találhatjuk meg az eddigi megvalósításokban a Steganos File Manageren kívül, ami viszontfizetős program. Ezen is segít a Steganograf, mert itt erre is lehetőség nyílik.
8. KONKLÚZIÓ Megtekintettünk néhány programot, ami ingyenesen vagy kereskedelmi forgalomban kapható. A freeware-k között főleg parancssorosakat találhatunk, és ezek jól használhatóak is, mint a StegHide. A commercial kategóriában általában komplex megoldásokkal találkozunk, amelyekben a szteganográfiás megoldások csak egy részét képezik a szoftvernek. Ez a marketing szempontjából érthető, viszont emiatt nem kívánhatjuk ezekkel összehasonlítani Steganografot, csak kiemelni belőlük a vonatkozó részeket. A Steganograf igyekszik minél jobban ötvözni a sztegano- és a kriptográfia eredményeit. Egy freeware software-t kívánunk nyújtani a felhasználóknak, amin a forráskód átírásával akár változtathatnak is. Nem kíván a program versenyre kelni a pénzért árult változatokkal, hanem egy olyan specifikusabb, sokfunkciós, felhasználóbarát megoldást kíván nyújtani előállítani, ami szélesebb réteggel meg tudná ismertetni ezt a tudományterületet, mint az eddigi freeware-s megvalósítások. A fejlesztés az ismertebb kódolási technikák (pl. Tea, Blowfish, Idea, RC2) és képformátumok jelentős részét (pl. BMP, PNG, TIFF, JPEG) támogatja. Az elkészült stegotextet pedig el lehet küldeni e-mailként. Minél egyszerűbb, de a célnak megfelelő, elegendő információt nyújtó alkalmazás fejlesztésére kellett törekedni.
9. FELHASZNÁLT IRODALOM 7.7 A STEGANOGRAF FOLYAMATA
DEKÓDOLÁSI
Ha megfelelően beállított a felhasználó mindent, és kiválasztotta a dekódolandó fájl(oka)t (covertexts), akkor elindíthatja a visszaalakítás folyamatát. Ez a következő lépésekből áll: 1.
2.
3. 4. 5.
A képekből egyenként kinyeri a program az adott alsó bitekből az információkat, és bemásolja egy előfeldolgozó állományba. Közben a véletlenszerű biteket eldobjuk. Betölti egyenként az előfeldolgozott adatokat a memóriába, detektálja az alkalmazott titkosító algoritmust, és dekódolja a meglevő adatokat a / Decode könyvtárba. Az összes előfeldolgozott adat dekódolása, és kiírása után ellenőrzi a CRC összegek értékét. Ha valami hiba volt, akkor azt kijelezi. Ha komment volt hozzáfűzve a rejtett információkhoz, akkor azt észreveszi, és kiírja.
InfoPen CIO Webmagazin: Szteganográfia: a rejtett üzenetek csúcstechnológiája – Háttéranyag (Cikk frissítése: 2002.06.14. - 14:32:54), Weblelőhely: http://www.infopen.hu/?id=3906&type=1 Symantec (Enterprise Solutions): The New Danger: Blended Threats (Cikk utolsó frissítése: 2001.12.13), Weblelőhely: http:// enterprisesecurity.symantec.com/ Symantec (Enterprise Solutions): The New Definition of ‘Network Security’ (Cikk utolsó frissítése: 2002.04.16), Weblelőhely: http:// enterprisesecurity.symantec.com/ Virasztó Tamás: Kriptográfia és szteganográfia (Utolsó frissítés: 2001.12.09), Elektronikus kiadás (PDF), Weblelőhely: http://free.x3.hu/ wacher/download/kripto1.rar, 11-20, 37-39, 125127, 169-170, 180-190. Ködmön József: Kriptográfia (1999), 177, ComputerBooks, Budapest.