Co je to steganografie? Pro vysvětlení původu slova se podívejme do řečtiny: stegos je střecha nebo kryt. Graphos zase znamená psaní či vyobrazování. Dohromady zkrátka něco jako skrytý vzkaz či věda o skrytém předávání vzkazů. A je to fakt stará věda: už když římský vojevůdce potřeboval poslat vzkaz přes nepřátelské území, oholil hlavu otrokovi, napsal na ni vzkaz, počkal, až mu narostou vlasy (trochu nepraktické, že?), a s tímto skrytým vzkazem ho vyslal na cestu.
Dnes otrokům vlasy neholíme, ale potřeba nenápadné komunikace přetrvává, ať už jsme islámští teroristé, průmysloví špióni nebo nevěrné manželky. Takže co s tím? Pokud nám stačí zakrýt smysl zprávy, můžeme použít šifrování, to jistě čtenářům Lupy nemusím vysvětlovat. Někdy je však potřeba zatajit existenci zprávy vůbec, vezměte si třeba takovou Francii, kde je použití kryptografie postaveno mimo zákon, nebo si představte paranoidního zaměstnavatele, kontrolujícího poštu všech zaměstnanců. Ideální podmínky pro nasazení steganografie.
Steganografie = skrývání existence informací
Steganografie je tedy umění ukrýt informaci uvnitř jiné informace. Jak na to? Existuje nepřeberné množství lepších či horších způsobů. Dřív se například přenášely věty nevinného významu, pokud si ale někdo dal dohromady první písmena z každého jejich slova, dostal tajný vzkaz mnohem větší důležitosti.
Dnes jsme samozřejmě trochu dál a na steganografii máme software. Princip je jednoduchý: existuje spousta datových formátů, které mohou projít velkou změnou, aniž by to člověk svými smysly postřehl, na tomto principu ostatně funguje třeba běžná komprese zvukových souborů nebo bitmap. A přesně toho využijeme při skrývání zpráv. Steganografický software nám zkrátka podle určitých zákonitostí například do nevinného JPG obrázku přisype tajná data, my ho vizuálně skoro nezměněný pošleme svým spojencům, a nikdo po cestě nezjistí, že prošlo něco, co nemělo.
Ehm. Kdo by to byl řekl, že druhý obrázek obsahuje část zakázaného zdrojového kódu na kopírování DVD?
Nejlépe se data skrývají do zvukových .au a .mp3 souborů, do bitmap .bmp, .jpg nebo .png, kde velké modifikace způsobí pouze malou změnu výsledného smyslového vjemu. Nevýhodou je, můžeme-li to tak nazvat, malá přenosová kapacita takových formátů. Chcete-li ukrýt 2000 bitů tajné informace, potřebujete na to přibližně šestikilový JPG obrázek. Přesto není steganografie odkázána jen do učebnic, nedávno například vyšlo najevo, že bin-Ládinovi muslimští bojovníci si vyměňují informace o cílech tak, že je ukryjí do nevinných obrázků, které potom – nedovedu si představit, že jinak než s maximálním sebezapřením – zveřejňují třeba na porno chatech.
Žádný všelék
Musím upozornit, že steganografie není všelék. Existují různé méně či více účinné metody, jak data ukrýt a píšou se na to téma seminární práce. Stejně tak ale existují více či méně účinné metody, jak ukrytá data objevit a píšou se o tom diplomky. V praxi bych samotnou steganografii raději nepoužíval. Naštěstí je tu řešení: smrtící kombinaci představuje společně s větší sestrou – kryptografií. Nikdo neví o existenci zašifrovaných dat, no není to ideální?
Dobrá. Na základě informací z tohoto článku jste se rozhodli, že přece jen sestrojíte tu atomovou bombu. Anebo jen chcete vyzkoušet, jaké to je, ukrýt před někým data. Jaký soft by se vám mohl hodit? Tady máte několik odkazů, které vám snad pomohou. Uvádím pouze volně použitelná díla, první dva programy jsou i se zdrojovými kódy.
http://wwwrn.inf.tu-dresden.de/~westfeld/F5r09.zip
Experimentální software pro pokročilou steganografii, který je odolnější proti statistickým útokům, vyvinutý na Drážďanské univerzitě. Napsán v Javě, zdrojové kódy k dispozici.
Jeden z nejkvalitnějších programů pro Linux/UNIX včetně podrobné dokumentace a zdrojových kódů. Tenhle program byl použit k výrobě toho strašáka, co vidíte výš, takže s jeho pomocí můžete vytáhnout ten kód na crackování DVD.
http://www.tiac.net/users/korejwa/jsteg.htm
JSteg Shell – kvalitní freeware program pro Windows/DOS s podporou šifrování a GUI rozhraním.