Analýza metod stegoanalýzy u grafických souborových formátů

Rozměr: px
Začít zobrazení ze stránky:

Download "Analýza metod stegoanalýzy u grafických souborových formátů"

Transkript

1 Mendelova univerzita v Brně Provozně ekonomická fakulta Analýza metod stegoanalýzy u grafických souborových formátů Diplomová práce Vedoucí práce: Ing. Jan Přichystal, Ph.D. Bc. Lukáš Šajtar Brno 2011

2 Na tomto místě bych chtěl poděkovat Ing. Janu Přichystalovi, Ph.D. za příkladné vedení diplomové práce a cenné rady při její tvorbě.

3 Prohlašuji, že jsem tuto diplomovou práci vyřešil samostatně s použitím literatury, kterou uvádím v seznamu. V Brně dne 31. prosince

4 4 Abstract Bc. Šajtar L., Analysis of stegoanalytic methods for graphic file formats. Diploma thesis. Brno, Submitted diploma thesis focuses on detection of hidden text information in graphic file format. A part of the thesis is dedicated to explain the steganography, its principles and usage. Main part of the work covers stegoanalysis, its principles, methods and practical use while attacking different steganographic systems. The result of this thesis is to create the application for breaking steganographic system, which is based on proposed procedure. Conclusion comprises evaluation of suggested implementation and its free use in practice. Key words hidden information detection, graphic format PNG, RQP analysis, stegoanalysis Abstrakt Bc. Šajtar L., Analýza metod stegoanalýzy u grafických souborových formátů. Diplomová práce. Brno, Předkládaná diplomová práce se zabývá tématem detekce skrytých textových informací v grafických souborových formátech. Práce je z části zaměřena na vysvětlení pojmu steganografie, jejího principu a využití. Převážná část práce je věnována stegoanalýze, jejím principům, metodám a praktickému využití při útoku na různé steganografické systémy. V rámci praktické části je navržen postup umožňující detekci skrytých textových informací ve vybraném grafickém formátu, na základě kterého je vytvořena aplikace uplatňující stegoanalytické principy. Závěr práce je věnován zhodnocení provedené implementace a jejímu možnému využití v praxi. Klíčová slova detekce ukrytých informací, grafický formát PNG, RQP analýza, stegoanalýza

5 OBSAH 5 Obsah 1 Úvod a cíl práce Úvod Cíl práce Metodika práce 9 3 Steganografie Vymezení pojmu steganografie a její princip Historie Současné metody Mikrotečky Digitální steganografie Využití grafických formátů v oblasti steganografie Barevné modely Nejpoužívanější rastrové formáty současnosti Metody pro ukládání informací do grafických formátů Současné steganografické nástroje Steghide MP3Stego Outguess OpenPuff Shrnutí steganografických aplikací Shrnutí poznatků o steganografii Stegoanalýza Vězňův problém Vymezení pojmu stegoanalýzy a její princip Možnosti detekce ukrytých informací v grafických formátech Vizuální útok Statistické útoky Shrnutí stegoanalytických metod Současné stegoanalytické nástroje Stegdetect Stego Suite StegAlyzerAS Shrnutí stegoanalytických aplikací Shrnutí poznatků o stegoanalýze Postup útoku na steganografický systém Návrh funkcionality aplikace Postup aplikace při analýze obrázku

6 OBSAH 6 6 Implementace Algoritmus RQP Určení optimální délky vkládané testovací zprávy Stanovení mezní tolerance rozdílu mezi R a R Extrakce ukryté zprávy Možnosti rozšíření aplikace Forma výstupů aplikace Uživatelská dokumentace Programátorská dokumentace Stegoanalyzer knihovna ByteExtractor knihovna OriginalExtractor knihovna RQPanalyzer Diskuse Dosažené výsledky aplikace StegoAnalyzer Srovnání aplikace StegoAnalyzer s jinými programy Zhodnocení provedené implementace 62 9 Závěr Literatura Přílohy Příloha A screenshoty aplikace Příloha B zdrojový kód aplikace (CD)

7 1 ÚVOD A CÍL PRÁCE 7 1 Úvod a cíl práce 1.1 Úvod Již od počátku lidstva nás doprovází snaha utajovat informace, které jsou pro nás z nějakého důvodu cenné, a nepřejeme si jejich prozrazení. Z tohoto důvodu lidé využívají nejrůznějších technik, jenž umožňují utajení citlivých informací. První zdokumentovaný případ, využívající těchto technik, pochází z 5. století před naším letopočtem. Řek Demaratus zaslal varování o připravujícím se perském tažení do Sparty na dřevěných destičkách. Zpráva do nich byla vyryta a následně zalita vrstvou vosku, která zahladila všechny stopy. Zajímavou metodu pro ukrytí zpráv používali i Číňané. Zprávy psali na jemné hedvábí, které zmačkali, zalili voskem a vzniklou kuličku posel spolkl. Jakým způsobem se kulička následně dostávala z poslova těla ven, je zřejmě každému čtenáři jasné. V dnešní době se již používají daleko pohodlnější a důmyslnější metody, například mikrotečky. Jsou to mikroskopické zmenšeniny, kdy do například tečky za větou je možné vtlačit celou stránku textu. S odpovídajícím vybavením je možné zprávu následně přečíst. Další zajímavou metodou pro přenos informací můžou být sdělovací prostředky (rozhlas, televize, denní tisk atd.). Ty nám umožňují sdělit velké množství zdánlivě bezvýznamných informací, aniž by někdo něco postřehl. Zřejmě nejmodernější technikou pro ukrývání informací je v současnosti digitální steganografie. Žijeme ve věku počítačů, a ty nám poskytují dříve nevídané možnosti. Existuje velké množství zvukových, grafických i multimediálních formátů, které lze efektivně využívat pro skrývání informací. Zřejmě největší oblibě se těší formáty grafické, jenž většinou nevyžadují žádný speciální software nebo hardware, je možné je zobrazit na jakémkoliv počítači, anebo jednoduše umístit na web. Další jasnou výhodou grafických formátů je jejich velikost až na výjimky potvrzující pravidlo, jsou, co se týče objemu dat, ve srovnání s ostatními multimediálními formáty, nejmenší. Každá mince má ovšem dvě strany. Stejně jako existuje snaha o ukrývání informací před nepovolanými osobami, tak také existuje snaha tyto informace odhalit. K tomu nám slouží věda, která se nazývá stegoanalýza tedy věda, zabývající se odhalováním informací ukrytých pomocí steganografie. A analýza metod stegoanalýzy s následným vytvořením metodiky pro odhalování utajených informací, konkrétně u grafických souborových formátů, bude hlavním úkolem autora práce a předkládané diplomové práce. Autor práce si toto téma vybral ze dvou důvodů. První důvod je, že v dnešní době internetu a moderních výpočetních prostředků je velmi těžké utajit jakékoliv informace. Steganografie se tudíž jeví jako velmi zajímavý pomocník pro dané účely. Aby se steganografie neustále rozvíjela, je potřeba určité motivace. A tou je stegoanalýza, která nás nutí neustále vymýšlet nové metody i algoritmy pro ukrývání zpráv, a je tématem této práce. Druhým důvodem pro výběr tohoto tématu je bakalářská práce autora. Ta se zabývá problematikou steganografie u grafických

8 1.2 Cíl práce 8 souborových formátů, tedy přesně opačnou tématikou. Předkládanou diplomovou práci je proto možné brát částečně jako určité pokračování bakalářské práce. 1.2 Cíl práce Cílem předkládané diplomové práce bude vytvoření aplikace umožňující útok na steganografický systém. Ke splnění cíle bude využita analýza metod současné steganografie, zejména metod ukrývání informací do grafických formátů. Nezbytnou součástí této analýzy bude seznámení se s aplikacemi, které využívají principů steganografie a stegoanalýzy. Drtivá většina aplikací, zabývajících se touto tématikou, pracuje na stejném principu. Daná aplikace určitým algoritmem uloží informace do obrázku. Při jejich opětovném získání zná algoritmus, kterým informace byly uloženy, tudíž tato procedura není žádný problém. Hlavním úkolem této práce tedy je vytvořit aplikaci, která dokáže odhalovat skryté informace u grafických formátů bez předchozí znalosti algoritmu, jenž byl použit při jejich ukládání. Tímto se vytvořená aplikace bude zcela lišit od již existujících produktů, které tuto znalost mají. Kromě detekování přítomnosti skrytých informací bude také potřeba je vhodně interpretovat ve srozumitelné formě, to znamená implementovat vhodný extrakční algoritmus, který tyto podmínky bude splňovat.

9 2 METODIKA PRÁCE 9 2 Metodika práce První část předkládané diplomové práce bude věnována vysvětlení pojmu steganografie. Cílem diplomové práce je sice vytvoření aplikace umožňující útok na steganografický systém, ale bez existence steganografie by žádná taková aplikace nemohla vzniknout (minimálně by byla bezpředmětná). Z tohoto důvodu autor považuje za nezbytné čtenáře seznámit s tím, co to vlastně steganografie je, jakým prošla historickým vývojem a jaké metody jsou v současnosti aktuální a nejčastěji používané. Druhá část práce již bude věnována stegoanalýze. Autor se seznámí s tímto vědním oborem a zanalyzuje všechny metody, které se v praxi využívají při odhalování utajených zpráv v grafických formátech. Součástí této části práce bude i analýza aplikací, které se tímto tématem zabývají, a algoritmů, jenž se pro daný účel využívají. Aby bylo možné případnou ukrytou zprávu z obrázku vyextrahovat, bude nezbytné navrhnout i vhodný extrakční algoritmus. Problémem je to, že prakticky každá aplikace ukládá informace trochu jiným způsobem, ale i malá změna v tomto případě značně stěžuje dosažení požadovaného výsledku. Autor práce tedy bude muset vyhledat v dokumentacích steganografických aplikací (v závislosti na jejich dostupnosti) informace o tom, jak nejčastěji ukládají informace do obrázků a najít zde určitou podobnost, která by napomohla při snaze extrahovat ukryté informace. Nezbytnou součástí práce bude i nastudování struktury nejpoužívanějších grafických formátů současnosti. Tato znalost bude důležitá při sestavování výsledné aplikace. Autor práce také musí vzít v úvahu, jaké grafické formáty jsou nejčastěji využívané v oblasti steganografie. Po seznámení se s pojmy steganografie, stegoanalýzy a nastudování nejrozšířenějších grafických formátů současnosti, bude navrhnut postup, který umožní odhalovat informace ukryté v grafických formátech. Tento postup bude vycházet především z toho, jaké algoritmy se pro ukrývání informací využívají, a bude se snažit najít možnosti útoku, jenž ukryté informace odhalí. Na základě postupu, který bude navrhnut v teoretické části práce, v praktické části bude vytvořena aplikace, jenž se tento postup pokusí použít na reálných datech. Cílem aplikace by mělo být určit, jestli jsou v daném souboru ukryty nějaké informace, a pokud ano, potom by tyto informace měly být zobrazeny. Oproti běžným programům bude mít tato aplikace jednu zásadní nevýhodu nebude znát algoritmus, jakým byly informace ukryty, což značně ztěžuje požadovaný cíl. Aby byla výsledná aplikace všestranně využitelná a nezávislá na operačním systému, bude napsaná v programovacím jazyce Java (jedinou podmínkou spustitelnosti na všech operačních systémech a počítačích bude nainstalované Java Runtime Environment). Závěr práce bude věnován zhodnocení navrženého postupu, následně vytvořené aplikace a její úspěšnosti či neúspěšnosti při odhalování informací ukrytých v grafických formátech. V této části budou také uvedeny informace o tom, čeho se podařilo dosáhnout, jaké funkce aplikace obsahuje, a jak by bylo možné případně aplikaci rozšířit nebo vylepšit.

10 3 STEGANOGRAFIE 10 3 Steganografie 3.1 Vymezení pojmu steganografie a její princip Slovo steganografie pochází z řečtiny, a to ze slov steganos (schovaný) a graphein (psát). Je to věda, která se zabývá utajením obsahu komunikace takovým způsobem, aby nebylo možné zjistit, že vůbec nějaká komunikace proběhla. Do oblasti steganografie patří například mikrotečky, neviditelné inkousty a v současné době nejčastěji především digitální steganografie, využívající různých multimediálních formátů. Steganografie nám poskytuje vysoký stupeň utajení, jelikož skrývá samotnou existenci přenášené zprávy. Má však i jednu velkou slabinu. Pokud dojde k odhalení existence ukryté zprávy a máme dostupnou techniku, která nám umožní tuto zprávu přečíst, je tajemství odhaleno. Z tohoto důvodu se steganografie často kombinuje s kryptografií, jenž neskrývá existenci zprávy, ale šifruje její obsah, což dále komplikuje práci při odhalování. Definicí pojmu steganografie je mnoho. Kromě autorem výše uvedené, nabízí svou definici i Neil F. Johnson (Johnson, 2001), který říká, že steganografické aplikace ukrývají informace v jiných, zdánlivě nevinných a bezvýznamných médiích. Steganografické výsledky se pak mohou maskovat jako naprosto běžné soubory, ukryté v různých médiích nebo dokonce v počítačové síti. Neil F. Johnson dále uvádí, že jsme omezeni pouze naší představivostí při hledání dalších míst, kde by mohla naše data být nepozorovaně ukryta. Podle Gary C. Kesslera (Kessler, 2001) je steganografie věda o skrývání informací. Dále uvádí, že je-li cílem kryptografie nečitelnost údajů pro třetí stranu, cílem steganografie je data úplně skrýt. Srovnání steganografie a kryptografie se objevuje i v publikaci (Johnson et al., 2001), která říká, že steganografie je umění ukrývání a přenášení informací přes zdánlivě nevinné nosiče ve snaze ukrýt existenci přenášených dat, kdežto kryptografie je technika, která změní význam přenášené zprávy takovým způsobem, aby nemohl být pochopen její původní význam. Dále je zde uvedeno, že steganografie je vlastně podobná kryptografii, i když obě tyto vědní disciplíny využívají jiných metod. Obě prošly historických vývojem a jsou nich vedeny četné záznamy. Neodmyslitelnou částí steganografie je takzvaný watermarking (česky vodoznak nebo vodotisk). Podle Sue Chastain (Chastain, 2011) je watermarking vkládání viditelné značky do libovolného digitálního dokumentu za účelem jasné identifikace autora původního dokumentu a ochrany autorských práv. Tato značka je těžce odstranitelná a měla by ztížit práce lidem, kteří cizí práci vydávají za svou. Sue Chastain dále uvádí, že kromě watermarkingu, který tedy vkládá do dokumentů viditelné značky, existuje i digitální watermarking. Jeho cílem je také ochrana pravosti dokumentů, k tomuto účelu ovšem využívá značek neviditelných, při běžném použití nedetekovatelných. Odhalení digitálních vodoznaků je pak možná pouze s použitím speciálního software.

11 3.2 Historie 11 Hlavní myšlenku digitálního watermarkingu potvrzuje i Fabien Petitcolas (Petitcolas, 2011). Podle něj je hlavní hnací silou využívání digitálního watermarkingu znepokojení v oblasti ochrany autorských právu u různých multimediálních formátů (audio, video, atd.) a další práce, která je k dispozici v digitální formě. Zdůrazňuje především masivní, nelegální kopírování filmů, muziky a elektronických knih, které je v dnešní době díky moderním výpočetním prostředků a internetu snadno k dispozici. 3.2 Historie Jak již bylo uvedeno v úvodu práce, zřejmě první zdokumentovaný náznak steganografie se objevil ve starém Řecku. Tajné zprávy zde byly vyrývány do dřevěných destiček, které následně byly zality rozpuštěným voskem, jenž po zaschnutí zprávu zcela zakryl. Po doručení zprávy pak stačilo vrstvu vosku jednoduše seškrábat. Pro další zajímavou metodu, pocházející z tohoto období, byli zapotřebí otroci. Těm se vyholila hlava a zpráva jim byla vytetována na holou lebku. Poté už jenom stačilo počkat, až jim dorostou vlasy a byli vysláni na cestu. Pro odhalení vytetované zprávy pak už jen stačilo vlasy znovu oholit. Kromě těchto metod se v nejranějších dobách steganografie používaly i méně sofistikované metody, ale o to jednodušší a efektivnější. Zprávy se ukrývaly například do fůry hnoje nebo fekálních vozů, kde by je jenom málokdo hledal. Postupem času se začaly využívat poněkud propracovanější metody. Můžeme zde zařadit například neviditelné inkousty, které se vyráběly především z mléčné šťávy pampelišky nebo citronové šťávy. Pomocí takto vytvořených inkoustů byla poté napsána zpráva, která byla neviditelná. K opětovnému zviditelnění zprávy bylo potřeba inkoust zahřát, v případě použití inkoustu ze složitějších syntetických sloučenin bylo potřeba použít speciální světlo (například ultrafialové), nebo zprávu přetřít jinou chemikálií. Dnes ještě částečně používaná, ale spíše už neaktuální metoda ukrývání zpráv, je pomocí formátování textových dokumentů. Jak se dozvídáme z dokumentu Neil F. Johnsona (Johnson, 1995), Brassil a kolektiv je autorem mnoha publikací, které se zabývají ukrýváním informací do textu pomocí modifikace pozice jednotlivých řádků a slov v dokumentu (Brassil-Infocom94 má jiný význam než Brassil- Infocom94). Tyto jemné rozdíly pak mohou znamenat například kódování nul a jedniček, které tvoří posloupnost bitů, bajtů, následně i celých slov nebo dokonce vět. V neposlední řadě je potřeba zmínit i roli masmédií. Ač to tak na první pohled nevypadá, sehrála v oblasti steganografie velkou roli, především v dobách válek. Denní tisk, rádio i televize poskytují obrovský prostor pro přenos velkého množství informací, i těch skrytých. Vždyť, kdo by hledal skryté informace například v předpovědi počasí? Asi nikdo, ale i ve zdánlivě nevinném textu, popisujícím vývoj oblačnosti, se může skrývat úplně jiný význam. Příklad zprávy, využívající jako přenosové médium masmédia a bylo využito za druhé světové války, uvádí ve své knize Neil F. Johnson (Johnson et al., 2001):

12 3.3 Současné metody 12 Apparently neutral s protest is thoroughly discounted and ignored. Isman hard it. Blockade issue affects pretext for embargo on byproducts, ejecting suets and vegetable oils. Na první pohled naprosto nevinná zpráva. Pokud ale z každého slova vezmeme druhé písmeno a seřadíme je za sebe, dostaneme zajímavý výsledek: Pershing sails from NY June Současné metody V dnešní době, kdy všechny moderní technologie a vědy využívají výpočetní techniky, steganografie není výjimkou. Počítače nám poskytují dříve nevídané možnosti pro ukrývání zpráv. Jako nosiče zprávy se nejčastěji využívají různé multimediální formáty. Princip je ale vždy stejný, a to ten, že se snažíme obelstít lidské smysly, které jsou od přírody dosti nedokonalé. Každý digitální formát si s sebou nese určité množství šumu, jehož se dá dokonale využít a ukrýt do něj informace, aniž bychom cokoli postřehli Mikrotečky Jak ve své knize uvádí Neil F. Johnson (Johnson et al., 2001), tato velmi zajímavá metoda byla objevena Němci během druhé světové války. Tehdejší ředitel FBI označil mikrotečky za mistrovský kousek v oblasti špionáže. Princip mikroteček spočívá v tom, že se vyfotí stránka textu a pomocí příslušné techniky je zmenšena na velikost tečky za větou. Tato metoda byla poprvé odhalena v roce 1941, kdy ji použil jeden z německých agentů. Zpráva nebyla nijak šifrována, jednoduše byla tak malá a nenápadná, že jí nikdo nevěnoval pozornost. Díky svým prakticky nulovým velikostem umožnily mikrotečky přenášení obrovského množství dat, a to včetně obrázků. Mikrotečky jsou hojně používány i v současnosti. Své využití našly například u výrobců automobilů slouží pro identifikování ukradených modelů. Na určitém místě na karosérii je vyražena mikrotečka, která v sobě obsahuje jedinečný identifikátor daného kusu automobilu. Díky tomu se dá jednoznačně určit jeho skutečný majitel v případě odcizení. Vývoj této metody pokračuje i v dnešní době. V roce 1999 se výzkumníkům z Mount Sinai School of Medicine v New Yorku podařilo ukrýt informace do vlákna lidské DNA. Různé kombinace aminokyselin nebo nukleotidů byly využity pro reprezentaci jednotlivých znaků zprávy. Přiložena byla i pomocná sekvence, která sloužila jako klíč pro nalezení správného vlákna, jenž v sobě neslo informace. Poté toto vlákno bylo přidáno k milionům jiných, ze kterých byla vytvořena mikrotečka a odeslána jako zpráva. Po přijetí zprávy jiným vědcem byla tato mikrotečka zvětšena, vyhledáno to správné vlákno a následně již bylo možné odhalit ukrytou zprávu.

13 3.3 Současné metody Digitální steganografie Princip digitální steganografie je vcelku jednoduchý. Specializovaný software podle předem daných zákonitostí do souboru přidá data, která potřebujeme ukrýt. Zvolíme-li vhodně poměr velikosti mezi ukrývanými daty a původním souborem, je prakticky nemožné cokoli postřehnout. Z toho faktu nám samozřejmě vyplývá další omezení, kterým je kapacita přenosového média. Velikost ukrývané zprávy logicky nemůže být větší, než je velikost nosného média, ale musí být několikanásobně menší. Jako vhodný poměr se většinou uvádí 1:10 větší množství ukrývaných dat by mohlo zvýšit riziko odhalení, naopak výrazně menší by vedlo ke značné neefektivitě při využití přenosového média. Je nepopiratelným faktem, že digitální steganografie v dnešní době nachází rozsáhlé využití, a to například v oblasti ochrany autorských práv. Pokud byste například na svém webu umístili obrázek stažený z libovolné komerční stránky (nebo například fotografii některého uživatele), nijak jste tento obrázek neupravili a vydávali byste jej za svůj, dopouštíte se tímto krádeže. Bude vás možné jednoduše usvědčit, pokud takový obrázek obsahuje digitální vodotisk. Další praktické využití digitální steganografie je možné vysledovat ve státech, kde je šifrování drasticky omezeno zákonem (jako tomu je například ve Francii). Toto omezení je zpravidla zdůvodňováno bojem s organizovaným zločinem či terorismem, respektive s jejich potlačením. Zajímavé, a svým způsobem paradoxní, je to, že steganografie je zde zcela legální a nabízí se jako nejlepší alternativa. Obecně vzato, steganografie stále není tou nejpoužívanější technikou pro ukrývání informací. Na pomyslném výsluní se v oblasti přenosu kratších zpráv drží kódová slova, pro přenos delších sdělení se využívá šifrování. Ukrývání informací do volného místa na pevném disku Tato metoda spočívá v uložení informací na tu část disku, kde ostatní uživatelé nemají přístup, nebo ji dokonce ani nevidí. Silnou stránkou této metody je to, že nám umožňuje ukrytí informací na nosič, který se jen velmi málo opotřebovává (pokud jde o skutečně nevyužívanou část disku, nedochází k žádnému opotřebení teoreticky tedy nikdy nedojde ke ztrátě ukrytých dat). Jak přesně tato metoda pracuje, si můžeme ukázat například na starých discích, které byly formátovány jako FAT32. Takto naformátovaný disk měl velikost jednoho clusteru 32 KB. V praxi to znamená, že minimální místo alokované pro jeden soubor mělo vždy 32 KB. Pokud některý soubor má velikost 1 KB, zbylých 31 KB zůstává nevyužitých. A přesně tohoto prostoru lze využít pro ukrytí zprávy, aniž by se zobrazoval jako využitý. Druhým způsobem využití pevného disku ke steganografických účelům jsou skryté partition (jeden fyzický disk je rozdělen na více logických). Skryté partition nejsou při běžném startu systému vidět a poskytují prostor pro uložení tajných dat. Mají ovšem jednu zásadní nevýhodu, díky které se příliš nevyužívají speciální utility pro práci s pevnými disky umí tyto skryté partition detekovat a odhalit tak naše tajemství.

14 3.3 Současné metody 14 Ukrývání informací do internetových paketů Každý den využívají síť Internet stamilióny lidí. Pro tuto komunikaci je využíváno spousty různých Internetových protokolů. A ty nám díky svým charakteristikám umožňují ukrýt nevídané množství informací. Vezměme si například protokol TCP/IP. Stejně jako všechny ostatní, tak i pakety tohoto protokolu obsahují hlavičku, která v sobě nese informace nezbytné pro přenos dat. Ne všechna data jsou ale nezbytná a hlavička je nemusí obsahovat (například označení priority paketu). A právě tento prostor je ideální pro vložení našich dat. Díky množství přenášených paketů máme možnost distribuovat obrovské množství informací. Ukrývání informací do audiosignálu Pro ukrývání informací do audiosignálu nejčastěji využíváme takzvaného low bit encoding, což je analogie metody LSB u grafických formátů (o této metodě budou čtenáři informování později). Postupujeme tak, že zprávu vkládáme do nejméně významných bitů v každém bytu. Odvážnějším postupem je kódování zprávy do dvou nejméně významných bitů v každém bytu. Tato metoda je ale použitelná jen u málo kvalitních nahrávek, které si s sebou nesou větší množství šumu. Výhodou je fakt, že získáme více prostoru pro ukrývání dat. Nevýhodou metody low bit encoding je přenos přes analogové médium, které zprávu úplně zničí šumem, stejně tak jako převzorkování. Další metodu představuje parity coding, neboli kódování zprávy s využitím bitů, které slouží pro kontrolu parity. V každé části audiosignálu se nachází jeden paritní bit. Je-li příslušný bit naší zprávy roven paritnímu bitu, necháme jej beze změny. V opačném případě změníme jeden z LSB v části audiosignálu a následně změníme i paritní bit. Kontrola parity zůstane v pořádku, audiosignál však již ukrývá část naší zprávy. Při opětovném získání zprávy z audionahrávky postupujeme tak, že čteme pouze paritní bity a složíme z nich výslednou zprávu. Zajímavou metodou kódování informací do audiosignálu představuje kódování pomocí fázových posunů. Audiosignál je složen ze sinusových vln, které mají různou frekvenci a amplitudu. Tyto vlny mají také různý fázový posun. Lidské ucho vnímá jen frekvenci (výška tónu) a amplitudu (intenzita tónu), ale fázový posun není schopno rozpoznat. DFT (Diskrétní Fourierova transformace) nám umožní rozložit signál na sinusové vlny (jedná se analogii Talorovy řady pro polynomy) a následně upravíme fázový posun elementárních funkcí tak, aby kódoval zprávu, a zrekonstruujeme audiosignál. Pro lidské ucho je změna nahrávky nepostřehnutelná, nový zvukový soubor se však výrazně liší od toho původního. Samozřejmě, čím složitější a delší zvukovou nahrávku použijeme, tím větší prostor získáváme pro uložení zprávy. Velmi častou, oblíbenou a špatně detekovatelnou metodou ukrývání dat, je vkládání informací do šumu. Každá běžná nahrávka obsahuje větší či menší množství šumu, kterého se dá dokonale využít. Postupujeme tak, že naši zprávu namodulujeme na neslyšitelnou frekvenci a vzniklý signál přidáme do zvukové nahrávky.

15 3.4 Využití grafických formátů v oblasti steganografie 15 Příjemci zprávy pak už jen stačí oddělit signál příslušné frekvence a může dekódovat zprávu. V tomto případě se vlastně jedná o princip elektromagnetického přenosu v reálném světě (do hlasu je na neslyšitelné frekvenci ukryt signál rádia či televize, signál internetového modemu je přidán do kabelové televize, atd.). (Steganografie) Poslední metodou, kterou autor zmíní, je ukrývání informací do ozvěny. Jak uvádí Poulami Dutta (Dutta et al., 2009) ve svém dokumentu, princip spočívá v uložení zprávy do ozvěny, která je přidána do diskrétního signálu. Výhodou této metody je to, že poskytuje velký prostor pro uložení dat, a na rozdíl od metody ukrývání zpráv do šumu, je velmi odolná proti zničení. Dutta dále poznamenává, že jedna ozvěna může být využita k zakódování pouze jednoho bitu zprávy. Proto je potřeba před samotným procesem kódování rozdělit původní signál do bloků, které se po dokončení kódování opět spojí dohromady. Ukrývání informací do spustitelných souborů V dnešní době se pro ukrývání informací nejčastěji využívají grafické nebo audio soubory. Stegoanalytici jsou si tohoto faktu vědomi a tyto formáty jsou nejčastěji terčem jejich analýz. Z tohoto důvodu je potřeba začít hledat vhodné formáty i někde jinde. DaeMin Shin (Shin et al., 2008) zmiňuje ve svém dokumentu techniky Stilo a Hydan, jenž se zabývají ukrýváním informací do spustitelných souborů. Polemizuje zde nad množstvím dat, které je možné do takovýchto souborů uložit. Možnosti jsou samozřejmě omezené, jelikož velké množství ukrytých dat by mohlo způsobit nestandardní chování aplikace nebo dokonce její pád. Z tohoto důvodu je potřeba objevit nové techniky, které by byly schopny ukládat větší objem informací bez poškození samotné aplikace. Problém spočívá také v tom, že existují metody pro podepsání integrity kódu aplikace, které dokáží detekovat jakoukoli manipulaci s originálními soubory. 3.4 Využití grafických formátů v oblasti steganografie Grafické formáty se v oblasti steganografie těší největší pozornosti a oblíbenosti. Je to dáno zřejmě tím, že obrázky jsou oproti jiným digitálním formátům relativně malé, lze je snadno umístit na web a diskrétně prohlédnout na každém počítači, zatímco hudební nebo video soubory přece jen vyžadují specializovanější software a hardware. Navíc, pokud nepoužijeme sluchátka, můžeme poslechem rušit své okolí. Grafické formáty dělíme do dvou hlavních skupin, a to na nekomprimované (většinou formát BMP) a komprimované. Komprimované formáty se poté dále dělí na formáty s bezztrátovou kompresí (GIF, PNG) a ztrátovou kompresí (JPEG). Pro steganografii jsou obecně nejvhodnější formáty nekomprimované, a to ze dvou důvodů (v praxi se ale využívají prakticky všechny formáty). První důvod je zřejmě každému čtenáři jasný jejich velikost. Ta nám do nich dovoluje uschovat větší množství dat anebo daná data rozložit do většího prostoru, což samozřejmě snižuje možnost detekce uschované zprávy. Druhý důvod není na

16 3.4 Využití grafických formátů v oblasti steganografie 16 první pohled zřejmý, ale vychází pravděpodobně z největší slabiny digitální steganografie. Jakýkoliv editační zásah do souboru (například otočení obrázku o 90 stupňů nebo změna formátu) s sebou nese vysoké riziko (v některých případech jistotu) úplného znehodnocení celé zprávy. Každý takový zásah totiž v praxi znamená, že soubor bude upraven příslušným matematickým algoritmem (a s ním i ukrytá zpráva). Tento algoritmus přirozeně nepočítá s tím, že by soubor mohl ukrývat nějakou zprávu a nebere na ni ohled. U komprimovaných formátů je takovýto algoritmus drastičtější, avšak ani nekomprimované formáty nejsou vůči tomuto procesu nijak zvlášť odolné například jakákoliv změna velikosti obrázku je spolehlivou cestou k likvidaci steganograficky ukryté zprávy (o změně formátu ani nemluvě). Asi každému čtenáři je jasné, které obrázky jsou pro ukrývání zpráv nejvhodnější. Nejhorší variantou je zcela bílý obrázek, na němž by byl vidět jakýkoliv zásah, ale vhodné nejsou ani obrázky obsahující větší stejnobarevné plochy (například vyfocená obloha). Naopak jednoznačně nejvhodnější jsou nosiče obsahující mnoho různých barev a přechodů mezi nimi Barevné modely Jak uvádí Murray a Ryper (Murray a Ryper, 1997) ve své publikaci, barvy jsou definovány určením několika, většinou tří hodnot. Tyto hodnoty určují množství každé ze základních barev, někdy také nazývaných barevné kanály, které se mixují tak, aby daly dohromady výslednou barvu. Výsledná barva je tak definována jako uspořádaná množina hodnot. Příslušná barva představuje bod v grafickém spektru všech možných barev. Kvůli tomu se barvě někdy říká bod v barevném prostoru. RGB RBG je dnes nejrozšířenějším barevným modelem používaným ve formátech obrazových předloh. V modelu (systému) RGB jsou za základní a nerozložitelné barvy považovány barvy červená, zelená a modrá. Je to aditivní systém, ve kterém se mění množství červené, zelené a modré, které se přidávají do černé, a tak vznikají nové barvy. V grafickém souboru používajícím RGB barevný model je každý pixel reprezentován trojicí barev tří číselných hodnot ve formě (R, G, B), přičemž každá z nich přísluší dané základní barvě. Pro 24bitové trojice (0, 0, 0) představuje černou a trojice (255, 255, 255) bílou barvu. Pokud jsou tyto hodnoty jednotlivých složek nastaveny na stejnou hodnotu, jedná se o jeden z odstínů šedi. Ostatní barevné modely Vzhledem k faktu, že autor se ve své práci bude pracovat výhradně s barevným prostorem RGB, nepovažuje za důležité ostatní prostory podrobně popisovat. Uvedeme si pouze jejich stručný popis. Murray a Ryper (Murray a Ryper, 1997) ve svém díle popisují barevný systém CMY je subtraktivní systém, který se používá u tiskáren a fotografií. Barvy se zob-

17 3.4 Využití grafických formátů v oblasti steganografie 17 razují například inkoustem, většinou na bílém povrchu. Jednotlivé barvy vznikají odečítáním od barvy bílé. Barevný model HSV je jeden z mnoha barevných systémů, v němž se mění počet barevných úrovní, pomocí kterých se následně vytvářejí nové barvy. HSV se nejvíce přibližuje systému, který ke své práci používají malíři (přidávají černou, bílou a šedou do čistých barev). Na tomto systému jsou založeny i modely HSI, HSL a HBL, které jsou velmi podobné. Žára a kolektiv (Žára et al., 2005) ve své knize zmiňuje i barevný systém YUV, jenž je vlastně transformací systému RGB a používá se v televizní technice. Jak je zde dále uvedeno, na modelu YUV je založen barevný model YCbCr, který se v počítačové grafice využívá u JPEG obrázků Nejpoužívanější rastrové formáty současnosti BMP Formát BMP (BitMaP) v současnosti stále ještě patří mezi nejpoužívanější grafické formáty, a to i přesto, že je poměrně složitý na zpracování, a přitom nenabízí prakticky žádné užitečné vlastnosti. Proč je tedy tento formát tolik rozšířený a stále používaný? Důvod je jednoduchý. Tento formát byl navržen firmami IBM a Microsoft (každá firma navrhla jinou variantu) jako základní rastrový obrazový formát pro jejich operační systémy (OS/2 a Microsoft Windows). Díky tomu je načítání i ukládání obrázků v tomto formátu podporováno přímo v aplikačním rozhraní daného operačního systému a tvůrci programů mohou toto rozhraní využít, aniž by daný formát museli detailně znát. (Tišnovský, 2006) Ve formátu BMP jsou jednotlivé pixely zaznamenány přesně tak, jak jdou za sebou a pro každý z pixelů je zaznamenána barevná informace až do hloubky 24 bitů. BMP podporuje i alpha kanál, tedy dodatečnou grafickou informaci o průhlednosti daného pixelu uloženou v odděleném souboru o 256 úrovních šedé, která barevnou hloubku zvyšuje na 32 bitů. (Čech, 2007) Soubory uložené ve formátu BMP v drtivé většině nevyužívají žádnou kompresi a jsou proto větší než stejné obrázky uložené v jiném formátu. Existují ale i varianty, které kompresi (varianta RLE) využívají. Komprese je ovšem u BMP tak špatně navržená, že se využívá pouze u minima obrázků a některé aplikace s nimi ani nedokáží korektně pracovat. V některých případech dochází dokonce k tomu, že obrázek po komprimaci má větší velikost než před ní. Výhody formátu BMP: grafické informace jsou ukládány v maximální kvalitě, identické s předlohou. Formát se hodí k ukládání jakýchkoliv rastrových grafických informací. Velikost souborů BMP záleží pouze a jenom na počtu pixelů. Pro každý pixel ve 24 bitové barevné hloubce jsou vyhrazeny 3 bajty. Hlavička souboru zabírá 54 bajtů. Pomocí těchto údajů lze lehce vypočítat, jak velký bude soubor při určitém rozlišení. Mezi další výhody lze zařadit jednoduchost formátu, dobrou dokumentaci a také to, že není zatížen patenty, díky čemuž je možné jej volně používat. (Čech, 2007)

18 3.4 Využití grafických formátů v oblasti steganografie 18 Nevýhody formátu BMP: jednoznačnou a zásadní nevýhodou tohoto formátu je jeho velikost. Ta vyplývá už ze samotné specifikace formátu a podporuje ji komprimační metoda, která je velice špatně navržena. Použití: při potřebě maximálně zachovat kvalitu obrazu. GIF GIF (Graphics Interchange Format) je grafický formát využívající bezztrátovou kompresi, vyvinutý v roce 1987 americkou firmou CompuServe a dnes je nejčastěji využíván pro zobrazení webové grafiky. Jak uvádí Jaroslav Skřivan ve svém článku (Skřivan, 2002), formát GIF podporuje osmibitovou grafiku, což znamená, že obrázek může mít maximálně 256 barev na jeden rámec. Jednu barvu je možné v obrázku nastavit jako průsvitnou (transparent). Tato vlastnost ale byla přidána až ve vylepšené verzi formátu GIF, označované jako GIF89a. Kromě tohoto označení je ještě možné se setkat s označením prokládaný (interlaced) GIF89a. Prokládaný GIF se využívá právě při zobrazování webové grafiky, protože umožňuje postupné zobrazování obrázku už v průběhu stahování (v horší kvalitě a postupně se zaostřuje). Ve formátu GIF není obraz uložený jako jeden celek, ale jako určitý počet různě velkých pravoúhlých obrázků se společným grafickým pozadím (barvou). Části odpovídající pozadí tak nenesou žádnou informaci a nejsou kódované. Každý jednotlivý obrázek reprezentuje datový blok, ve kterém je definovaná relativní poloha vůči pozadí, počet různých barevných odstínů v obrázku a vlastní obrazová informace. (Josefy, 2001) Pro komprimaci je u tohoto formátu využíván algoritmus LZW. Tento algoritmus je bezztrátový, což znamená, že při opětovném ukládání obrázku jako GIF se z něj neztrácí žádná data (zůstává pořád stejně kvalitní). Co se týče účinnosti komprese, velikost původního obrázku je zmenšena zhruba na polovinu. Právě využití kompresního algoritmu LZW je ale důvodem, proč se od tohoto formátu postupně upouštělo. LZW podléhá autorským právům a díky tomuto faktu je GIF již od svých počátků doprovázen problémy. Autor nepovažuje za relevantní daný problém hlouběji rozebírat a pro bližší informace odkáže čtenáře na následující webovou stránku: Výhody formátu GIF: podpora více rámců (obdélníkové oblasti uvnitř logické obrazovky). Tento fakt zajišťuje větší kompresní poměr, může zvýšit barevnou hloubku celého obrazu, a také slouží k tvorbě animací a sekvencí snímků (takzvaný animovaný GIF). Nevýhody formátu GIF: tvorba delších animací znamená neúnosný nárůst velikosti souboru. Také není vhodný pro věrné zobrazení fotografií.

19 3.4 Využití grafických formátů v oblasti steganografie 19 Použití: u čárových obrázků skládajících se z malého počtu barev (loga, nápisy, ikony atd.) JPEG Hned v úvodu je potřeba uvést, že zkratka JPEG není přesným označením grafického formátu. Jak je uvedeno v publikaci od autorů Murrayho a Rypera (Murray, Ryper, 1997), zkratka JPEG (Joint Photographic Experts Group) označuje pouze organizaci tvořící standard a metodu komprese, ale ve skutečnosti neobsahuje žádný formát pro výměnu a přenos dat. JPEG komprese se například využívá i v grafických formátech PDF, PS, TIFF a multimediálním formátu MOV. Zcela správným označením tohoto formátu je JFIF (JPEG File Interchange Format), ale vzhledem k faktu, že obecně známe a rozšířené je spíše nepřesné označení JPEG, bude jej autor i nadále používat. Jak uvádí Skřivan ve svém článku (Skřivan, 2002), JPEG je o něco mladším kolegou formátu GIF. Jeho počátky se datují do roku 1990, kdy byl standardizován normou ISO a v roce 1991 začal být hojně používán. Jak je už z názvu formátu patrné, je určen především pro zobrazování fotografií a obrázků, které obsahují značné množství barev a jejich odstínů. V článku je dále publikováno, že formát JPEG podporuje čtyřiadvacetibitovou grafiku, obrázek tedy může obsahovat až barev. Všechny informace o jednotlivých barvách jsou uloženy v RGB složkách, kdy každá barva je vyjádřena jako trojkombinace tří základních barev červené (Red), zelené (Green) a modré (Blue). Zastoupení každé barvy můžeme vyjádřit číslem 0 až 255, což je 8 bitů, barvy jsou tři, tedy celkem potřebujeme 24 bitů pro vyjádření libovolné ze 16 miliónů možných barev. U formátu JPEG je v drtivé většině využívána ztrátová komprese (existuje i bezztrátová alternativa), která nám umožňuje dosáhnout výborného komprimačního poměru 1:50 až 1:100 při zachování velmi vysoké kvality obrazu. Ztrátová komprese ovšem znamená jeden nepříjemný fakt při opětovném ukládání obrázku jako JPEG dochází k částečné ztrátě kvality obrazu. Výhody formátu JPEG: vysoký komprimační poměr při zachování vysoké kvality obrázku. Není zatížen žádným patentem a je široce podporován. Nevýhody formátu JPEG: ztrátová komprese, která vede k postupné ztrátě kvality obrazu. Nevhodný pro obrázky s malým počtem barev, ostrými barevnými přechody nebo vykreslování písma. Použití: u fotografií s velkým počtem barev a monochromatických rentgenových a ultrazvukových snímků. Dnes je hojně využíván prakticky všude, a to i tam, kde jeho použití není doporučené (viz jeho nevýhody).

20 3.4 Využití grafických formátů v oblasti steganografie 20 PNG PNG je grafický formát využívající bezztrátovou kompresi, původně určený především pro web, vyvinutý konsorciem W3C. Počátky vývoje formátu PNG se datují do roku Koncem roku 1996 byla hotova první PNG specifikace verze 1.0 a koncem roku 1998 verze 1.1. Z dubna 1999 je verze 2nd CD ISO/IEC a 11. srpna 1999 byla dokončena verze 1.2. Jak ve svém článku uvádí Tišnovský (Tišnovský, 2006) i Kosek (Kosek, 1999), tento formát byl vytvořen jako náhrada za formát GIF, který je zatížen licenčními poplatky a všichni vývojáři software za jeho použití ve svých aplikacích musí zaplatit (viz výše uvedené informace). Ve článku od Janáka (Janák, 2002) je uvedeno, že ačkoli je formát PNG primárně určen pro použití na internetu, může mít i mnohem širší uplatnění. Nezávislost formátu na platformě, společně s dalšími jeho vlastnostmi, ho předurčuje také k používání jako formátu pro výměnu a archivaci dat v režimech pro popis barev v RGB, stupních šedi či indexovaných barvách. Velkou výhodou PNG je také podpora režimu TrueColor a možnost využití alpha kanálu. Jelikož je formát PNG označován za nástupce GIFu a částečně i JPEGu, nabízí se malé srovnání. Při porovnání velikosti PNG souboru s GIFem dojdeme k závěru, že PNG soubor je obecně menší, s výjimkou obrázků s velmi malým počtem barev a malou velikostí, kde je menší naopak GIF. Velikosti se liší i podle grafického editoru, kterým je soubor komprimován. Ve srovnání s JPEGem je PNG několikanásobně horší v případě obrázků blížících se svým typem fotografii, kdežto u spíše strohých obrázků s několika barvami je JPEG daleko horší než PNG. (Kyncl, 2002) Výhody formátu PNG: univerzální použití, dá se označit za formát budoucnosti. Není zatížen žádnými patenty, podporuje průhlednost i TrueColor režim. Nevýhody formátu PNG: formát jako takový žádnou výraznou nevýhodu nemá, zatím se ale z neznámého důvodu nedostal do povědomí lidí tak, jako třeba masivně používaný JPEG. Použití: prakticky stejné jako u GIFu, PNG navíc dokáže obstojně zobrazit i fotografie. Shrnutí grafických formátů Autor práce v předchozích odstavcích uvedl pouze krátký popis vybraných, nejčastěji využívaných formátů současnosti. Grafických formátů samozřejmě existuje několikanásobně více, ale jejich vyčerpávající popis a výčet není předmětem této diplomové práce. Jak je z výše uvedených informací vidět, s jedním grafickým formátem bychom si zřejmě ve všech oblastech grafiky nevystačili. Každý formát má své silné a slabé stránky a hodí se k jiným účelům. Následující tabulky obsahují krátké shrnutí vybraných vlastností jednotlivých formátů.

21 3.4 Využití grafických formátů v oblasti steganografie 21 Tab. 1: Shrnutí vybraných vlastností formátu BMP. BMP Vznik 1988 Hlavní použití při potřebě maximálně zachovat kvalitu Barevná hloubka 24 bitů Transparence ne Animace ne Komprese ne (existuje i verze s kompresí) Přípona.bmp MIME typ image/bmp Tab. 2: Shrnutí vybraných vlastností formátu GIF. Tabulka převzata z GIF, JPEG a PNG jak a kdy je použít? (Skřivan, 2002). GIF Vznik 1987 Hlavní použití Barevná hloubka Transparence Animace Komprese Přípona MIME typ jednoduché grafické objekty, ikony, loga, navigační prvky 8 bitů (lze i méně); až 256 barev na jeden rámec ano (jen verze GIF89a, jedna barva) ano ano, bezztrátová.gif image/gif Tab. 3: Shrnutí vybraných vlastností formátu JPEG. Tabulka převzata z GIF, JPEG a PNG jak a kdy je použít? (Skřivan, 2002). JPEG Vznik 1990 Hlavní použití Barevná hloubka Transparence Animace Komprese Přípona MIME typ fotografie, grafika s velkým množstvím barev a jejich odstínů 24 bitů; až 16,7 milionů barev ne ne ano, ztrátová (existuje i bezztrátová verze).jpeg,.jpg image/jpeg

22 3.4 Využití grafických formátů v oblasti steganografie 22 Tab. 4: Shrnutí vybraných vlastností formátu PNG. Tabulka převzata z GIF, JPEG a PNG jak a kdy je použít? (Skřivan, 2002). PNG Vznik 1996 Hlavní použití od jednoduchých ikon až po fotografie Barevná hloubka 8 bitů (lze i méně) či 24 bitů; až 16,7 milionů barev Transparence Animace Komprese Přípona MIME typ ano ne ano, bezztrátová.png image/png Metody pro ukládání informací do grafických formátů LSB u grafických formátů nevyužívajících barevnou paletu Metoda LSB (Least Significant Bit) je v současnosti zřejmě nejpoužívanější a nejoblíbenější metodou pro ukrývání informací do grafických formátů. Svojí oblíbenosti se tato metoda těší ze dvou důvodů. Jednak je poměrně jednoduchá na implementaci, a i přes svou relativní jednoduchost je velice efektivní. Zásah do nosiče zprávy je totiž jen minimální, tudíž je prakticky nemožné pouhým okem odhalit přítomnost steganografického obsahu. Krenn ve svém dokumentu (Krenn, 2004) potvrzuje autorovo tvrzení o metodě LSB, ale dodává, že tato metoda má i své nevýhody. Jelikož se často využívá všech pixelů, které obrázek obsahuje, je potřeba pracovat s grafickými formáty, jenž nevyužívají ztrátovou kompresi. Při komprimaci obrázku by zcela jistě došlo ke zničení ukryté zprávy. Proces ukrývání informací do nosiče popisují ve své knize Katzenbeisser a Petitcolas (Katzenbeisser a Petitcolas, 2000). Proces ukrývání spočívá ve vybrání elementů (pixelů) nosiče, které budou upraveny a samotném nahrazení nejméně významného bitu (bit nejvíce vpravo) v každém bytu. Existují i odvážnější varianty či modifikace LSB, a to ukládání do dvou nejméně významných bitů. Díky tomu nám nosič poskytne více prostoru pro naše informace, ale je to větší zásah do nosiče a hrozí vyšší nebezpečí odhalení ukryté zprávy pouhým okem (dochází k citelné změně zbarvení pixelů oproti původním hodnotám). Přesné fungování algoritmu autor demonstruje na jednoduchém příkladu. Nejvhodnější variantou nosiče je obrázek o barevné hloubce 24 bitů. To znamená, že každý jeden pixel obrázku je tvořen třemi barevnými složkami (viz barevný model RGB) po jednom bytu (8 bitů). Z každého bytu využijeme 1 bit, tedy 3 bity na pixel. Pro jednoduchost a názornost zakódujeme pouze jeden znak, například znak s. Binární reprezentaci znaku s představuje posloupnost (hodnota 115 v ASCII tabulce). Jak již autor uvedl, jeden pixel nám umožňuje ukrýt u standardní varianty metody LSB (LSB využívající pouze nejméně významný bit každého bytu)

23 3.4 Využití grafických formátů v oblasti steganografie 23 3 bity, z čehož vyplývá, že na zakódování znaku s budou potřeba 3 pixely. Tyto tři pixely pak mohou vypadat v binárním zápisu například následujícím způsobem: ( ( ) ( ) ( ) ) ( ( ) ( ) ( ) ) ( ( ) ( ) ( ) ) Pokud tedy chceme zakódovat znak s, který má binární reprezentaci , budou pixely po modifikaci metodou LSB vypadat následovně: ( ( ) ( ) ( ) ) ( ( ) ( ) ( ) ) ( ( ) ( ) ( ) ) Jak je na výše uvedeném příkladu možno pozorovat, v některých případech u původních hodnot nedošlo ke změně. To nám ale nijak nevadí, ba právě naopak. Čím méně zásahů do nosiče provedeme, tím lépe pro nás, jelikož se snižuje riziko odhalení ukryté zprávy. V praxi je tomu tak, že přepsání, respektive nepřepsání původních hodnot, je čistě dílem náhody. Záleží pouze na textu, který ukrýváme a na obrázku, který jsme použili. Zpráva je úspěšně zakódována. Aby ji bylo možné následně z obrázku získat zpátky, potřebuje příjemce znát sekvenci ukládání. V tom nejjednodušším případě odesílatel využil pixely tak, jak jdou za sebou, počínaje prvním. Tento způsob by ale vedl k bezpečnostnímu riziku. V drtivé většině případů by došlo k tomu, že proces ukládání informací do nosiče by skončil mnohem dříve, než by bylo dosaženo konce souboru. Takto ukrytá zpráva by ale byla poměrně snadno detekovatelná statistickými metodami stegoanalýzy, jelikož by jedna část obrázku měla výrazně odlišné výsledky. Proti tomuto nepříjemnému efektu se ale naštěstí dá bránit. První možností je přidat k ukrývané zprávě šum, tedy náhodné nesmyslné informace. Ty je možné vložit jak před samotnou zprávu, tak i ideálně za ni, a to až do dosažení konce souboru. Už tato metoda značně ztíží detekci pomocí statistických metod. Druhým, poněkud sofistikovanějším způsobem, je volba upravovaných pixelů obrázku pomocí pseudonáhodného generátoru. Jednotlivé pozice poté budou vybrány náhodně a informace rovnoměrně rozloženy po celém nosiči. Tyto vygenerované pozice poté budou zaslány příjemci jako klíč a na základě klíče již nebude problém vybrat ty hodnoty, po jejichž zřetězení bude zpráva odhalena. LSB u grafických formátů využívajících barevnou paletu Jak je uvedeno v knize (Katzenbeisser, Petitcolas, 2000), u obrázků využívajících barevnou paletu může být použita pouze určitá podmnožina barev ze specifického barevného prostoru. Každý takový obrázek se skládá ze dvou částí palety, speci-

24 3.4 Využití grafických formátů v oblasti steganografie 24 fikující určitý počet barev jako seznam indexových párů, které přiřazují každému indexu vektor barev a pro každý pixel index do palety barev. Pokud tedy obrázek obsahuje jen malé množství barev, je dramaticky redukována jeho celková velikost. Obecně existují dva způsoby, jak kódovat informace do těchto grafických formátů, a to pomocí manipulace s paletou nebo obrazovými daty. Při úpravě palety je měněn nejméně významný bit u barevných vektorů. Pokud není potřeba paletu setřídit, informace mohou být ukládány do barev přesně tak, jak jsou uloženy v paletě. Tento způsob má ale jednu značnou nevýhodu. Pokud by útočník chtěl zničit ukrytou zprávu, potom mu stačí jen jinak setřídit barevnou paletu. Druhý způsob spočívá v ukrytí informací do obrazových dat. Ten s sebou ale také nese určitá rizika. Jelikož hodnoty sousedních barev v paletě nemusí být nutně podobné, jednoduchá změna LSB by u některých obrázků selhala došlo by totiž k výrazné změně barvy. I pro tento problém existuje několik řešení, které vysvětluje ve svém dokumentu Morkel a kolektiv (Morkel et al.). Jednou z možností je setřídění barevné palety ještě před samotným kódováním tak, aby si sousední barvy byly podobné. Další možnost spočívá v přidání nových barev do barevné palety, které budou podobné těm původním. Toto řešení ale vyžaduje, aby původní nosič obsahoval méně jedinečných barev, než je maximální množství vycházející z barevné hloubky obrázku. Zřejmě jako nejlepší řešení se jeví využití obrázků ve stupních šedi. Pokud bychom si vzali jako příklad formát GIF s 256ti odstíny šedé, tak přechody mezi sousedními barvami jsou jen nepatrné a lidským okem nepostřehnutelné. Využití DCT Jak ve své knize uvádějí Katzenbeisser s Petitcolasem (Katzenbeisser a Petitcolas, 2000), populární metodou pro ukrývání informací je modulace relativní velikosti dvou nebo více DCT koeficientů v rámci jednoho bloku obrázku. DCT (discrete cosine transformation) je algoritmus umožňující ztrátovou kompresi obrázků, který se hojně využívá například u grafického formátu JPEG (JFIF). Během procesu kódování odesilatel rozdělí nosič na bloky o velikosti 8 8 pixelů a každý blok bude ukrývat přesně jeden bit naší zprávy. Proces kódování začíná vybráním pseudonáhodného bloku, který bude použit pro uložení určitého bitu naší zprávy. Před začátkem komunikace se odesilatel i příjemce zprávy musí dohodnout na umístění dvou DCT koeficientů, které budou využity pro proces kódování. Tyto dva koeficienty by měly odpovídat cosinovým funkcím se středními frekvencemi to zajistí, že informace budou uloženy v podstatné části signálu (uložení do podstatné části signálu je důležité z toho důvodu, aby nedošlo ke zničení informací při kompresi obrázku). Pokud jsme si takto předpřipravili obrázek, zvolíme vhodné hodnoty DCT koeficientů. Ty volíme podle kvantizačních hodnot, které jsou s nimi spjaty v rámci komprimačního algoritmu a hledáme stejné hodnoty. Po jejich nalezení můžeme začít se samotným procesem kódování. Pro dekódování ukrytých informací je potřeba provést transformaci pomocí DCT nad všemi bloky obrázku. Porovnáním dvou koeficientů každého bloku může

25 3.4 Využití grafických formátů v oblasti steganografie 25 být zpráva odhalena. Pokud byly správně zvoleny DCT koeficienty, proces kódování informací nesníží viditelně kvalitu nosiče. Jak uvádí Morkel a kolektiv (Morkel et al., 2005) ve svém dokumentu, zezačátku se zdálo, že grafické formáty využívající ztrátovou komprese budou vzhledem k určité modifikaci obrázku zcela nevhodné pro steganografické účely. Jeden z principů steganografie totiž spočívá v ukládání informací do redundantních dat nosiče, ty ale DCT ve snaze snížit výslednou velikost obrázku odstraňuje. Vzniklo tedy podezření, že zpráva bude kompresí nenávratně poškozena a ikdyby se ji podařilo uchovat neporušenou, změny v nosiči by ve výsledku způsobily vnímatelný rozdíl v kvalitě obrázku. Jak se tedy na první pohled jevilo použití DCT jako zcela nevhodné, opak je pravdou. Při dodržení všech pravidel kódování nedojde k postřehnutelné změně v obrázku a tudíž se DCT dá bez problémů využít pro steganografické účely. Patchwork Johnson a Jajodia (Johnson a Jajodia, 1998) popisují patchwork jako techniku ukrývání informací do obrázku, která pracuje se světlostí jednotlivých pixelů. K původním datům jsou podle určitého vzoru přidány redundantní údaje, a až poté jsou informace ukládány do obrázku, a to po celé jeho šířce (dochází tudíž k určité formě značkování oblastí obrázku). Tento přístup umožňuje ochránit ukrytá data před manipulacemi s nosičem, jako je například rotace nebo oříznutí, jelikož jsou důkladněji uložena. Bender a kolektiv (Bender et al., 1996) tuto techniku popisují následovně: pseudonáhodně jsou vybrány dva patche (oblasti), patch A a patch B. Obrazové informace v patchi A jsou zesvětleny, zatímco v patchi B jsou ztmaveny. Změna ve světlosti mezi jednotlivými patchi poté reprezentuje bity ukrývané zprávy. Autoři dále dodávají, že ukrývaná data jsou nezávislá na původním nosiči, díky čemuž jsou tolik rezistentní proti ne geometrickým zásahům do obrázku. Shrnutí steganografických metod používaných u grafických formátů Každá z výše uvedených metod má své výhody a nevýhody. Obecně se nedá říci, že by jedna metoda byla nejlepší nebo nejhorší. Pokud jde o metodu LSB, ať už u obrázků s barevnou paletou nebo bez ní, její výhodou je poměrně jednoduchá implementace a umožňuje nám ukrýt velké množství dat. Naopak její nevýhodou je poměrně malá odolnost vůči statistickým útokům a manipulacím s nosičem. Co se týče metody využití DCT, ta je o něco odolnější vůči manipulacím s obrázkem a statistickým útokům než LSB, ale na druhou stranu nám neumožňuje uložit takové množství informací jako v předchozím případě. Pomyslným vítězem by se mohla stát metoda patchworku, která je velmi odolná proti manipulacím s nosičem a statistickým útokům, poskytuje vysokou míru neviditelnost ukrytých informací a navíc je nezávislá na formátu nosiče, ale i tato metoda má jednu nevýhodu. Tou je množství informací, které pomocí ní můžeme ukrýt oproti svým konkurentům jednoznačně nejmenší.

26 3.5 Současné steganografické nástroje 26 Při případném výběru metody, kterou použijeme pro ukrytí našich citlivých informací, je tedy důležité vzít v úvahu různá hlediska. Potřebujeme ukrýt pouze malé množství informací? Potom použijeme rozhodně patchwork. Pokud naopak potřebujeme ukrýt větší množství dat, budeme volit spíše mezi DCT nebo LSB. V úvahu samozřejmě musíme vzít i formát grafického nosiče, který hodláme použít, anebo jej budeme muset přizpůsobit zvolené metodě. 3.5 Současné steganografické nástroje Steghide Steghide je pravděpodobně nejznámější aplikace zabývající se steganografií, která se na trhu vyskytuje a licencovaná je pod GNU General Public License. Steghide umí skrývat data v různých druzích grafických a audio souborech. Aplikace nemění vzorkovací frekvence jednotlivých barev, čímž je jakákoliv detekce ukrytých informací pomocí statistických testů prvního řádu nemožná. Mezi další funkce je možné zařadit kompresi a šifrování vložených dat, a automatickou kontrolu integrity pomocí kontrolních součtů. Podporovanými formáty pro ukládání informací jsou nejenom grafické, jako je JPEG a BMP, ale i zvukové, a to WAV a AU. Co se týče formátu ukrývaných dat, na ty neexistuje žádné omezení. Tento program využívá při skrývání informací teorii grafů. Algoritmus ukládání pracuje zhruba následovně. Nejprve jsou tajná data zkomprimována a zašifrována. Následně je vytvořena sekvence pozic pixelů tak, jak budou uloženy do nosiče, a to na základě pseudonáhodného generátoru čísel. Pozice (pixely), které nepotřebují být změněny (jelikož už obsahují správná data náhodný fakt), jsou vyřazeny. Následně algoritmus najde dvojice pozic tak, že výměna jejich hodnoty má za následek vložení odpovídajících část tajných dat. Pokud již algoritmus nemůže najít žádné další dvojice, ukončí výměnu dat. Pixely na zbývajících pozicích (ty, které nemají svůj pár) jsou upraveny tak, aby obsahovaly vkládaná data (jsou přepsány). Skutečnost, že většina procesu vkládání dat je provedena záměnou hodnot pixelů, vede k faktu, že statistické útoky prvního řádu selhávají při detekci ukrytých dat. Co se týče zvukových souborů, algoritmus je stejný (místo pixelů jsou využívány jednotlivé vzorky). Výchozím šifrovacím algoritmem je Rijndael s klíčem o velikosti 128 bitů. Pokud nejste z jakéhokoliv důvodu spokojeni s touto kombinací, můžete si vybrat jinou. Kontrolní součet je vypočítán pomocí CRC32 algoritmu. (Hetzl, 2002) Steghide je aktuálně k dispozici ve verzi pro operační systém Windows a Linux. Aplikace je dostupná například z těchto oficiálních webových stránek: MP3Stego MP3Stego, jak již název napovídá, ukrývá informace do formátu MP3, a to během procesu komprese. Ukrývaná data jsou nejprve komprimována, následně zašifrována

27 3.5 Současné steganografické nástroje 27 a poté skryta do MP3 bitového toku. Tento postup má i svou výhodu. I když je MP3Stego steganografický nástroj, může být vkládanými informacemi využit při označení pravosti MP3 souboru (je to sice slabá ochrana, ale lepší než žádná). Tento postup ukládání skrytých informací má ale jednu zcela zásadní slabinu, a tou je poměrně jednoduché znehodnocení ukryté zprávy. Daný soubor stačí vzít, dekomprimovat jej a znovu komprimovat. Tento postup povede ke zničení ukryté zprávy. Proces ukrývání informací probíhá v srdci Layer III kódování, zejména v inner loop. Inner loop kvantuje vstupní data a zvyšuje kvantizační velikost kroku dokud kvantizovaná data nemohou být zakódována s dostupným počtem bitů. Další smyčka kontroluje, zda šum zavedený kvantizací nepřesahuje hranici stanovenou psychoakustickým modelem. Part2 3 length proměnná obsahuje počet bitů používaných pro data Huffmanova kódování v MP3 bitovém toku. MP3Stego poté kóduje bity s využitím paritních bitů, a to změnou stavu koncové smyčky v inner loop. Jen některé náhodně vybrané part2 3 length hodnoty jsou upravené, výběr se provádí pomocí pseudonáhodného generátoru bitů, založeném na SHA-1. (Petitcolas, 2009) MP3Stego je aktuálně k dispozici ve verzi pro operační systém Windows. Aplikace je dostupná například z těchto oficiálních webových stránek: Outguess OutGuess je univerzální steganografický nástroj, který umožňuje vkládání skrytých informací do redundantních bitů datových zdrojů. Na typu ukládaných informací nezáleží. Program pracuje tak, že extrahuje redundantní bity z budoucího nosiče zprávy a po jejich modifikaci je zapíše zpět (poté už nesou ukrývanou zprávu). V současnosti OutGuess podporuje grafické formáty PNM a JPEG. U obrázků ve formátu JPEG aplikace OutGuess zachovává statistiky založené na frekvenčních počtech. Důsledkem tohoto faktu je to, že statistické testy (útoky) založené na frekvenčních počtech nejsou schopny odhalit přítomnost steganografického obsahu. Ještě předtím, než začne vkládání dat do obrazu, dokáže aplikace určit maximální velikost zprávy, která může být skryta při zachování schopnosti odolávat statistickým útokům pro odhalení ukryté informace. Aplikace používá obecný iterátor, který vybírá bity nosiče zprávy, jenž jsou vhodné k modifikaci. Takzvaný seed (autor práce tento výraz nebude překládat do češtiny, jelikož významově nedává v daném kontextu smysl a ponechá na tomto místě originální označení) lze použít ke změně postupu práce iterátoru. Tento seed je zakotven v nosiči zprávy společně se zbytkem ukrývaných dat. Změnou seedu dojde k tomu, že se OutGuess bude snažit najít takovou sekvenci bitů, která minimalizuje počet změn v nosiči, jež by byly provedeny. (Provos, 2008) OutGuess je aktuálně k dispozici ve verzi 0.2 pro operační systémy třídy Unix. Aplikace je dostupná například z těchto oficiálních webových stránek:

28 3.5 Současné steganografické nástroje OpenPuff Posledního zástupce steganografických aplikací, kterého autor uvede ve své práci, je OpenPuff. Tato aplikace (zcela neprávem) není tak známá jako výše uvedené, ale přesto nabízí silné steganografické mechanismy a podporu velkého množství formátů, které mohou sloužit jako nosič pro ukrývanou zprávu. Zcela zásadní výhodou této aplikace je to, že dokáže ukrývaná data rozdělit mezi mnoho nosičů najednou. Pokud by následně útočník chtěl naše ukrytá data odhalit, musel by znát přesné pořadí nosičů, do kterých byla zpráva ukryta. Celkem je možno ukrýt až 256 MB dat, záleží pouze na tom, jestli je k dispozici dostatečný počet nosičů. Poslední nosič v pořadí je poté doplněn náhodnými daty, a to z toho důvodu, aby byl k nerozeznání od zbývajících nosičů. Pozoruhodné je i množství formátů, které jsou podporované jako nosič zprávy. U grafických formátů to jsou BMP, JPG, PCX, PNG a TGA, u audio formátů AIFF, MP3, NEXT/SUN a WAV, u video formátů 3GP, MP4, MPG a VOB a dále jsou podporovány i formáty FLV, SWF a PDF. Aplikace obsahuje celkem 4 bezpečnostní mechanismy. Prvním mechanismem je šifrování. Aplikace spojuje 16 open source moderních 256 bitových kryptografických algoritmů do jednoho dvoj heslového algoritmu, který je použit pro zašifrování zprávy. Druhý bezpečností mechanismus představuje náhodné rozmístění ukrývaných informací. Šifrovaná data jsou vždy různě rozmístěna, a to z toho důvodu, aby nebylo možné detekovat určitý vzor, podle kterého byla data ukryta. Nový kryptograficky bezpečný generátor pseudonáhodných čísel (CSPRNG) je poté společně se třetím heslem (256 bitovým) přimíchán do nosiče s náhodnými indexy. Třetí bezpečnostní mechanismus spočívá v přidání velkého množství šumu k ukrývaným informací, což dále stěžuje detekci. Poslední, tedy čtvrtý bezpečnostní mechanismus, vezme předešlými mechanismy upravená data a zakóduje je pomocí nelineární funkce, stejně jako bity původního nosiče. Takto modifikované nosiče budou vyžadovat daleko méně úprav a budou lépe odolávat statistickým útokům na odhalení ukrytých informací. (Oliboni, 2011) OpenPuff je aktuálně k dispozici ve verzi 3.40 pro operační systém Windows. Aplikace je dostupná například z těchto oficiálních webových stránek: Steganography Home.html Shrnutí steganografických aplikací Aplikací, které uplatňují steganografické principy, je samozřejmě mnohem více (autor práce jich našel přes 100). Vzhledem k omezenému rozsahu práce byli prezentováni pouze 4 výše uvedení zástupci. Jak je vidno, tajné informace je možné ukrývat prakticky do jakýchkoliv digitálních formátů v různých operačních systémech, a kromě samotného procesu vkládání dat jsou používány i různé techniky, kterými se snaží autoři těchto nástrojů ztížit nebo prakticky znemožnit stegoanalýzu, jenž by mohla přítomnost ukrytých informací detekovat. Následující tabulky shrnují klíčové vlastnosti výše uvedených steganografických nástrojů.

29 3.5 Současné steganografické nástroje 29 Tab. 5: Shrnutí vybraných vlastností aplikace Steghide. Steghide Licence GNU General Public License Podporované formáty JPEG, BMP, WAV a AU Podporované operační systémy Windows, Linux Šifrování ukrývaných dat ano Schopnost odolat statistickým útokům ano Aktuální verze Tab. 6: Shrnutí vybraných vlastností aplikace MP3Stego. MP3Stego Licence Open source Podporované formáty MP3 Podporované operační systémy Windows Šifrování ukrývaných dat ano Schopnost odolat statistickým útokům Aktuální verze Tab. 7: Shrnutí vybraných vlastností aplikace Outguess. Outguess Licence BSD Podporované formáty PNM, JPEG Podporované operační systémy systémy třídy Unix Šifrování ukrývaných dat ne Schopnost odolat statistickým útokům ano Aktuální verze 0.2 Tab. 8: Shrnutí vybraných vlastností aplikace OpenPuff. OpenPuff Licence Freeware Podporované formáty BMP, JPG, PCX, PNG, TGA, AIFF, MP3, NEXT/SUN, WAV, 3GP, MP4, MPG, VOB, FLV, SWF, PDF Podporované operační systémy Windows Šifrování ukrývaných dat ano Schopnost odolat statistickým útokům ano Aktuální verze 3.40

30 3.6 Shrnutí poznatků o steganografii Shrnutí poznatků o steganografii Jak lze vyčíst z výše uvedených odstavců, digitální steganografie je mladá a perspektivní věda, která nám poskytuje dříve nevídané možnosti v oblasti ochrany soukromí. Chtělo by se říci, že steganografie je nástupce kryptografie, ale ve skutečnosti se tyto dvě vědy vhodně doplňují a navzájem posilují. Zatímco kryptografie se snaží z přenášené zprávy vytvořit jakýsi shluk znaků, který nedává žádný smysl a je pro útočníka nečitelný, steganografie se snaží skrýt samotnou existenci zprávy. Pokud tyto dva přístupy dáme dohromady, dostaneme velmi silný mechanismus pro ochranu soukromí. Všechny steganografické systémy samozřejmě nejsou stejně silné. Síla takového systému závisí na několika faktorech. Jednak je potřeba vhodně vybrat médium, které ponese naši zprávu. Na výběr máme spoustu variant, ale v současnosti jsou suverénně nejpopulárnější multimediální formáty. Video, audio a grafické formáty nám poskytují rozsáhlé možnosti pro ukrývání citlivých nebo tajných dat. Kromě vhodně zvoleného nosiče je potřeba zvážit i algoritmus, který pro ukrytí informací chceme použít, s čímž souvisí i množství ukrývaných dat. Pokud nám jde především a hlavně o neviditelnost steganografického obsahu, nejspíše zvolíme metodu LSB, která v nosiči provádí nejmenší zásahy. Jestliže potřebujeme spíše odolnost ukrytého obsahu proti různým manipulacím s nosičem, pak je metoda LSB nepoužitelná a je lepší zvolit například patchwork. Samozřejmě, že při volbě algoritmu je potřeba zohlednit i použitý nosič a naopak. Některé algoritmy jsou pro určité nosiče zcela nevhodné, jiné se naopak přímo nabízejí. Největší oblibě se v současnosti těší metoda LSB v kombinaci s různými grafickými formáty. Důvod je jednoduchý. Implementace LSB je relativně jednoduchou záležitostí, a přesto efektivita je velmi vysoká. Změny provedené touto metodou v nosiči zprávy jsou jen nepatrné, tudíž běžným okem nepostřehnutelné a navíc LSB umožňuje ukrytí poměrně velkého množství informací. Metoda LSB je sice poměrně jednoduše detekovatelná statistickými útoky, ale jelikož je velmi nenápadná, nosič nevzbuzuje pozornost a tudíž nemusí být útočníkem vůbec prověřen. Principy steganografie již uplatňuje obrovské množství různého softwaru. Autor při svém studiu problematiky narazil na více než 100 odlišných aplikací, které ukládají data do různých nosičů, nejčastěji však grafických formátů. Některé aplikace jsou komerční a vzhledem k tomuto faktu nejsou dostupné bližší informace o používaných algoritmech či postupech při ukrývání dat, ale existují i bezplatné, kvalitní a velmi dobře zdokumentované programy, které poodkrývají tajemství steganografie. Mezi tyto programy lze zařadit například Steghide, který ve svém oboru patří mezi špičku. Následující kapitola již bude věnována stegoanalýze, tedy vědě, která je přesným opakem steganografie, snaží se ji prolomit a odkrýt její tajemství. Autor se zde seznámí se základními principy stegoanalýzy, s používanými metodami pro detekci steganografického obsahu, a také s aplikacemi, které se touto problematikou zabývají a uplatňují její v principy v praxi.

31 4 STEGOANALÝZA 31 4 Stegoanalýza 4.1 Vězňův problém Problém stegoanalýzy a steganografie bývá často popisován pomocí takzvaného Vězňova problému, který byl poprvé popsán G. J. Simmonsem v roce Jak uvádí Katzenbeisser (Katzenbeisser a Petitcolas, 2000), jedná se o klasický model skryté komunikace. Alice a Bob 1, kteří představují steganografy, jsou uvězněni z důvodu spáchání blíže nespecifikovaného prohřešku a jsou umístěni do dvou různých cel. Chtějí vymyslet plán útěku a je jim povoleno mezi sebou komunikovat. Naneštěstí je ale jejich komunikace kontrolována dozorcem, kterého představuje Wendy 2. Ta představuje stegoanalytika a Alici s Bobem nepovoluje skrytou komunikaci. Pokud by Wendy odhalila takovouto komunikaci, Alici a Bobovi by byla zakázána jakákoliv další výměna zpráv. Z tohoto důvodu musí Alice a Bob komunikovat takovým způsobem, aby Wendy neměla sebemenší podezření na ukrytý steganografický obsah. Prakticky lze toto provést ukrytím zprávy do zdánlivě bezvýznamného obsahu. Bob může například Alici poslat obrázek modré krávy ležící na zelené pastvině (pro účel vysvětlení principu stegoanalýzy a steganografie budeme předpokládat, že Alice a Bob mají ve svých celách přístup k počítači a můžou pro výměnu zpráv použít různé formáty, i když je toto v reálném světě nepravděpodobné) a Wendy absolutně nebude tušit, že barva krávy představuje určité informace. V předchozím modelu Wendy vystupovala jako takzvaný pasivní dozorce (stegoanalytik). V horším případě, pro Alici a Boba, může Wendy modifikovat zprávy, které si mezi sebou vyměňují. Wendy může například změnit barvu krávy z modré na červenou a zničit tak informaci. V tomto případě Wendy hraje roli aktivního dozorce. Nejhorším případem pro Alici a Boba je, když Wendy hraje roli takzvaného zlomyslného útočníka (jedná se o volný překlad, v anglickém originálu popisován jako malicious attacker). Wendy využívá stejného komunikačního kanálu jako naši vězňové, vytváří falešné zprávy, posílá je Alici nebo Bobovi a tváří se jako jedna z komunikujících stran. Katzenbeisser dále vysvětluje, že výše uvedený model je obecně aplikovatelný na mnoho situací, ve kterých hraje roli steganografie a stegoanalýza. Alice a Bob reprezentují dvě komunikující strany, které si potřebují vyměnit informace (steganografy) a Wendy působí v roli záškodníka (stegoanalytika), který se snaží komunikaci odhalit, případně sabotovat. Alice a Bob tedy při své komunikaci musí vzít v úvahu, 1 Jedná se o časté pojmenování komunikujících stran v kryptografii nebo steganografii, které vychází z počátečních písmen abecedy (zachováno je i rovnoměrné rozložení zástupců mužského a ženského pohlaví). Jména umožňují jasnější a rychlejší výklad než v případě použití označení typu osoba A a osoba B, či neustálého opakování výrazu vysílající a přijímající. Autor se této konvence bude držet. 2 Opět se jedná o konvenci. Jméno úmyslně začíná na písmeno w, jelikož anglický výraz pro dozorce (warden) tímto znakem začíná.

32 4.2 Vymezení pojmu stegoanalýzy a její princip 32 že existuje potenciální pasivní, aktivní nebo zlomyslný útočník, který se bude snažit nabourat jejich komunikaci. 4.2 Vymezení pojmu stegoanalýzy a její princip Jednoduše řečeno, stegoanalýza je opakem steganografie. Jestliže cílem steganografie je ukrýt informace do nosiče tak, aby nebyly viditelné a zároveň nosič nebyl podezřelý, pak cílem stegoanalýzy je tyto informace detekovat, extrahovat, měnit, nebo případně i zničit. Meghanathan a Nayak ve svém dokumentu (Meghanathan a Nayak, 2010) definují stegoanalýzu jako umění detekovat přítomnost ukrytých informací v nosiči a existuje společně se steganografií. V dokumentu se dále uvádí, že stegoanalýza získala významné postavení v oblasti národní bezpečnosti a forenzních věd, jelikož detekce ukrytých zpráv může vést k prevenci katastrofálních bezpečnostních incidentů. Stegoanalýza je složitým vědním oborem, což je dáno nedostatečnou znalostí o specifických vlastnostech daného nosiče a algoritmu, který je použit pro ukrytí informací. Svou definici přidává i Kerr (Kerr, 2008), který stegoanalýzu popisuje jako protizbraň steganografie, jenž k detekci ukrytých informací využívá především statistických útoků. Kerr dále zmiňuje, že stegoanalýza může být cílená nebo slepá. Cílená stegoanalýza je zaměřena na detekci konkrétní metody použité pro kódování zprávy (nejčastěji používaný způsob), kdežto slepá stegoanalýza se snaží použitou metodu odhalit a může vést i k objevení nové metody (velmi zřídka používané). Výsledek stegoanalýzy následně následně může být kvantitativní, který se snaží odhadnout množství ukrytých dat anebo čistě binární nosič obsahuje či neobsahuje ukrytou zprávu. Většina stegoanalytiků podle Kerra využívá dvě metodologie, u kterých uvádí i jejich klady a zápory. První metodologií je kombinatorická analýza operace ukrývání informací. Její výhodou je vysoká citlivost, obvykle nízká náročnost na výpočetní prostředky a aplikovatelnost na mnoho různých typů nosičů. Naopak nevýhodou této metodologie je nalezení specifických vlastností nosiče, často také nalezení a navržení vhodného detekčního algoritmu. Druhou metodologií je aplikace technik strojového učení. Výhodou této metodologie je to, že není potřeba zcela znát proces kódování, je možné využít standardních technik a lehce se přidávají nové funkce. Mezi nevýhody patří náchylnost k zahrnutí velkého množství zbytečných funkcí, často velká výpočetní náročnost, a také potřeba odlišného trénování pro různé typy nosičů. 4.3 Možnosti detekce ukrytých informací v grafických formátech Jak uvádějí Johnson a kolektiv ve své knize (Johnson et al., 2001), k odhalení ukrytých informací v grafických formátech je potřeba znalosti aplikace, pomocí které byla data uložena, jinak se jedná o velmi složitý a komplexní problém. Každá apli-

33 4.3 Možnosti detekce ukrytých informací v grafických formátech 33 kace totiž produkuje stego-obrázky s určitými charakteristikami, které slouží jako vodítko k identifikaci použité metody. Johnson a kolektiv dále vysvětlují, že detekování steganografického obsahu je založeno na kombinaci nosiče, ukrývané zprávy a použitém nástroji pro ukrytí informací. Možnosti nebo techniky detekce steganografického obsahu je obecně možné dělit více způsoby a všechny jsou svým způsobem správné, ale s následujícím způsobem dělení se ve své knize ztotožňují i Katzenbeisser s Petitcolasem (Katzenbeisser a Petitcolas, 2000): Stego-only attack: k dispozici máme pouze nosič, který už obsahuje steganografický obsah. Known cover attack: k dispozici máme nosič obsahující steganografický obsah i původní nosič. Known message attack: v tomto případě útočník zná ukrytou zprávu. Analyzováním nosiče ukrývajícího steganografický obsah, při kterém se hledají určité vzory korespondující k ukryté zprávě, může být prospěšné pro budoucí útoky proti tomuto systému. Obecně ale platí, že i když útočník zná ukrytou zprávu, útok na systém je velice obtížný a často ekvivalentní k Stego-only attack. Chosen stego attack: k dispozici máme nosič s ukrytou zprávou a algoritmus, který byl použit při ukrývání dat. Chosen message attack: v tomto případě stegoanalytik generuje nosiče s ukrytou zprávou za použití daného nástroje nebo algoritmu a ukrývá různé zprávy. Jeho snahou je objevení charakteristických vzorů, které algoritmus nebo nástroj používá. Known stego attack: k dispozici máme nosič obsahující steganografický obsah, původní nosič i použitý algoritmus nebo nástroj. Výše uvedené techniky útoku můžou být použity s různými výsledky, a to v závislosti na jejich charakteristikách a dostupnosti steganografických komponent. Některé nástroje navíc využívají i kryptografii, což v praxi znamená, že steganografický je před samotným vložením do média ještě zašifrován. Při odhalování ukrytého obsahu je tedy stegoanalytik vystaven další překážce, kterou je prolomení hesla. Pokud stegoanalytik heslo nezná, což nastává v drtivé většině případů, tak se pro jeho prolomení nejčastěji využívá brute force techniky 3, nebo slovníkového útoku 4. Se svým dělením technik napadení ukrytého steganografického obsahu přicházejí ve své práci (Westfeld a Pfitzmann, 1999) i Westfeld s Pfitzmannem. Dokument se zabývá detekcí ukrytých informací pomocí vybraných známých programů a podle autorů je možné útoky k tomu využívané dělit následujícím způsobem: 3 speciální typ útoku, který se využívá při prolamování kryptografických systémů. Pokud nemáme žádné doplňující informace o klíči, systematicky se prochází a zkouší všechny možné kombinace. U silného kryptografického systému je brute force útok časově velmi náročný a často ani není řešitelný v reálném čase. 4 Na rozdíl od brute force techniky se při slovníkovém útoku neprocházejí všechny možné varianty klíče, ale klíč je vybírán a zkoušen ze seznamu předem určených pravděpodobných klíčů. Tento seznam je sestaven na základě nejčastěji používaných hesel, která lidé využívají.

34 4.3 Možnosti detekce ukrytých informací v grafických formátech 34 Vizuální útok: tento typ útoku se snaží vyvrátit tvrzení, že nejméně významné bity určené pro zobrazení jasu jsou vyplněny náhodnými hodnotami a proto můžou být bez problému nahrazeny. Statistické útoky: myšlenkou statistických útoků je porovnání teoreticky očekávané frekvence rozložení dat v nosiči zprávy s náhodným vzorkem pozorovaným v potenciálně upraveném médiu. Další členění útoků na steganografické systémy ve své dokumentu popisují Phan a Ling (Phan a Ling), kteří se zaměřují především na detekci metody LSB. Jejich verze členění útoků navazuje na předchozí uvedenou a uvádí již i zcela konkrétní metody detekce. Dělení vypadá následovně: Detekční útoky: pokud se útočníkovi podaří zjistit, zda má v sobě obrázek skryté informace, pak je steganografická metoda poražena a tudíž nebezpečná. Takové útoky se nazývají detekční. Ty pak lze dále dělit na RQP, RS a Known cover útoky. Extrakční útoky: extrakční útok na steganografický systém je takový, který se snaží získat informace o steganografickém klíči nebo způsobu, jenž byl použit pro ukrytí tajné zprávy v jejím nosiči. Mezi extrakční útoky patří Extrahování LSB a Permutace bitů steganografické zprávy do bitů nosiče. Deaktivační útoky: deaktivační útoky jsou ty, které se snaží nějakým způsobem poškodit ukrytý steganografický obsah tak, aby nadále nebyl čitelný. Deaktivační útoky je dále možné rozdělit na destrukční a přepisovací. Jak je možné z výše uvedeného textu vypozorovat, techniky útoků na steganografické systémy se dají dělit různými způsoby. Zatímco Johnson a kolektiv dělí útoky spíše z obecného hlediska podle dostupnosti informací o procesu ukrývání dat, autoři Westfeld s Pfitzmannem a Phan s Lingem jsou specifičtější a popisují již konkrétní metody útoků. Tyto konkrétní metody jsou úmyslně popsány jen velmi stručně, jelikož se jim autor bude později podrobně věnovat. Zvláštní kapitolu ve steganografii a stegoanalýze zaujímají vodoznaky (watermarks), které se využívají u grafických formátů. Pokud vezmeme v úvahu ty viditelné, jejich princip je přesně opačný než u klasických steganografických systémů snaží se být viditelné, a tím zaručit pravost a originalitu daného obrázku. Samozřejmě i pro tuto techniku ověření pravosti existují protiútoky, které se ji snaží odstranit či zničit. Obecné i konkrétní rozdělení takovýchto útoků ve svém dokumentu shodně představují Voloshynovskiy a kolektiv (Voloshynovskiy et al.) a Ridzoň a kolektiv (Ridzoň et al., 2004): Vymazávací útoky: tyto útoky se snaží o kompletní odstranění vodoznaku z obrázku, a to bez snahy nabourat algoritmus, který byl použit pro jeho vložení. Mezi vymazávací útoky konkrétně patří Denoising, Quantization, Remodulation, Averaging a Collusion Attacks (autor zachoval originální názvy útoků, jelikož jejich český překlad by mohl znamenat zkreslení jejich původního významu). Tato skupina útoků se také vyznačuje faktem, že nemusí vždy vést k úplnému odstranění vodoznaku, ale třeba jen k jeho významnému narušení.

35 4.3 Možnosti detekce ukrytých informací v grafických formátech 35 Geometrické útoky: geometrické útoky neodstraňují vložený vodoznak jako takový, ale snaží se narušit synchronizaci vodoznaku s obrazovými daty. Do této kategorie se řadí útoky pomocí oříznutí, rotace a synchronizovaného odstranění. Kryptografické útoky: snahou těchto útoků je najít algoritmus, jakým byl do obrázku vložen vodoznak a na základě této znalosti jej odstranit. Jednou z technik této třídy je vyhledávání ukryté informace pomocí brute force útoku. Obecně se tyto útoky příliš nevyužívají kvůli jejich výpočetní náročnosti. Protokolové útoky: protokolové útoky se zaměřují na prolomení celého konceptu vkládání vodoznaku danou aplikací. Jedním z typů těchto útoků je kopírovací útok. Hlavní myšlenkou kopírovacího útoku je zkopírovat vodoznak z jednoho obrázku do druhého bez znalosti klíče použitého při kódovacím procesu, a to za účelem vytvoření nejasnosti o skutečném vlastnictví dat Vizuální útok Jak je uvedeno v dokumentu (Westfeld a Pfitzmann, 1999), několik autorů nezávisle na sobě předpokládá, že nejméně významné bity jasu v digitálních obrázcích jsou zcela náhodné a mohly by být nahrazeny za účelem ukrytí zprávy. V následujících odstavcích ale bude dokázáno, že tento předpoklad není správný. Většina steganografických algoritmů pracuje tak, že zprávu vloží do předem pečlivě vybraných bitů nosiče. Ve skutečnosti je ale pomocí počítače obtížné rozlišit náhodnosti od obsahu nosiče a ještě obtížnější je rozlišit nejméně významné bity od náhodných. Při vizuálním útoku záleží především na lidských smyslech a představivosti. Základní myšlenkou vizuálního útoku je odstranění všech částí obrázku, které zakrývají ukrytou zprávu. Po odstranění těchto částí obrázku by lidské oko mělo být schopné rozlišit, zda je v obrázku ukryta tajná zpráva nebo ne. Filtrovací proces závisí na konkrétním steganografickém nástroji a má následující strukturu: steganogram extrakce bitů ukryté zprávy vizualizace bitů na pozici jejich zdrojových pixelů Obr. 1: Princip vizuálního útoku Na první pohled by se mohlo zdát, že tato metoda detekce je naprosto spolehlivá. Z obrázku vyextrahujeme nejméně významné bity jednotlivých barevných složek pixelů, pro hodnotu 0 vytvoříme černý bod, pro hodnotu 1 bílý bod a zrekonstruujeme obraz. Nyní bychom měli být schopni jednoznačně říct, jestli je v obrázku ukryta nějaká zpráva nebo ne. Za předpokladu, že v obrázku žádná zpráva ukryta nebyla, bude zrekonstruovaný obraz připomínat původní obrázek. Pokud ale v našem nosiči nějaká zpráva uložena byla, zrekonstruovaný obraz bude vypadat jako

36 4.3 Možnosti detekce ukrytých informací v grafických formátech 36 nesmyslný shluk černých a bílých teček připomínajících šum. Princip rekonstrukce obrazu názorně demonstrují následné příklady: Obr. 2: Rekonstrukce obrazu u obrázku bez ukryté zprávy. Převzato z Attacks on Steganographic Systems (Westfeld a Pfitzmann, 1999). Obr. 3: Rekonstrukce obrazu u obrázku s ukrytou zprávou. Převzato z Attacks on Steganographic Systems (Westfeld a Pfitzmann, 1999). Výše uvedené příklady demonstrují ideální případ, kdy při rekonstrukci obrazu z původního obrázku bez uložené zprávy je ve výsledku zřetelně vidět jeho obrys. V tomto případě můžeme s vysokou pravděpodobností úspěchu tvrdit, že nosič neobsahuje steganografický obsah. Naopak druhá dvojice obrázků názorně zobrazuje, jak dopadne rekonstrukce obrazu v případě, že v původním obrázku je uložena tajná zpráva po celé jeho ploše. Místo jasného obrysu je vidět pouze jakýsi šum. Metoda vizuálního útoku ale není vždy úspěšná, úspěch či neúspěch závisí na nástroji, který byl použit pro vkládání tajné zprávy a také na obrázku, který byl použit jako nosič. Jestliže je použit příliš složitý obrázek (myšleno barevně), může při rekonstrukci vzniknout dojem, že je v něm uložena zpráva, i když opak je pravdou. Vizuální útok ale může selhat i u běžného, nesložitého obrázku. I když je v něm uložen steganografický obsah, rekonstrukce nemusí nic odhalit, jak je vidět na následujícím příkladu:

37 4.3 Možnosti detekce ukrytých informací v grafických formátech 37 Obr. 4: Nalevo obrázek bez ukryté zprávy, napravo s ukrytou zprávou. Převzato z Attacks on Steganographic Systems (Westfeld a Pfitzmann, 1999). Obr. 5: Nalevo rekonstrukce obrazu u obrázku bez ukryté zprávy, napravo s ukrytou zprávou. Převzato z Attacks on Steganographic Systems (Westfeld a Pfitzmann, 1999). Jak lze z výše uvedených odstavců vyčíst, použitelnost vizuálního útoku je přinejmenším diskutabilní. Útok jednak není možné provést automatizovaně pomocí výpočetních prostředků a je potřeba lidského elementu, ale také výsledky této metody útoku nejsou vždy optimální. V některých případech je možné zcela jednoznačně určit, že se v obrázku nachází steganografický obsah, ale jak bylo ukázáno, detekce ukryté zprávy pomocí vizuálního útoku může snadno vést k mylným závěrům Statistické útoky Hlavní myšlenkou statistických útoků je porovnat teoreticky předpokládanou četnost rozložení dat ve steganogramu s ukázkovým rozložením v médiu, u kterého máme podezření na přítomnost tajné zprávy. Jinak řečeno, jestliže možný steganogram nemá stejný statistický profil jako původní obrázek, pak je v něm s největší pravděpodobností uložena tajná zpráva.

38 4.3 Možnosti detekce ukrytých informací v grafických formátech 38 Jak vyplývá z předchozího odstavce, cílem statistických útoků je nalézt v obrázku strukturální změny. Tyto změny jsou způsobeny algoritmem, který provádí uložení tajné zprávy do obrázku. Pokud si vezmeme například algoritmus LSB, jeho aplikací dojde k vytvoření velkého počtu nových, téměř duplicitních barev, které se od sebe liší pouze nejméně významným bitem. Strukturální změny v obrázku nastávají i při manipulaci s barevnou paletou, kterou je potřeba před ukládáním informací setřídit. Tento jev nastává u formátů, které barevnou paletu využívají, což je například formát GIF. Statistické útoky, stejně jako vizuální, nejsou vždy úplně spolehlivé. Ačkoliv nám statistický útok poskytne základní informace o možné manipulaci s obrázkem, verdikt není definitivní. Velkým problémem pro tento typ útoku je například zašifrování ukrytých dat. Zašifrovaná data vykazují daleko větší stupeň náhodnosti co se týče kódování binárních nul a jedniček, tudíž je útok na takovýto systém mnohem obtížnější. Dalším problémem pro statistické útoky je to, že některé steganografické algoritmy jsou tak dobře navrženy, že jednoduše těmto útokům odolávají a není je možné detekovat. I přesto, že statistické útoky mají svá slabá místa, jsou obecně použitelnější a efektivnější než útok vizuální. Jejich velkou výhodou je především to, že pro vyhodnocení výsledku není potřeba lidského elementu, je tedy možné analýzy provádět automatizovaně pomocí výpočetních prostředků. Následující odstavce již budou věnovány popisu konkrétních vybraných algoritmů spadajících do kategorie statistických útoků. RQP analýza Jak popisuje Yang ve svém dokumentu (Yang, 2004), RQP je stagoanalytická metoda, která pracuje na základě výpočtu podobných a unikátních barev ve zdrojovém obrázku. Podobné barvy jsou takové, které se liší pouze v LSB. Jak autor uvádí, při vložení zprávy do obrázku dochází k obrovskému nárůstu počtu podobných barev, respektive se zvětší rozdíl mezi podobnými a unikátními barvami v obrázku. Princip fungování algoritmu Yang vysvětluje na názorném příkladu. Níže uvedený obrázek ilustruje proces ukrývání tajné zprávy do obrázku. Předpokládejme, že máme k dispozici 6 pixelů zdrojového obrázku, které reprezentují barvu nebe (souvislá modrá plocha). Do těchto pixelů uložíme binární reprezentaci ASCII hodnoty znaku a ( ) a b ( ). Levá část obrázku představuje hodnotu pixelů zdrojového obrázku před uložením zprávy, kdežto pravá část obrázku reprezentuje výslednou podobu pixelů po uložení zprávy. Tučně zvýrazněné hodnoty LSB jednotlivých složek pixelů představují bity ukládaných znaků.

39 4.3 Možnosti detekce ukrytých informací v grafických formátech 39 Obr. 6: Změna počtu unikátních a podobných barev po vložení dvou znaků do obrázku. Převzato z Raw Quick Pairs method of detecting Stego-images (Yang, 2004). Jak je z obrázku patrné, při procesu ukládání tajné zprávy došlo k velkému nárůstu jak unikátních, tak i podobných barev. Zatímco počet unikátních barev narostl pětinásobně, počet podobných narostl patnáctinásobně. Jak je tedy vidět, počet podobných barev narůstá daleko větším tempem. Dalším z toho vyplývajícím faktem je to, že čím delší zprávu do obrázku uložíme, tím větší bude rozdíl mezi unikátními a podobnými barvami oproti originálu. A právě na základě výpočtu poměru unikátních a podobných barev algoritmus RQP pracuje. Pro úspěšné detekování ukryté zprávy je potřeba rozšířit výše uvedený princip. Jak již bylo uvedeno, pokud uložíme zprávu do obrázku, který žádnou jinou neobsahuje, dojde k velkému nárůstu podobných a unikátních barev. Jestliže ale uložíme zprávu do obrázku, který již nějaká ukrytá data obsahuje, k tomuto jevu nedojde (minimálně tento jev nebude tak výrazný a nedojde k tak velkému nárůstu rozdílu mezi podobnými a unikátními barvami). Aby tedy bylo možné detekovat přítomnost ukryté zprávy, je potřeba v obrázku spočítat poměr mezi unikátními a podobnými barvami (takzvaný koeficient), následně do obrázku vložit testovací zprávu a znovu poměr barev přepočítat. Na základě těchto výpočtů jsme schopni určit, zda je v obrázku ukryt steganografický obsah nebo ne. Pro výpočet koeficientu Yang uvádí následující vzorec: R = P/C U 2 R zastupuje výsledný koeficient, P je počet podobných barev, U je počet unikátních barev a C vyjadřuje počet všech možných kombinací unikátních barev v párech.

40 4.3 Možnosti detekce ukrytých informací v grafických formátech 40 Metoda RQP (stejně jako ostatní metody) není úplně dokonalá a může se mýlit. Metoda RQP začíná mít problémy u obrázků, které obsahují více než 30 % unikátních barev a je značně nespolehlivá u obrázků s obsahem unikátních barev větších než 50 %. Pokud tedy obrázek obsahuje větší stejnobarevné plochy, je RQP velmi efektivní, jestliže ale obrázek tyto barevné plochy neobsahuje, rozdíl mezi počtem unikátních a podobných barev neroste takovým tempem, tudíž výpočet koeficientu již není tak přesný. Tento jev demonstruje následující obrázek: Obr. 7: Selhání metody RQP u obrázku s velkým počtem unikátních barev. Převzato z Raw Quick Pairs method of detecting Stego-images (Yang, 2004). Jestliže si porovnáme výsledky obrázku s běžným a vysokým počtem unikátních barev, je zřejmé, proč může RQP selhat. Druhou nevýhodou RQP je také to, že není použitelná pro obrázky ve stupních šedi. Chi-square analýza Hlavní myšlenku Chi-square analýzy podávají ve svém dokumentu Westfeld s Pfitzmannem (Westfeld a Pfitzmann, 1999) a demonstrují ji na komerční aplikaci Ez- Stego. Vkládací funkce nástroje Ezstego pracuje na principu přepisu nejméně významných bitů. Přepsáním nejméně významného bitu dojde k transformaci jedné hodnoty na jinou, přičemž tyto hodnoty se liší pouze v nejméně významném bitu. Tyto dvojice se nazývají PoV (Pairs of Values). Pokud jsou bity, kterými přepisujeme LSB rovnoměrně rozloženy v nosiči, poté četnosti obou hodnot všech PoV budou stejné. Následující obrázek názorně ukazuje, jak se změní četnosti jednotlivých barev v obrázku, pokud je využito rovnoměrného rozdělení informací (ukryté zprávy) v nosiči:

41 4.3 Možnosti detekce ukrytých informací v grafických formátech 41 Obr. 8: Barevný histogram před a po uložení zprávy pomocí nástroje EzStego. Převzato z Attacks on Steganographic Systems: Breaking the Steganographic Utilities EzStego, Jsteg, Steganos, and S-Tools and Some Lessons Learned (Westfeld a Pfitzmann, 1999). Jak již jednou bylo uvedeno, hlavní myšlenkou statistických útoků (v tomto případě Chi-square útoku) je porovnat teoreticky předpokládanou četnost rozložení dat ve steganogramu s ukázkovým rozložením v médiu, u kterého máme podezření na přítomnost tajné zprávy. Podle Westfelda a Pfitzmanna je kritickou otázkou to, jak stanovit teoreticky očekávané rozložení dat. To nelze stanovit na základě našeho ukázkového média, jelikož mohlo být pozměněno steganografickými operacemi. Naneštěstí ve většině případů nemáme k dispozici originální obrázek, ze kterého bychom rozložení mohli odvodit. V originálním obrázku je teoreticky očekávané rozložení aritmetickým průměrem dvou rozložení v PoV. Přerušovaná čára ve výše uvedeném obrázku spojuje tyto hodnoty aritmetického průměru. Jelikož vkládací funkce přepisuje pouze hodnoty LSB, nemění se suma těchto dvou rozložení. Počet odebraných z lichých hodnot je převeden na odpovídající sudé hodnoty v každém PoV a naopak. Jelikož suma zůstává konstantní, aritmetický průměr PoV v originálním obrázku i odpovídajícím nosiči zprávy je stejný. Tento fakt nám umožní získat teoreticky očekávanou četnost rozložení z náhodného ukázkového obrázku a tudíž k útoku nepotřebujeme originální čistý obrázek. Jak Westfeld s Pfitzmannem dále uvádějí, míra podobnosti mezi ukázkovým rozložením a teoreticky očekávaným je mírou pravděpodobnosti, že zpráva obsahuje ukrytý steganografický obsah. Míra podobnosti určená pomocí Chi-square testu má následující kroky: 1. Předpokládejme, že existuje k kategorií a v nich náhodný počet vzorků pro pozorování četnosti. Každé pozorování četnosti musí spadat pouze do jedné kategorie. Kategorie jsou indexy barevné palety, jejichž barvy jsou umístěny na sudém indexu setříděné palety. Nyní se budeme soustřeďovat na liché hodnoty PoV média, na které provádíme útok. Jejich teoreticky očekávaná četnost musí být větší než 4.

42 4.3 Možnosti detekce ukrytých informací v grafických formátech Teoreticky očekávaná četnost v kategorii i je po rovnoměrném vložení zprávy n i = {barva setridenyindex(barva) {2i,2i+1}} 2 3. Naměřená četnost výskytu v našem náhodném vzorku je n i = {barva sestridenyindex(barva) = 2i} 4. Chi-square statistika s k 1 stupni volnosti je dána jako χ 2 k 1 = Σ k i=1 (n i n i )2 n i 5. p je pravděpodobnost naší statistiky za předpokladu, že n i = n i. p vypočítáme pomocí integrace funkce hustoty 1 x p = 1 2 k 1 2 k 1 2 Γ ( k 1 2 ) 0 e x 2 x k dx Westfeld a Pfitzmann testováním na různých steganografických aplikacích dokázali, že Chi-square analýza poskytuje velmi dobré výsledky, pokud ji aplikujeme na obrázky, do kterých byly ukryty tajné informace sekvenčním způsobem pomocí metody LSB. Dalším kladem tohoto typu útoku je také to, že dobře funguje i pro různé formáty obrázků. Je použitelný dokonce i pro formát JPEG, který využívá DCT. Naopak slabou stránku Chi-square analýzy je to, že zcela selhává, pokud informace nejsou do obrázku vloženy sekvenčně, ale například pomocí generátoru pseudonáhodných čísel. RS analýza Fridrich a kolektiv (Fridrich et al., 2003) ve svém výzkumu popisují RS analýzu jako typ útoku, který se využívá u nekomprimovaných obrázků, a to včetně obrázků v odstínech šedi. RS analýza vychází z faktu, že ukládání tajné zprávy pomocí metody LSB vytváří nerovnováhu mezi sousedními pixely. Během procesu kódování jsou hodnoty 2i a 2i +1 navzájem prohozeny, ale nikdy nedochází k prohození hodnoty 2i s 2i 1 nebo 2i+2. Toto nám umožňuje vytvořit statistický útok, který bude vysoce efektivní při zkoumání modifikace LSB. Autoři na základě bezztrátové kapacity LSB přišli na to, že existuje křehký vztah mezi nejméně významným bitem a ostatními bity daného bytu. Bezztrátová kapacita je definována jako funkce počtu regulárních a singulárních skupin pixelů. Mohutnost těchto dvou skupin se v průběhu vkládání tajné zprávy stává odlišnou, jelikož hodnota LSB je po vložení zprávy zcela náhodná. Rozdíl v mohutnosti byl pojmenován jako rozlišovací statistika. Nyní si popíšeme princip fungování algoritmu.

43 4.3 Možnosti detekce ukrytých informací v grafických formátech 43 Vezměme si obrázek, jehož velikost je i j pixelů s hodnotami spadajícími do množiny P. Pro osmibitový obrázek ve stupních šedi P = { }. Nyní si definujeme diskriminační funkci f, která přiřazuje reálné číslo f (x 1...x n ) skupině pixelů G = (x 1...x n ). Funkce f je definována jako f(x 1...x n ) = n 1 i=1 x x+1 x i Funkce f značí pravidelnost G čím více je šumu ve skupině G, tím vyšších hodnot diskriminační funkce f bude nabývat. Proces ukrývání dat do LSB zvýší míru šumu v obrázku a z toho důvodu můžeme očekávat nárůst diskriminační funkce f. Nyní si definujeme zaměňovací funkci F 1 jako permutaci na množině P: 0 1, 2 3, Změna LSB u stupňů šedi x je to stejné jako aplikace F 1 na x. Nyní si nadefinujeme také takzvanou posunutou zaměňující LSB funkci F 1 jako F 1 (x) = F 1 (x + 1) 1, x P Nakonec si ještě definujeme F 0 jako F (x) = x, x P. Diskriminační funkce f a zaměňovací operace F definuje celkem 3 různé skupiny pixelů R, S a U, a to v závislosti na tom, jak zaměňování změnilo hodnoty diskriminační funkce. Skupina G je regulární (R), jestliže f (F (G)) > f (G). Skupina G je singulární (R), jestliže f (F (G)) < f (G) a skupina G je beze změny (U ), jestliže f (F (G)) = f (G). F (G) v tomto případě znamená aplikaci zaměňovací funkce F na prvky vektoru G. Jestliže použijeme odlišné zaměňování na odlišné skupiny pixelů G, zachytíme přiřazení záměny na pixely pomocí masky M, jenž je n-ticí, která nabývá hodnot 1, 0 a 1. Zaměňovací skupina F (G) je definována jako (F M(1) (x 1 ), F M(2) (x 2 ),...F M(n) (x n )). U typických obrázků bude častěji docházet k jevu, kdy zaměňovací skupina G způsobí spíše zvětšení diskriminační funkce f než její snížení. Tento jev povede k tomu, že počet regulárních skupin bude převyšovat počet singulárních. Definujme si relativní počet regulárních skupin pro ne-negativní masky M jako R M a S M jako počet singulárních skupin. Nyní tedy máme R M +S M 1 a R M +S M 1. Hodnoty R M, S M, R M a S M hrají klíčovou roli v rozlišovací statistice. Klíčovou hypotézou RS analýzy je to, že pro typické obrázky je hodnota R M podobná jako R M, stejně jako S M je podobná S M. Autoři dále uvádějí, že výše uvedené principy a výpočty jsou vysoce použitelné pro útok na obrázky, které byly pořízeny pomocí digitálního fotoaparátu, a to jak ve formátu JPEG, tak i v nekomprimovaných formátech. Velmi dobrých výsledků bylo dosaženo také u naskenovaných obrázků. RS analýza je tím účinnější, čím delší je ukrývaná zpráva. S délkou ukrývané zprávy totiž klesá rozdíl mezi R M a S M a zároveň se zvyšuje rozdíl mezi R M a S M.

44 4.4 Současné stegoanalytické nástroje Shrnutí stegoanalytických metod Stejně jako neexistuje univerzální a nejlepší algoritmus pro vkládání tajných informací do grafických formátů, neexistuje takový algoritmus ani pro detekci těchto tajných informací. Popsány byly dvě obecné skupiny útoků, kterých se dá využít při boji se steganografií vizuální a statistické. Jak je možné vyčíst z výše uvedeného textu, statistické útoky se jeví jako obecně použitelnější než vizuální. Je to dáno hlavně tím, že vizuální útok není možné provést bez lidského elementu, rozumějme tím to, že jeho výsledek musí vyhodnotit lidského oko, což značně snižuje přenositelnost takovéhoto systému. Výsledky vizuálních útoků jsou navíc často nesprávné, jelikož i přes správnou aplikaci občas poskytují značně nepřesné závěry. Naproti tomu statistické útoky jsou navrženy tak, aby je mohl provést a vyhodnotit stroj v našem případě počítač, který sám provede všechny potřebné výpočty a zobrazí výsledek bez nutnosti vnějšího zásahu. Co se týče dosažených výsledků, i v této oblasti jsou statistické útoky úspěšnější než vizuální. Samozřejmě úspěšnost nikdy nedosáhne 100 %, protože každý statistický útok má svoji slabinu a je vhodný pro použití v jiných případech. Tím se autor dostává k dalšímu, zcela zásadnímu elementu při aplikaci stegoanalýzy. Při volbě stegoanalytické metody je potřeba vzít v úvahu, na jaký obrázek ji budeme aplikovat (formát, počet barev...). Metoda RQP je určena pro obrázky s 24bitovou hloubkou a menším počtem unikátních barev, potom je schopna dosahovat výborných až zcela neomylných výsledků. Naopak, pokud potřebujeme prověřit obrázek pořízený například digitálním fotoaparátem, pak je metoda RQP zcela nevhodná a je dobré využít třeba RS analýzy, která se dá s úspěchem využít i u obrázků ve stupních šedi. Co se týče Chi-square analýzy a závislosti na typu obrázku, ta je na tom velice podobně jako RS analýza. V neposlední řadě je potřeba vzít v úvahu, co víme o způsobu, jakým byly informace ukryty. Útočník většinou kromě podezřelého média nemá k dispozici žádná další fakta, která by mu mohla pomoci při analýze. Pokud by ale věděl například to, že informace do obrázku nebyly vloženy sekvenčně, nýbrž pomocí pseudonáhodného generátoru, z detekčních metod automaticky vyloučíme Chi-square analýzu, která u jiného než sekvenčního uložení dat selhává a je nepoužitelná. 4.4 Současné stegoanalytické nástroje Stegdetect Neils Provos je autorem aplikace s názvem Stegdetect. Tento nástroj je schopen detekovat skryté informace vložené pomocí několika různých steganografických metod, a to v obrázcích ve formátu JPEG. I když se na první pohled aplikace jeví jako zcela univerzální pro použití u obrázků ve formátu JPEG, ve skutečnosti se spíše zaměřuje na konkrétní steganografické metody a aplikace.

45 4.4 Současné stegoanalytické nástroje 45 Stegdetect pro detekci využívá lineární diskriminační analýzu. Poté, co je aplikaci předložena sada čistých obrázků a steganogramů, je schopna na základě této trénovací množiny obrázků sama určit lineární detekční funkci, která dokáže detekovat přítomnost skrytých informací v dalších potencionálních nosičích. Program je také schopen vypočítat operační charakteristiku, jež může být použita při ohodnocení kvality automaticky naučené detekční funkce. Stegdetect je aktuálně k dispozici ve verzi 0.6 pro operační systém Windows a systémy třídy Unix. Aplikace je dostupná například z těchto oficiálních webových stránek: Stego Suite Stego Suite je profesionální a komplexní aplikace (a také placená) pro detekci informací ukrytých ve všech nejznámějších grafických formátech. Aplikace podporuje grafické formáty BMP, GIF, JPG a PNG. Kromě grafických souborů Stego Suite podporuje i soubory zvukové. Proces detekce ukrytých informací probíhá v několika fázích, ve kterých se používají jednotlivé nástroje, jenž program obsahuje. Prvním je Stego Hunter. Tento nástroj v cílovém počítači zjišťuje, jestli někdy v sobě neměl nebo stále ještě nemá nainstalovanou některou ze steganografických informací. Na Stego Hunter navazuje Stego Watch, což je nástroj, který po pozitivní detekci podezřelého souboru dokáže prohledat celý souborový systém daného počítače a najít další potenciálně podezřelé soubory. Třetím nástrojem obsaženým v této aplikaci je Stego Analyst. Ten se stará o samotnou detekci přítomnosti steganografického obsahu v obrázku. Posledním nástrojem je Stego Break. V případě, že soubor obsahující steganografický obsah byl zašifrován, pokouší se pomocí slovníkového útoku najít frázi, která k tomuto účelu byla využita a soubor dešifruje. U aplikace není uvedena aktuální verze a není dostupná ke stažení, je potřeba si ji rovnou zakoupit. Určená je pro operační systém Windows StegAlyzerAS StegAlyzerAS je zřejmě nejdokonalejším nástrojem v oblasti stegoanalýzy na trhu. Aplikace se neomezuje pouze na obrázky, ale prozkoumává celý souborový systém na podezřelé soubory, a to včetně položek uložených v registru Windows (aplikace je určená pro operační systém Windows). Tento program identifikuje podezřelé soubory pomocí CRC-32, MD5, SHA-1, SHA-224, SHA-256, SHA-384 a SHA-512 hash hodnot uložených v Steganography Application Fingerprint Database (SAFDB). SAFDB je největší dostupná databáze steganografických hash hodnot. Známé položky registru jsou identifikovány pomocí Registry Artifact Key Database (RAKDB), která je distribuována společně s programem.

46 4.5 Shrnutí poznatků o stegoanalýze 46 U aplikace není uvedena aktuální verze. Po registraci je ke stažení dostupná plně funkční 30denní trial verze pro operační systém Windows z těchto oficiálních webových stránek: demo.aspx Shrnutí stegoanalytických aplikací Ačkoliv autor při svém studiu narazil na více než sto různých steganografických aplikací (ve skutečnosti jich existuje ještě mnohem více, uvádí se 500 až 600), stegoanalytických aplikací existuje mnohem méně. Dalším pozorovaným faktem je to, že existující stegoanalytické nástroje jsou většinou spíše komplexní aplikace, které nepracují jenom s obrázky, ale i jinými formáty. Komplexnost aplikací je ale většinou vykoupena nutností zakoupit licenci jsou komerční). Z tohoto důvodu je také složité až nemožné zjistit konkrétnější informace o tom, jak přesně aplikace pracují (postupy, algoritmy, atd.) Za zmínku také stojí to, že stegoanalytické aplikace se spíše zaměřují na detekci informací uložených pomocí konkrétních aplikací nebo metod. To sice má za následek přesnější detekci v konkrétních případech, ale přenositelnost takového detekčního programu je značně omezená. 4.5 Shrnutí poznatků o stegoanalýze Steganografie a stegoanalýza. Dvě vědy, které se snaží být lepší než ta druhá. Poté, co se autor seznámil s principy a technikami steganografie i stegoanalýzy, došel k závěru, že stegoanalýza stojí v pomyslném stínu steganografie, která je (a zřejmě i vždy bude) přece jenom o krok vepředu. Proč tomu tak je? Prvním ukazatelem je počet aplikací, které danou vědu zastupují. Zatímco steganografických aplikací jsou stovky, ty stegoanalytické se počítají maximálně na desítky. Steganografických metod je větší množství, navíc si každý autor aplikace zvolenou metodu přizpůsobí podle vlastních představ, což značně ztěžuje úlohu pro stegoanalytiky. Dalším důvodem výrazně nižšího počtu stegoanalytických aplikací je zřejmě i jejich náročnost. Zatímco steganografické metody jsou v literatuře jasně popsány a jejich implementace není až tak náročná, programy na prolomení takovýchto systémů často bývají implementačně složitější a všechny nezbytné postupy nemusí být přesně definovány. Různorodost aplikací je pro stegoanalýzu velikým problémem. Jak již bylo uvedeno, stegoanalytické aplikace se většinou soustřeďují na prolomení konkrétních systémů, což sice zlepšuje detekci v konkrétních případech, ale při útoku na jiný než podporovaný systém dojde k úplnému selhání detekčního mechanismu. Na trhu sice existují i komplexní stegoanalytické nástroje, které se neomezují na konkrétní algoritmy nebo třeba formáty souborů, ale ty jsou ve většině případů komerčního charakteru (drahé licence odrazují od použití). K těmto komerčním řešením ze zřejmých důvodů navíc nejsou dostupné dokumentace, tudíž není možné zjistit, jak takovýto program přesně pracuje.

47 4.5 Shrnutí poznatků o stegoanalýze 47 Přesto stegoanalýza není bezmocná. Jak autor popisuje ve své práci, existují i obecné algoritmy, které jsou schopny detekovat přítomnost ukrytých informací v grafických formátech bez ohledu na formát nebo aplikaci, která byla použita pro ukrytí dat. Pokud jsou tyto algoritmy správně aplikovány, dokáží poskytnout velmi dobré výsledky. Kromě autorem popsaných stegoanalytických algoritmů existují i další, ještě mnohem složitější, a algoritmy, které jsou většinou založeny na principu strojové učení a trénování. Komplexnost a náročnost těchto algoritmů ale přesahuje rozsah předkládané práce, proto se jim autor nebude dále věnovat. Následující odstavce již budou věnovány vytvoření metodiky, která by měla být schopna detekovat přítomnost ukrytých informací v grafických formátech a následně tyto informace z obrázku vyextrahovat.

48 5 POSTUP ÚTOKU NA STEGANOGRAFICKÝ SYSTÉM 48 5 Postup útoku na steganografický systém 5.1 Návrh funkcionality aplikace V předchozích kapitolách byly uvedeny poznatky jak z oblasti steganografie, tak i z oblasti stegoanalýzy. Při sestavování metodiky bude autor vycházet právě z těchto získaných poznatků. Při vyhledávání informací o obou vědách ale autor narazil na problém absence dostatku tištěné literatury, která by pojednávala o dané problematice. Z tohoto důvodu bylo nutné vycházet především z elektronických zdrojů, a to zejména vědeckých článků a další dokumentů. Dalším nepříjemným faktem je to, že o problematice stegoanalýzy nepojednávají žádné kvalitní české zdroje. Proto bylo potřeba správně pochopit a interpretovat v literatuře popsané techniky a postupy, které by se daly použít pro sestavení vhodné metodiky umožňující prolomení steganografického systému. Po zvážení všech nastudovaných faktů se autor práce rozhodl pro následující. Vytvořená aplikace bude pracovat s obrázky ve formátu PNG s barevnou hloubkou 24 bitů. Pro tuto volbu měl autor několik důvodů. Prvním je fakt, že grafický formát PNG se začíná stále více využívat, a to i v oblastech, pro které původně nebyl vyvinut. Druhým důvodem je jeho podpora u stegoanalytických aplikací, která je velice slabá (autor při svém studiu nenarazil na bezplatnou aplikaci, jenž by PNG podporovala). Posledním důvodem je to, že autor v rámci své bakalářské práce vyvinul aplikaci, která uplatňovala principy steganografie a ukrývala data právě do tohoto grafického formátu. Díky tomu bude možné snadno otestovat funkčnost aplikace vytvořené v rámci předkládané diplomové práce. Při výběru detekčního algoritmu se autor snažil vzít v potaz maximální přenositelnost aplikace. Zaměřit se tudíž na detekci informací skrytých pomocí konkrétních existujících aplikací nebo algoritmů nepřichází v úvahu. Z tohoto důvodu bude naimplementován detekční algoritmus RQP. Tento algoritmus splňuje hlavní podmínku, přenositelnost, jelikož je navržen jako obecný algoritmus pro detekci skrytých informací pomocí metody LSB a nezaměřuje se na konkrétní aplikace nebo metody. Co se týče extrakce ukrytých informací, zde byla situace mnohem složitější. Autor práce musel před samotnou implementací nastudovat, jaké způsoby ukládání tajných informací implementují různé steganografické aplikace, a navrhnout algoritmus, jenž by dokázal takto ukrytá data znovu získat. Po prostudování materiálů autor dospěl k závěru, že existují dvě cesty k extrahování dat. První možností je se zaměřit na konkrétní existující aplikace, zjistit jejich metody ukládání a navrhnout algoritmy, které by de facto prováděly přesně opačný postup, než je použit při skrývání informací. Tato cesta extrakce by umožnila s teoreticky neomylnou pravděpodobností prolomit funkčnost konkrétních aplikací, ale v ostatních případech by selhávala. Problémem je navíc to, že jen málo steganografických aplikací je dostupných i s kvalitní dokumentací, ve které by byly uvedeny všechny potřebné informace k sestavení extrakčních algoritmů.

49 5.2 Postup aplikace při analýze obrázku 49 Druhá možnost extrakce vyplynula z určité podobnosti ukládacích metod jednotlivých aplikací. Autor práce zjistil, že i když prakticky každý program využívá mírně odlišný způsob vkládání dat do obrázku, mnohé z nich aplikují sekvenční ukládání (data jsou vkládána do obrázku pixel po pixelu). A to je velká slabina, které by se dalo využít. Pokud by implementovaný algoritmus vyextrahoval data z každého pixelu od začátku do konce obrázku, musí nutně dojít i k vyextrahování ukryté zprávy. Nevýhodou této cesty extrakce je to, že kromě samotné zprávy bude vyextrahováno i poměrně velké množství nesmyslného textu a navíc není možné získat informace uložené například pomocí pseudonáhodného generátoru čísel. Na druhou stranu, tento způsob extrakce je obecně mnohem použitelnější a účinnější u širšího spektra aplikací, než výše uvedený. Po zvážení kladů a záporů obou cest extrakce se autor rozhodl pro druhou variantu, tedy sekvenční vyextrahování informací ze všech pixelů obrázku. Toto rozhodnutí autor učinil z důvodu širších možností použitelnosti extrakce, a také proto, že nejsou k dispozici dostačující dokumentace ke kvalitním programům, pro které by bylo prospěšné navrhnout speciální extrakční algoritmy. Z důvodu možnosti budoucího rozšíření aplikace o další detekční či extrakční algoritmy, které by dále prohloubily přínos tohoto detekčního nástroje, autor práce vytvářenou aplikaci navrhne modulárním způsobem. V praxi to bude znamenat, že při dodržení určitých podmínek bude možné aplikaci rozšířit o další detekční i extrakční algoritmy bez nutnosti zásahu do programového kódu. Tyto nově přidané algoritmy (de facto knihovny) si aplikace bude schopna při startu sama automaticky načíst a prezentovat jejich výsledky. Výslednou aplikaci se autor rozhodl pojmenovat StegoAnalyzer. 5.2 Postup aplikace při analýze obrázku V předchozích odstavcích byla představena navržená funkcionalita aplikace. Nyní se autor bude podrobněji věnovat tomu, jak vlastně samotná detekce a následná extrakce informací probíhá z programového hlediska. Ze všeho nejdřív je samozřejmě nutné do aplikace načíst obrazová data. Jak již bylo uvedeno, konkrétně soubor ve formátu PNG. Zde má autor práci poměrně jednoduchou, jelikož programovací jazyk Java obsahuje standardní knihovny, jenž umožňují načíst grafické formáty takovým způsobem, že je možné rovnou pracovat s obrazovými daty. Díky tomu není nutné zpracovávat hlavičku PNG, která je automaticky přečtena a programátor získává přístup přímo k jednotlivým pixelům. Jak bylo uvedeno v kapitole 3.4.1, každý pixel se v barevném modelu RGB skládá ze tří složek (červená, zelená a modrá). V okamžiku načtení obrázku má ale programátor přístup pouze k jednotlivým pixelům, nikoli konkrétním složkám, jejichž LSB jsou pro analýzu a extrakci klíčové. Z tohoto důvodu si musel autor vytvořit příslušné metody a proměnné, díky kterým získal přístup přímo k jednotlivým složkám každého pixelu. Nyní už je možné začít se samotnou analýzou.

50 5.2 Postup aplikace při analýze obrázku 50 Detekce ukrytých informací probíhá ve dvou fázích. V první fázi aplikace projde všechny pixely obrázku a podle pravidel uvedených v kapitole 4.3.2, sekce RQP analýza, provede výpočet množství unikátních a podobných barev v obrázku. Díky těmto výpočtům je následně možné určit koeficient R. Tím je první fáze detekce ukrytých informací u konce. Ve druhé fázi aplikace postupně ukládá jednotlivé testovací zprávy do obrázku. Konkrétně je testovací zpráva převedena na posloupnost bitů, které jsou sekvenčně uloženy do zkoumaného obrázku. Po úspěšném uložení této zprávy je znovu vypočítáno množství unikátních a podobných barev v obrázku a vypočítán koeficient R. Na základě porovnání koeficientů R a R aplikace následně rozhodne, zda obrázek pro danou délku testovací zprávy obsahuje nebo neobsahuje tajnou zprávu. Toto rozhodnutí ovšem není konečné. Uvedený postup testování se opakuje pro všechny délky testovacích zpráv a výsledky se ukládají do pomocných proměnných. Až na základě porovnání počtu pozitivních a negativních detekcí aplikace oznámí, zda obrázek pravděpodobně obsahuje či neobsahuje ukrytou zprávu. Kromě detekování přítomnosti ukrytých informací je možné provést i pokus o jejich extrakci. K tomuto účelu slouží dva algoritmy, které jsou založené na stejném principu. První pracuje tak, že projde všechny pixely načteného obrázku a z každé R, G, i B složky vyextrahuje nejméně významný bit. Tím je získána dlouhá posloupnost bitů, kterou je potřeba dále zpracovat, aby dávala smysluplný výsledek. Jelikož je každý znak ASCII tabulky v binárním kódu reprezentován 8 bity, je posloupnost získaná extrakcí z LSB rozdělena na osmice bitů, ze kterých je následně sestavena výsledná zpráva. Druhý extrakční algoritmus pracuje de facto na stejném principu. Rozdíl je v tom, že je speciálně zaměřen na extrakci informací ukrytých pomocí aplikace, jenž byla vyvinuta autorem v rámci bakalářské práce. Před samotnou extrakcí je nutné přečíst jakousi hlavičku uložené zprávy, ve které jsou uloženy informace o její délce, a tudíž je následně možné dosáhnout precizní extrakce bez přítomnosti dalšího nesmyslného textu. Pro další informace o této hlavičce autor čtenáře odkáže na dokumentaci své bakalářské práce, kde je možné se dozvědět podrobnosti:

51 6 IMPLEMENTACE 51 6 Implementace 6.1 Algoritmus RQP Princip fungování detekčního algoritmu RQP byl již uveden v kapitole Byl zde ale uveden pouze obecný popis, ve kterém chybějí některé podstatné záležitosti, jenž je potřeba vyřešit při samotné implementaci. Tyto záležitosti nebyly uvedeny již v předchozím textu z toho důvodu, že jsou závislé na konkrétní implementaci a uvážení programátora. V následujících odstavcích autor uvede, o co se konkrétně jedná, a jak postupoval při řešení daných problémů Určení optimální délky vkládané testovací zprávy První problém při implementaci nastává ve chvíli, kdy vkládáme do obrázku testovací zprávu. Jak bylo popsáno, nejdříve se vezme původní obrázek a vypočítá se koeficient R (poměr unikátních a podobných barev v obrázku). Poté se do obrázku vloží testovací zpráva a vypočítá se druhý koeficient, R. Zádrhel je v tom, že v literatuře není uvedeno, jak dlouhá (kolik znaků) má být vkládaná testovací zpráva. Vezměme si variantu, kdy do obrázku vložíme příliš krátkou testovací zprávu. Z principu fungování algoritmu RQP víme, že u obrázku již obsahujícího skrytá data dojde jen k malé změně mezi koeficienty R a R. Pokud bychom tedy provedli vložení jen velmi krátké testovací zprávy do obrázku již obsahujícího tajné informace, detekce by v tomto případě byla teoreticky vždy správná. Problém ale nastává v opačném případě, tedy když je obrázek takzvaně čistý. I v čistém obrázku totiž dojde jen k velmi malému nárůstu rozdílu mezi R a R, tudíž bude výsledek detekce opět pozitivní podezřelý obrázek obsahuje skrytá data, což není pravda. Varianta s krátkou zprávou se neosvědčila, je tedy možné zkusit dlouhou zprávu. Co se stane pří vkládání dlouhé zprávy? Pokud je podezřelý obrázek čistý, neobsahuje žádná ukrytá data, při vložení dlouhé zprávy dojde k velkému nárůstu mezi koeficienty R a R. Tento fakt je známkou toho, že podezřelý nosič můžeme označit za pravděpodobně čistý a zbavili jsme se výše uvedeného problému, který nastal u krátké zprávy. Zádrhel je ovšem v tom, co nastane v případě, že obrázek již nějaká ukrytá data obsahuje. Vložíme-li dlouhou testovací zprávu do steganogramu, může díky její délce dojít k jevu, kdy nárůst mezi koeficienty R a R bude příliš velký a obrázek bude prohlášen za pravděpodobně čistý. Autor tedy musel přijít na kompromis mezi příliš dlouhou a příliš krátkou zprávou. Tento problém se nakonec rozhodl vyřešit poměrně jednoduchým způsobem. Do obrázku se nebude ukládat jenom jedna testovací zpráva, ale postupně bude vyzkoušeno 7 zpráv různé délky. Pro délku každé zprávy bude vypočítán vlastní koeficient R a na základě většinového poměru porovnání R a R rozhodnuto, zda obrázek obsahuje tajné informace či nikoliv.

52 6.2 Extrakce ukryté zprávy Stanovení mezní tolerance rozdílu mezi R a R Druhý problém při implementaci RQP vyvstane ve chvíli, kdy jsme úspěšně vložili testovací zprávy a máme spočteny koeficienty R a R. Jak již víme, finální rozhodnutí o přítomnosti či nepřítomnosti skryté zprávy mají na starosti tyto koeficienty, přesněji řečeno jejich porovnání. Jestliže R R, obrázek pravděpodobně obsahuje skrytou zprávu, kdežto pokud R > R, obrázek je s největší pravděpodobností čistý. Bohužel, stejně jako v literatuře není uvedena doporučená délka testovací zprávy, není pevně dán rozdíl mezi koeficienty, na základě jejichž porovnání RQP rozhoduje. Nalezení vhodného mezního rozdílu nebylo pro autora jednoduchou záležitostí. I velmi malá změna tolerance znamenala zcela zásadní rozdíl v dosažených výsledcích detekce. Jako pracovní verzi si autor stanovil toleranci 10 %. To znamená, že pokud po výpočtu bylo R o více než 10 % větší než R, pro danou délku testovací zprávy bylo prohlášeno, že je obrázek čistý. V opačném případě byl samozřejmě obrázek prohlášen za steganogram. Nastavených 10 % se na prvním testovacím obrázku osvědčilo. Algoritmus dokázal správně detekovat jak čistý obrázek, tak i variantu s ukrytou zprávou. Při testování na další sadě obrázků ale autor zjistil, že 10 % není správně zvolená tolerance, jelikož algoritmus při analýze čistých obrázků vypisoval, že obsahují skrytou zprávu. Po vyzkoušení nastavení různých hodnot tolerance autor došel k závěru, že nejlepších výsledků je dosaženo s hodnotou tolerance 11 %. Jak je tedy zřejmé, i velmi malý rozdíl v nastavení tolerance znamená velký rozdíl ve výsledku detekce. Zatímco u tolerance nastavené na 10 % bylo dosaženo jen velmi špatných výsledků, při toleranci o procento vyšší již algoritmus poskytuje velmi dobrou, dá se říci výbornou detekční schopnost. 6.2 Extrakce ukryté zprávy Kromě detekčního algoritmu RQP má aplikace implementovány i algoritmy pro extrakci ukrytých informací. Extrakce je ovšem ještě daleko složitějším úkolem než detekce. Jak již autor naznačil v kapitole 2, vzhledem k různým modifikacím ukládacích algoritmů jednotlivých steganografických aplikací, je extrakce skutečně uložených dat (správných dat) velmi obtížným úkolem. V návrhu metodiky útoku na steganografický systém autor uvedl, že aplikace bude extrahovat informace sekvenčně ze všech pixelů obrázku, a tak se i stalo. Ve finální verzi ovšem bude aplikace obsahovat dva extrakční algoritmy. Autor se rozhodl navíc implementovat i algoritmus, jenž dokáže získat skryté informace z programu, který sám navrhl a implementoval v rámci své bakalářské práci. Tento algoritmus bude sloužit především pro testování funkcionality samotného extrakčního procesu. 6.3 Možnosti rozšíření aplikace Aby bylo možné aplikaci v budoucnu jednoduše rozšířit, je navržena modulárním způsobem. Díky tomu je možné do ní přidat další detekční i extrakční algoritmy,

53 6.4 Forma výstupů aplikace 53 aniž by bylo potřeba zasahovat do programového kódu. Knihovny stačí vložit do příslušného adresáře a aplikace si je při spuštění sama načte. K automatickému načtení a začlenění knihoven do aplikace je však potřeba dodržet následující požadavky. Za prvé, knihovny přidávané do aplikace se musí jmenovat stejně jako jejich hlavní třída. Před název knihovny je navíc potřeba dopsat řetězec analyzer. (v případě detekčního algoritmu), respektive řetězec extractor. (v případě extrakčního algoritmu) a odmazat příponu.jar, která označuje zkompilovaný java soubor. Pro lepší představivost si uvedeme příklad, a to pro implementovanou knihovnu, umožňující detekci pomocí algoritmu RQP. Samotná knihovna se jmenuje RQPAnalyzer, tudíž po jejím zkompilování vznikne soubor RQPAnalyzer.jar. Pokud aplikujeme na tento soubor výše uvedené úpravy, finální knihovna, kterou si aplikace dokáže sama načíst, se bude jmenovat analyzer.rqpanalyzer. Stejná pravidla platí i pro extrakční knihovny, pokud tedy máme původní zkompilovaný soubor ByteExtractor.jar, po úpravě se knihovna bude jmenovat extractor.byteextractor. Kromě správného pojmenování musí hlavní třída každé nově přidané knihovny obsahovat metodu getname(), která vrací jméno dané knihovny, a také musí obsahovat metodu analyze(bufferedimage orig) u detekčních algoritmů a metodu extract(bufferedimage orig) u extrakčních algoritmů. Poslední nutnou podmínkou, kterou je potřeba dodržet, je nakopírování knihoven do správných adresářů programu. Pro detekční knihovny je určen adresář /libs/analyze a pro extrakční knihovny je určen adresář /libs/extraction. Oba tyto adresáře se nacházejí na stejném místě jako spustitelný soubor aplikace. V neposlední řadě je potřeba zmínit možnost úpravy počtu testovacích zpráv, jenž se využívají pro výpočet koeficientu R. Testovací zprávy jsou umístěny v adresáři /testmessages, který se nachází na stejném místě jako spustitelný soubor aplikace. Všechny testovací zprávy, které do tohoto adresáře budou umístěny, si aplikace sama automaticky načte a vypočítá pro ně koeficient R, jehož porovnání s R bude zahrnuto do konečného verdiktu detekčního algoritmu RQP. Jak již bylo uvedeno, defaultně aplikace obsahuje 7 zpráv různých délek, je tedy možné některé zprávy odebrat, nebo naopak, další přidat (při přidávání dalších zpráv je potřeba vzít v úvahu delší dobu analýzy, jelikož je nutno provést více výpočtů). 6.4 Forma výstupů aplikace Výstupy aplikace jsou udělány tak, aby zahrnovaly vše podstatné, a přitom nezahlcovaly uživatele zbytečnými informacemi. Výpisy se dají rozdělit na dvě části, hlavní a doprovodné. Všechny hlavní výpisy jsou zobrazovány přímo v okně aplikace. Pokud ale uživatel aplikaci spustí přes příkazový řádek, budou se v něm zobrazovat i doprovodné informace týkající se průběhu výpočtu. Všechny hlavní, a pro uživatele zásadní informace, jsou tedy vypsány přímo v okně aplikace. Uživatel je zde informován o výsledku detekce skrytých informací v příslušném obrázku, a také je mu zde zobrazena zpráva o extrakci v případě, že tuto

54 6.5 Uživatelská dokumentace 54 možnost zvolil a byla úspěšně provedena. Z důvodu šetření místa v okně aplikace a potenciálně velkému množství extrahovaného textu jsou tyto informace uloženy do souboru extractedmessages.txt, který se vytvoří v adresáři se spustitelným souborem aplikace. Pro lepší orientaci v souboru je před každou vyextrahovanou zprávou uvedeno jméno knihovny, pomocí které byla extrakce provedena. Je-li aplikace spuštěna na operačním systému Windows, vyextrahovaná zpráva se navíc automaticky otevře v programu notepad.exe. V případě spuštění na některém systému třídy UNIX je zpráva otevřena pomocí editoru vi a vypsána do terminálu. Doprovodné informace jsou zobrazovány v příkazovém řádku. Uživatel je zde informován o procentu unikátních barev v obrázku (důležitý fakt pro přesnost detekce) a postupně jsou zobrazovány i výsledky detekce pro jednotlivé délky testovacích zpráv. Na konci je uveden také součet pozitivních a negativních výsledků detekce ukrytých dat, tudíž uživatel může sám zvážit její přesnost. 6.5 Uživatelská dokumentace Naprostou samozřejmostí pro autora bylo vytvoření grafického uživatelského rozhraní. Aplikace bez grafického rozhraní jsou především pro běžného uživatele nepohodlné a raději používá ty, které jej obsahují alespoň v jednoduché podobě (značně snižuje kognitivní zátěž). Následující odstavce budou věnovány ovládání aplikace. Aplikace je rozdělena do čtyř oken (záložek), přičemž hned to úvodní, Analyze, obsahuje vše, co uživatel potřebuje k útoku na steganografický systém. Okno je rozděleno do dvou částí. Horní část obsahuje prostor pro náhled zkoumaného obrázku včetně čtyř funkčních tlačítek Select PNG file, Analyze image, Extract message a Abort analysis. Jak již názvy napovídají, pomocí Select PNG file si může uživatel vybrat z libovolného místa na svém počítači PNG soubor, který chce podrobit analýze. Po úspěšném načtení se tento obrázek zobrazí v náhledovém okně a aktivují se tlačítka Analyze image a Extract message (po spuštění aplikace je v okně Analyze aktivní pouze tlačítko Select PNG file). Po načtení obrázku je tedy možné začít se samotnou analýzou nebo extrakcí ukryté zprávy. Pokud uživatel zvolí možnost Analyze image, spustí se analýza obrázku. Jelikož je analýza náročný proces, který u složitějších obrázků může trvat relativně dlouho, aktivuje se tlačítko Abort analysis umožňující okamžité přerušení analýzy. Jestliže uživatel nechá doběhnout detekční proces do konce, zobrazí se mu ve spodní části okna, v poli Logs, výsledek analýzy. Byla-li navíc aplikace spuštěna příkazem java -jar Stegoanalyzer.jar přes příkazový řádek, budou se v něm zobrazovat i doplňující informace týkající se procesu analýzy. Konkrétně to jsou informace o procentuálním obsahu unikátních barev ve zkoumaném obrázku a výsledky detekce pro jednotlivé délky testovacích zpráv. Jestliže uživatel zvolí možnost extrakce ukryté zprávy a ta bude úspěšně provedena, bude o tomto faktu informován rovněž v poli Logs. Jelikož získaná zpráva pravděpodobně bude rozsáhlejšího charakteru, jsou tyto informace uloženy do externího textového souboru, jenž aplikace vytvoří ve stejném adresáři jako je umístěný

55 6.6 Programátorská dokumentace 55 spustitelný soubor aplikace. Pro větší přehlednost je navíc před každou vyextrahovanou zprávou uvedeno jméno knihovny, která extrakci vykonala. Zbylé tři záložky jsou spíše informativního charakteru, a také zde nalezneme možnost ukončení aplikace. V okně Help uživatel nalezne nejenom stručnou nápovědu k jednotlivým funkčním tlačítkům aplikace, ale také volbu How it works, po jejímž vybrání se uživateli v novém okně zobrazí krok po kroku grafické znázornění toho, jak vlastně aplikace postupuje při samotném procesu analýzy, a rovněž extrakce ukrytých informací. Záložka About již obsahuje pouze shrnutí faktů o vytvoření aplikace, a pomocí poslední záložky, tedy Exit, kde se nachází volba Exit application, je možné aplikaci korektně ukončit. 6.6 Programátorská dokumentace Následující odstavce budou věnovány stručnému popisu programového kódu. Ten je v současné verzi rozdělen do čtyř samostatných částí. První část tvoří tělo samotné aplikace StegoAnalyzer, které například vytváří grafické rozhraní aplikace, umožňuje zobrazit výpisy programu nebo načíst knihovny pro detekci a extrakci uložených informací. Zbylé části kódu jsou knihovny, jenž si aplikace při startu načítá (RQPanalyzer, OriginalExtractor a ByteExtractor) Stegoanalyzer Třída FileFilterImage Tato třída umožňuje načítání obrázků ve formátu PNG, které chceme podrobit analýze (filtruje soubory podle jejich přípony). K tomuto účelu je využito standardních knihoven, které jazyk Java nabízí. Třída FrameHow a PanelHowImage Aplikace prostřednictvím volby How it works umožňuje zobrazit grafické znázornění toho, jak probíhá samotný proces analýzy. FrameHow a PanelHowImage zprostředkovávají tuto funkcionalitu. Třída ImageAnalyzer a ImageExtractor Úlohou těchto dvou tříd je převzetí detekčních, respektkive extrakčních metod načtených pomocí třídy LibraryLoader. Převzaté metody poté provádějí samotné analýzy nad zvoleným obrázkem. Třída ImagePanel Při načtení PNG obrázku do aplikace, jenž chceme analyzovat, se nám v příslušném okně zobrazí jeho náhled. Tento fakt umožňuje právě tato třída, jejíž metody vykreslují okno, do kterého se náhled ukládá.

56 6.6 Programátorská dokumentace 56 Třída LibraryLoader Jak již název napovídá, tato třída slouží k načítání knihoven aplikace. Obsahuje metody getanalyticclasses() a getanalyticclasses(), které se postarají o načtení všech implementovaných detekčních, respektive extrakčních algoritmů. Rozhraní LoggerListener a třída Logger V aplikaci je umístěno pole Logs, které slouží pro výpis logů produkovaných při různých akcích aplikace. Jestliže chce některá ze tříd zapsat o své aktivitě poznámku do logu, musí zavolat statickou metodu add message(string message) ze třídy Logger. Třída Logger pak předá zprávu tomu, kdo ji poslouchá (implementuje rozhraní LoggerListener) a ten se zařadí k posluchačům pomocí metody add listener(loggerlistener l). Třída MainW Hlavní třída celého programu StegoAnalyer. Umožňuje inicializaci a vykreslení jednotlivých oken aplikace, a to včetně pole pro výpis logů. Třída PanelAbout, PanelAnalyze, PanelExit a PanelHelp Všechny tyto třídy se starají o grafické rozhraní aplikace. Obsahují velké množství metod, které vykreslují jednotlivé grafické prvky. Každý z těchto prvků má zde svoji metodu, která umožňuje jejich použití. Třída Utils Aplikace využívá obecných metod, které programátorovi výrazně ulehčují práci, a právě tyto metody jsou implementovány ve třídě Utils. Najdeme zde například metodu String read file(file file), která převádí soubor na String nebo String print binary(byte [] message), jenž umožňuje převod bytového pole na String knihovna ByteExtractor Třída AbstractExtractor Abstraktní třída, ze které mohou dědit extraktory knihoven. Dědění není povinné, ale při jeho využití jsou automaticky nadefinovány povinné metody volané hlavním programem. Třída ByteDecoder, ByteReaderWriter, ImageDecoder, Sequence a Static- Sequence Skupina vzájemně propojených tříd, které obsahují různé metody umožňující extrahování zprávy sekvenčním způsobem ze všech pixelů zkoumaného obrázku.

57 6.6 Programátorská dokumentace 57 Třída ByteExtractor Třída obsahující implementaci povinných metod extract(bufferedimage orig) a getname(), jenž jsou volány hlavním programem. Třída Utils viz Stegoanalyzer knihovna OriginalExtractor Tato knihovna obsahuje funkčně úplně stejné třídy jako knihovna ByteExtractor (samozřejmě s drobnou obměnou extrakčního algoritmu). Navíc obsahuje třídu Header, která umožňuje precizní extrakční útok na tajnou zprávu ukrytou pomocí aplikace, jenž autor vytvořil v rámci své bakalářské práce knihovna RQPanalyzer Třída AbstractAnalyzer Abstraktní třída se stejným účelem jako AbstractExtractor v knihovně ByteExtractor a OriginalExtractor. Rozdíl je v tom, že z této abstraktní třídy můžou dědit analyzátory knihoven. Třída ByteEncoder, ByteReaderWriter, Header, ImageEncoder, Sequence a StaticSequence Skupina vzájemně propojených tříd, které obsahují různé metody umožňující vložení testovacích zpráv (nutné pro výpočet R ) do zkoumaného obrázku. Třída Pixel Účelem třídy je rozdělení zkoumaného obrázku na jednotlivé pixely. Obsahuje metody, jenž slouží pro vypočtení unikátních a podobných barev v obrázku. Třída RQPanalyzer Třída obsahující implementaci povinných metod analyze(bufferedimage orig) a getname(), jenž jsou volány hlavním programem. Třída Utils viz Stegoanalyzer

58 7 DISKUSE 58 7 Diskuse 7.1 Dosažené výsledky aplikace StegoAnalyzer K ověření dosažených výsledků autor využil zhruba 30 různých obrázků ve formátu PNG, které se lišily v procentu unikátních barev (možnost ověřit tvrzení, že metoda RQP je účinná u grafických formátů, jenž neobsahují více než 30 % unikátních barev). Z důvodu rychlejšího výpočtu jednotlivých statistik byly použity obrázky menší velikosti, konkrétně s množstvím pixelů pohybujícím se v rozmezí až Před započetím ověřování výsledků si autor připravil dvě verze každého testovacího obrázku, a to verzi bez ukryté tajné zprávy a s ukrytou tajnou zprávou. K vložení tajné zprávy autor u poloviny obrázků použil aplikaci, kterou vytvořil v rámci své bakalářské práce a u druhé poloviny obrázků bylo využito aplikace OpenPuff verze 3.40, popsané v kapitole Jako ukrývaný text posloužila úvodní část anglické verze Listiny základních práv a svobod (text o rozsahu zhruba 900 znaků). Dosažené výsledky autor demonstruje na následující reprezentativní sadě obrázků s různým procentuálním počtem unikátních barev: prechod.png mendel.png png.png simpsonovi.png zemekoule.png usvit.png Obr. 9: Reprezentativní sada obrázků pro otestování funkčnosti aplikace. Následující tabulka již obsahuje výsledky dosažené aplikací StegoAnalyzer. V prvním sloupci tabulky je uveden název souboru, který byl testován. Soubory uvedené bez podtržítka na začátku názvu značí čisté obrázky, kdežto podtržítko před názvem souboru označuje steganogramy. Druhý sloupec obsahuje informaci o tom, kolik procent unikátních barev daný obrázek obsahuje. Tato informace je důležitá pro představu o přesnosti detekce, jelikož, jak již víme, metoda RQP je spolehlivá u obrázků s obsahem unikátních barev do 30 %. Poslední sloupec tabulky představuje verdikt aplikace, zda obrázek obsahuje ukrytou tajnou zprávu, nebo je čistý.

59 7.1 Dosažené výsledky aplikace StegoAnalyzer 59 Tab. 9: Výsledky dosažené aplikací StegoAnalyzer u reprezentativní sady testovacích obrázků. Obrázek Procento unikátních barev Výsledek detekce prechod.png 0,38 ne prechod.png 1,13 ano mendel.png 2,56 ne mendel.png 2,71 ano png.png 8,82 ne png.png 9,23 ano simpsonovi.png 11,12 ne simpsonovi.png 11,19 ano zemekoule.png 22,98 ne zemekoule.png 23,21 ano usvit.png 28,94 ne usvit.png 29,16 ne Z tabulky lze vyčíst, že byla potvrzena výchozí teoretická stanoviska z kapitoly 4.3.2, týkající se RQP analýzy. Výsledky detekce byly naprosto spolehlivé, až na jednu výjimku (tučně označený výsledek detekce). Tou je obrázek úsvit.png, respektive úsvit.png, kde došlo k chybné detekci. Aplikace oznámila, že obrázek pravděpodobně neobsahuje tajné informace, i když opak je pravdou. Mylná detekce je ale lehce vysvětlitelná, pokud se podíváme na procento unikátních barev. Obrázek úsvit.png totiž obsahuje 29,16 % unikátních barev, což je velmi blízko hranici 30 %, u které začíná být RQP nespolehlivým detekčním algoritmem. Pro otestování úspěšnosti extrakce ukrytých informací autor využil tří různých aplikací, které dokáží pracovat s grafickým formátem PNG. Jedná se o bezplatnou aplikaci OpenPuff ve verzi 3.40, komerční aplikaci Invisible Secrets ve verzi 4.7 a využit byl samozřejmě také program vytvořený autorem práce v rámci bakalářské práce. Dosažené výsledky potvrdily teoretické předpoklady, jenž byly uvedeny v kapitole 5. Při extrakci informací uložených pomocí autorovy aplikace byl výsledek úspěšný. U prvního extrakčního algoritmu, jenž získává jednotlivé bity zprávy ze všech pixelů obrázku, bylo dosaženo zobrazení velkého množství nesmyslného textu. Avšak i přes tento fakt bylo možné v textu jednoduše najít ukrytou zprávu. Co se týče druhého extrakčního algoritmu, zde bylo podle očekávání dosaženo naprosto precizní extrakce, jelikož je tento algoritmus navržen pro útok na autorovu aplikaci z bakalářské práce. Extrakce u aplikací OpenPuff a Invisible Secrets již úspěšná nebyla. Ani jedna z těchto aplikací totiž neukládá informace sekvenčním způsobem a navíc je ještě šifrují. Z těchto důvodů StegoAnalyzer dokázal vyextrahovat pouze velké množství

60 7.2 Srovnání aplikace StegoAnalyzer s jinými programy 60 nesmyslného textu, ve kterém samozřejmě nebylo možné najít ukrytou zprávu. U extrakčního algoritmu navrženého speciálně pro autorovu aplikaci z bakalářské práce dokonce k extrakci vůbec nedojde. Tento fakt je dán tím, že daná aplikace k ukrývané zprávě přidává i kontrolní součet CRC a pokud se tento součet neshoduje, k extrakci nedojde. Z předchozích odstavců tedy jasně vyplývá, že pokud byly tajné informace vloženy sekvenčním způsobem, StegoAnalyzer je dokáže úspěšně vyextrahovat. Aplikace ovšem selhává v případě, že informace nebyly ukryty sekvenčním způsobem, a nebo byly zašifrovány. Kombinace pseudonáhodného rozmístění a zároveň zašifrování ukrytých dat se jeví jako nejhůře prolomitelný steganografický systém. 7.2 Srovnání aplikace StegoAnalyzer s jinými programy V kapitole věnované stegoanalýze autor zmínil několik již existujících aplikací, které se zabývají stejnou tématikou, tedy detekcí tajných informací uložených v grafických souborových formátech (a nejenom těch), jako předkládaná aplikace. Nyní, po úspěšném dokončení a odladění aplikace, má autor možnost porovnat svou implementaci s těmito, již existujícími programy. Bohužel, zcela vypovídající porovnání není možné. Přestože steganografických aplikací je trhu velké množství a jsou dostupné i s dokumentacemi, těch stegoanalytických je velmi málo a většinou jsou komerčního charakteru, díky čemuž jsou o nich dostupné jen omezené informace. Dalším faktem je to, že autorova aplikace se s komerčními produkty, co se týče funkčnosti, zcela logicky nedá srovnávat. Zřejmě jediná aplikace, u které se nabízí rovnocenné a vypovídající srovnání, je Stegdetect. Jedná se zřejmě o nejznámější freeware produkt na trhu, který sice pracuje s jiným grafickým formátem, ale svou funkčností se nejvíce přibližuje autorově aplikaci. Z tohoto důvodu se v následujících odstavcích autor práce pokusí o co nejobjektivnější srovnání své aplikace právě s programem Stegdetect. Jako první se nabízí srovnání podporovaných formátů. Zde jsou na tom obě aplikace, dá se říct, stejně. V případě Stegdetect je jediným podporovaným formátem JPEG, StegoAnalyzer pracuje s PNG. Po spuštění obou aplikací se naskytne další možnost srovnání, a tou je grafické rozhraní. V obou případech se setkáme s velmi jednoduchým a intuitivním rozhraním, ve kterém nebude mít problém se zorientovat ani méně zkušený uživatel. Jeden drobný rozdíl tu ale přeci jenom je. Stegdetect je už starší aplikace, která byla původně vyvinuta pouze pro operační systémy třídy Unix a neobsahovala žádné grafické rozhraní (ovládání pouze přes příkazový řádek). Současná verze sice již obsahuje nadstavbu jménem xsteg, která přidává zmiňované grafické rozhraní, ale to vypadá velmi zastarale. Z tohoto důvodu autor práce považuje grafickou stránku své aplikace za zdařilejší, než je tomu tak u programu Stegdetect. Co se týče podpory operačních systémů, zde vítězí StegoAnalyzer. Stegdetect je určen pouze pro operační systém Windows a systémy třídy Unix. Autorova aplikace v tomto ohledu není omezena. Jak již bylo zmíněno, pro spuštění StegoAnalyzer je

61 7.2 Srovnání aplikace StegoAnalyzer s jinými programy 61 potřeba mít nainstalované pouze Java Runtime Environment, poté je možné aplikaci spustit na jakémkoliv operačním systému. StegoAnalyzer ale předčí svého konkurenta i v dalších ohledech. Pokud vezmeme v úvahu extrakci ukrytých informací, není ani možné srovnávat. Stegdetect totiž tuto funkci vůbec nemá naimplementovanou, zatímco autorova aplikace obsahuje dva extrakční algoritmy. Další plus programu StegoAnalyzer je jeho modulárnost. Stegdetect je sice také dostupný i se zdrojovým kódem, ale není navržen modulárně. Tento fakt značně stěžuje rozšiřitelnost, jelikož je potřeba pochopit celý programový kód aplikace. StegoAnalyzer je oproti tomu navržený modulárně a v případě potřeby rozšíření aplikace o další detekční nebo extrakční algoritmy není potřeba zasahovat do jejího těla. Srovnání detekčních algoritmů si autor práce úmyslně nechal na konec. Zde je srovnání jen velmi obtížné. Zatímco Stegdetect je navržen na prolomení konkrétních algoritmů a aplikací, StegoAnalyzer má implementovaný obecný detekční algoritmus RQP. V praxi to znamená, že Stegdetect je sice úspěšnější v detekci ukrytých informací pomocí konkrétních algoritmů a programů, ale StegoAnalyzer nalezne obecnější použití u širšího spektra obrázků, jelikož není omezen použitím na konkrétní aplikace nebo metody. Jak je tedy možné z předchozích odstavců vyčíst, autorova aplikace v mnoha faktorech převyšuje nejznámější bezplatný produkt v oblasti stegoanalýzy, který je na trhu dostupný. Rozhodnutí, zda je ve výsledku lepší aplikace StegoAnalyzer nebo Stegdetect, nechá autor práce na čtenářích. V následující tabulce jsou shrnuty klíčové vlastnosti obou srovnávaných programů: Tab. 10: Srovnání aplikace StegoAnalyzer a Stegdetect. Funkce/vlastnost StegoAnalyzer Stegdetect podporované formáty PNG JPEG detekční algoritmy RQP detekce programů jsteg, jphide, invisible secrets, outguess, appendx, camouflage a algoritmu F5 podpora extrakce ano ne podporované OS nezávislé Windows a systémy třídy UNIX grafické rozhraní ano ano jednoduché použití ano ano modulárnost ano ne dostupnost zdrojového kódu ano ano programovací jazyk Java C

62 8 ZHODNOCENÍ PROVEDENÉ IMPLEMENTACE 62 8 Zhodnocení provedené implementace Autor práce za jeden z klíčovým prvků aplikace považuje její obecné použití při aplikaci na obrázky ve formátu PNG. Díky implementovanému detekčnímu algoritmu RQP není její použití omezeno na konkrétní steganografické aplikace nebo metody. Nevýhodou RQP analýzy je její nespolehlivost u obrázků s velkým počtem unikátních barev, což znamená, že aplikaci není vhodné používat například pro detekci skrytých informací ve fotografiích. U obrázků s běžným počtem barev ale aplikace prokázala výbornou detekční schopnost a úspěšnost. Extrahování ukrytých informací je nejenom pro autorovu aplikaci složitým úkolem. StegoAnalyzer má implementovaný sekvenční způsob extrakce, který získává informace ze všech pixelů obrázků. Tento způsob je obecně úspěšný, jelikož velké množství steganografických aplikací využívá, s jistou drobnou modifikací, právě sekvenční ukládání informací. Nevýhodou tohoto způsobu extrakce je zobrazení i velkého množství nesmyslných informací, ale to je daň za obecné použití algoritmu proti širšímu spektru steganografických systémů. Důležitou vlastností a předností aplikace je její přenositelnost na různé operační systémy. Při implementaci bylo záměrně využito multiplatformního programovacího jazyku Java, který toto umožňuje. Jedinou podmínkou spustitelnosti programu je tedy nainstalovaná Java Runtime Environment na hostitelském počítači bez ohledu na operační systém. Jako podporovaný formát pro detekci skrytých informací byl vybrán PNG. Tento formát je označován za nástupce GIFu a právem se začíná těšit čím dál tím větší oblibě mezi běžnými uživateli, ale i odborníky přes počítačovou grafiku. Další faktorem pro volbu PNG byla jeho slabá podpora mezi stegoanalytickými aplikace. Poměrně velké množství aplikací dokáže informace do PNG skrývat, ale jen málo je dokáže detekovat, respektive extrahovat. Nejsilnější stránkou aplikace je bezpochyby její modulárnost v kombinaci s dostupným zdrojovým kódem a dokumentací. Díky tomu může být StegoAnalyzer jednoduše rozšířen o další funkcionalitu, a to nejenom jejím autorem. Prakticky každý, kdo ovládá programovací jazyk Java, bude schopný pro přečtení dokumentace a dodržení určitých podmínek implementace rozšířit množství počet detekčních i extrakčních algoritmů. Při dodržení podmínek uvedených v kapitole 6.3 si aplikace dokáže sama dynamicky načítat všechny implementované detekční a extrakční algoritmy. Stejný princip platí i pro jednotlivé testovací zprávy, které jsou použity při výpočtu R koeficientů a rozhodnutí aplikace, zda zkoumaný obrázek obsahuje skrytou zprávu nebo ne. V neposlední řadě je potřeba zmínit, že aplikace má jednoduché grafické rozhraní, díky kterému nebudou mít problém ji ovládat ani méně zkušení uživatelé. StegoAnalyzer navíc obsahuje nápovědu vysvětlující funkcionalitu jednotlivých prvků aplikace, včetně grafického znázornění principu jejího fungování. Díky tomu dostává uživatel možnost pochopit celý proces detekce a extrakce ukrytých informací.

63 8 ZHODNOCENÍ PROVEDENÉ IMPLEMENTACE 63 Předkládaná aplikace by se samozřejmě mohla dále vyvíjet. Možných rozšíření je hned několik. Jako první se vybízí rozšíření počtu detekčních algoritmů. Momentálně aplikace obsahuje pouze RQP analýzu, v kapitole ale byly uvedeny i další metody detekce skrytých informací, jenž by mohly být implementovány. Další možnost rozšíření spočívá ve zvýšení počtu extrakčních algoritmů. Kromě obecné extrakce ze všech pixelů obrázků by bylo možné se zaměřit i na konkrétní, často používané steganografické aplikace a implementovat algoritmy, umožňující jejich prolomení. Posledním rozšířením, které se nabízí na první pohled, je podpora většího množství grafických formátů. Aplikace v současné době pracuje pouze s formátem PNG, ale v kapitole bylo zmíněno několik dalších nejčastěji používaných grafických formátů současnosti, o jejichž podporu by předkládaný program mohl být rozšířen. Před implementováním podpory dalších grafických formátů by ovšem bylo nutné vzít v potaz, že RQP analýza je určena pro obrázky s 24bitovou hloubkou.

64 9 ZÁVĚR 64 9 Závěr Na základě východisek uvedených v teoretické části práce byl navržen postup, jenž umožňuje provést útok na steganografický systém. Vzhledem k současnému stavu problematiky stegoanalýzy se autor rozhodl vytvořit aplikaci pojmenovanou Stego- Analyzer, která umožňuje otestovat grafické soubory ve formátu PNG na přítomnost ukrytých tajných informací a extrahovat ukryté informace. Pro účely detekce skrytých informací byl implementován algoritmus RQP (Raw Quick Pairs), který je určený pro obrázky s barevnou hloubkou 24 bitů. RQP pracuje na principu porovnání počtu unikátních a podobných barev v původním obrázku a následně v jeho lehce modifikované verzi. Tato modifikace přitom spočívá v uložení testovací zprávy, jenž má napomoci při samotné detekci skrytých informací. Extrakce informací z obrázku probíhá sekvenčním způsobem, tedy postupně ze všech pixelů. Díky tomu je sice vyextrahováno i relativně velké množství nesmyslných informací, ale obecnost tohoto algoritmu a široká použitelnost při útoku na různé steganografické systémy převážila danou nevýhodu. Kromě tohoto způsobu extrakce je implementován i algoritmus, který dokáže získat ukryté informace z aplikace, jenž autor vytvořil v rámci své bakalářské práce. Modulární způsob navržení předurčuje aplikaci k možnému budoucímu rozšíření o další detekční či extrakční algoritmy. Implementace těchto algoritmů je zcela nezávislá těle samotné aplikace, která si je dynamicky načítá. V praxi to znamená, že knihovny stačí nakopírovat do příslušné složky k aplikaci, a ta už je sama automaticky zapojí do detekčního, respektive extrakčního procesu. Dobré výsledky, jednoduchost, přehlednost a modulárnost dělá z aplikace StegoAnalyzer kvalitní nástroj, jenž je možné využít při detekci a extrakci tajných informací uložených v grafických souborech formátu PNG. Navíc, poznatky uvedené v teoretické části práci jsou obzvláště přínosné, vezmeme-li v úvahu velký nedostatek kvalitní české literatury zabývající se problematikou steganografie a stegoanalýzy. V neposlední řadě je potřeba dodat, že výsledná aplikace bude dostupná zdarma, a to i se zdrojovým kódem a dokumentací. Stažení všech souborů je možné z následujících internetových stránek:

65 10 LITERATURA Literatura Bender W. Gruhl D. Morimoto N. Lu A., Techniques for data hiding [on-line] [cit ]. Dokument ve formátu PDF Dostupný na Internetu: jortiz/cs4953/papers/ Techniques%20for%20Data%20Hiding-p.pdf. Čech N., Grafické formáty II BMP, GIF, RAW a ostatní [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Dutta P. Bhattacharyya D. Kim T., Data Hiding in Audio Signal: A Review [on-line] [cit ]. Dokument ve formátu PDF Dostupný na Internetu: no2/1.pdf. Foltýnek T. Přichystal J., Steganografie [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Fridrich J. Goljan M. Hogea D. Soukal D., Quantitative steganalysis of digital images: estimating the secret message length [on-line] [cit ]. Dokument ve formátu PDF Dostupný na Internetu: download?doi= &rep=rep1&type=pdf. Grošek O. Porubský Š., Šifrovanie algoritmy, metódy, prax. Praha: Grada, s. Nestůjte za dveřmi. ISBN Hetzl S., Steghide manual [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Chastain S., What is a watermark? How can I add a watermark to my photos? [on-line]. c2011. [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Janák R., PNG dokonalý formát pro přenos obrazových dat [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: png-dokonaly-format-pro-prenos-obrazovych-dat/. Johnson N. F., Information Hiding: Steganography & Digital Watermarking [on-line]. c2011. [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Johnson N. F., History and Steganography [on-line]. c1995. [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Johnson N. F. Duric Z. Jajodia S., Information hiding: steganography and watermarking attacks and countermeasures Boston: Kluwer Academic, s. Advances in information security. ISBN

66 10 LITERATURA 66 Johnson N. F. Jajodia S., Exploring Steganography: Seeing the Unseen [on-line] [cit ]. Dokument ve formátu PDF Dostupný na Internetu: Josefy V., Detailní popis formátu GIF [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: ADV.htm. Katzenbeisser S. Petitcolas F. A. P., Information hiding: techniques for steganography and digital watermarking Boston: Artech House, s. Artech House computer security series. ISBN Kerr A., Information Hiding and Covert Communication [on-line] [cit ]. Dokument ve formátu PDF Dostupný na Internetu: ker-slides-part1.pdf. Kessler G. C., Steganography: Hiding Data Within Data [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Kosek J. ml., PNG: nový grafický formát nejen pro Web [on-line]. c1999. [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Krenn J. R., Steganography and Steganalysis [on-line] [cit ]. Dokument ve formátu PDF Dostupný na Internetu: Kyncl L., Formát PNG podívejme se na něj podrobněji [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Meghanathan N. Nayak L., Stegoanalysis algorithms for detecting the hidden information in image, audio and video cover media [on-line] [cit ]. Dokument ve formátu PDF Dostupný na Internetu: Menezes A. J. Van Oorschot P. C. Vanstone S. A., Handbook of applied cryptography. Boca Raton: CRC Press, s. CRC Press series on discrete mathematics and its applications. ISBN Morkel T. Eloff J. H. P. Olivier M. S., An overview of image steganography [on-line] [cit ]. Dokument ve formátu PDF Dostupný na Internetu: Murray J. D. Ryper W. V., Encyklopedie grafických formátů. 2. vyd. Praha: Computer Press, s. ISBN Oliboni C., OpenPuff 3.40: Yet not another steganography SW [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Steganography Home.html. Petitcolas F., Digital watermarking & steganography [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu:

67 10 LITERATURA 67 Petitcolas F., mp3stego [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: index.html. Phan R. C.-W. Ling H.-C., Steganalysis of random LSB insertion using discrete logarithms proposed at cita03 [on-line]. [cit ]. Dokument ve formátu PDF Dostupný na Internetu: download?doi= &rep=rep1&type=pdf. Piper F. C. Murphy S., Kryptografie. 1. vyd. Praha: Dokořán, s. Průvodce pro každého. ISBN Provos N., Outguess 0.2 [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Provos N., Steganography Detection with Stegdetect [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Ridzoň R. Levický D. Klenovičová Z., Attacks on Watermarks and Adjusting PSNR for Watermarks Application [on-line] [cit ]. Dokument ve formátu PDF Dostupný na Internetu: pdf. SARC, StegAlyzerAS: Detect files and registry entries associated with steganography applications! [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: more.aspx. Shin D. et al., Data Hiding in Windows Executable Files [on-line] [cit ]. Dokument ve formátu PDF Dostupný na Internetu: Shin%20Data%20Hiding%20in%20Windows%20Executable%20Files.pdf. Schneier B., Applied Cryptography: Protocols, Algorithms, and Source Code in C. 2. vyd. New York: John Wiley & Sons, s. ISBN Singh S., Kniha kódů a šifer. Praha: Dokořán, s. ISBN Skřivan J., GIF, JPEG a PNG jak a kdy je použít? [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Tišnovský P., Grafický formát BMP používaný a přitom neoblíbený [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu: graficky-format-bmp-pouzivany-a-pritom-neoblibeny/. Tišnovský P., PNG is Not GIF [on-line] [cit ]. Dokument ve formátu HTML Dostupný na Internetu:

68 10 LITERATURA 68 Voloshynovskiy S. et al., Attacks on Digital Watermarks: Classification, Estimation based Attacks and Benchmarks [on-line]. [cit ]. Dokument ve formátu PDF Dostupný na Internetu: download?doi= &rep=rep1&type=pdf. Westfeld A. Pfitzmann A., Attacks on Steganographic Systems: Breaking the Steganographic Utilities EzStego, Jsteg, Steganos, and S-Tools and Some Lessons Learned [on-line] [cit ]. Dokument ve formátu PDF Dostupný na Internetu: adrian/487-s06/ westfeld-pfitzmann-ihw99.pdf. WetStone Technologies, Stego Suite Discover the Hidden [on-line]. c2011. [cit ]. Dokument ve formátu HTML Dostupný na Internetu: Yang Y., Raw Quick Pairs method of detecting Stego-images [on-line] [cit ]. Dokument ve formátu PDF Dostupný na Internetu: termpapers/yy.pdf. Žára J. Beneš B. Felkel P., Moderní počítačová grafika. 1. vyd. Praha: Computer Press, s. ISBN Žára J. Sochor J. Beneš B. Felkel P., Moderní počítačová grafika. 2. vyd. Praha: Computer Press, s. ISBN Praktické základy Kryptologie a Steganografie [on-line]. c2004. [cit ]. Dokument ve formátu HTML. Dostupný na Internetu: praktické-základy-kryptologie-steganografie

69 11 PŘÍLOHY Přílohy Příloha A screenshoty aplikace Obr. 10: Výsledek analýzy obrázku s doprovodnými výpisy v příkazovém řádku.

70 11.2 Příloha B zdrojový kód aplikace (CD) 70 Obr. 11: Zpráva vyextrahovaná z analyzovaného obrázku v prostředí Windows Příloha B zdrojový kód aplikace (CD)

Konverze grafických rastrových formátů

Konverze grafických rastrových formátů ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE FAKULTA STAVEBNÍ OBOR GEODÉZIE A KARTOGRAFIE KATEDRA MAPOVÁNÍ A KARTOGRAFIE Konverze grafických rastrových formátů semestrální práce Jakub Hořejší Ondřej Šalanda V

Více

Práce s obrazovým materiálem CENTRUM MEDIÁLNÍHO VZDĚLÁVÁNÍ. Akreditované středisko dalšího vzdělávání pedagogických pracovníků

Práce s obrazovým materiálem CENTRUM MEDIÁLNÍHO VZDĚLÁVÁNÍ. Akreditované středisko dalšího vzdělávání pedagogických pracovníků Práce s obrazovým materiálem CENTRUM MEDIÁLNÍHO VZDĚLÁVÁNÍ Akreditované středisko dalšího vzdělávání pedagogických pracovníků Obrazový materiál příjemná součást prezentace lépe zapamatovatelný často nahrazení

Více

Počítačová grafika SZŠ A VOŠZ MERHAUTOVA 15, BRNO

Počítačová grafika SZŠ A VOŠZ MERHAUTOVA 15, BRNO Počítačová grafika SZŠ A VOŠZ MERHAUTOVA 15, BRNO 1 Základní dělení 3D grafika 2D grafika vektorová rastrová grafika 2/29 Vektorová grafika Jednotlivé objekty jsou tvořeny křivkami Využití: tvorba diagramů,

Více

VYUŽITÍ POČÍTAČOVÉ GRAFIKY

VYUŽITÍ POČÍTAČOVÉ GRAFIKY POČÍTAČOVÁ GRAFIKA VYUŽITÍ POČÍTAČOVÉ GRAFIKY ÚPRAVA FOTOGRAFIÍ NAFOCENÉ FOTOGRAFIE Z DIGITÁLNÍHO FOTOAPARÁTU MŮŽEME NEJEN PROHLÍŽET, ALE TAKÉ UPRAVOVAT JAS KONTRAST BAREVNOST OŘÍZNUTÍ ODSTRANĚNÍ ČERVENÝCH

Více

Adobe Photoshop 18. Ukládání dokumentu formáty

Adobe Photoshop 18. Ukládání dokumentu formáty Adobe Photoshop 18. Ukládání dokumentu formáty www.isspolygr.cz Vytvořila: Bc. Blažena Kondelíková Vytvořila dne: 20. 11. 2012 Strana: 1/5 Škola Ročník 4. ročník (SOŠ, SOU) Název projektu Interaktivní

Více

12 Metody snižování barevného prostoru

12 Metody snižování barevného prostoru 12 Metody snižování barevného prostoru Studijní cíl Tento blok je věnován základním metodám pro snižování barevného rozsahu pro rastrové obrázky. Postupně zde jsou vysvětleny důvody k použití těchto algoritmů

Více

Úvod do počítačové grafiky

Úvod do počítačové grafiky Úvod do počítačové grafiky elmag. záření s určitou vlnovou délkou dopadající na sítnici našeho oka vnímáme jako barvu v rámci viditelné části spektra je člověk schopen rozlišit přibližně 10 milionů barev

Více

Využití ICT techniky především v uměleckém vzdělávání. Akademie - VOŠ, Gymn. a SOŠUP Světlá nad Sázavou

Využití ICT techniky především v uměleckém vzdělávání. Akademie - VOŠ, Gymn. a SOŠUP Světlá nad Sázavou Datum: 1. 12. 2013 Projekt: Registrační číslo: Číslo DUM: Škola: Jméno autora: Název sady: Název práce: Předmět: Ročník: Obor: Časová dotace: Vzdělávací cíl: Pomůcky: Využití ICT techniky především v uměleckém

Více

III/ 2 Inovace a zkvalitnění výuky prostřednictvím ICT

III/ 2 Inovace a zkvalitnění výuky prostřednictvím ICT Metodický list k didaktickému materiálu Číslo a název šablony Číslo didaktického materiálu Druh didaktického materiálu Autor Téma sady didaktických materiálů Téma didaktického materiálu Vyučovací předmět

Více

Zdroj: http://www.root.cz/clanky/pravda-a-myty-o-gifu/

Zdroj: http://www.root.cz/clanky/pravda-a-myty-o-gifu/ Zdroj: http://www.root.cz/clanky/pravda-a-myty-o-gifu/ Bitmapový formát (rastrový obrázek) Většina z používaných grafických formátů (JPEG, PNG, TGA, BMP) obsahuje popis rastrového obrázku jako celku ukládají

Více

Rastrová grafika. Grafický objekt je zaznamenán jednotlivými souřadnicemi bodů v mřížce. pixel ( picture element ) s definovanou barvou

Rastrová grafika. Grafický objekt je zaznamenán jednotlivými souřadnicemi bodů v mřížce. pixel ( picture element ) s definovanou barvou Rastrová grafika Grafický objekt je zaznamenán jednotlivými souřadnicemi bodů v mřížce. pixel ( picture element ) s definovanou barvou Kvalita je určena rozlišením mřížky a barevnou hloubkou (počet bitů

Více

Identifikátor materiálu: ICT-1-19

Identifikátor materiálu: ICT-1-19 Identifikátor materiálu: ICT-1-19 Předmět Informační a komunikační technologie Téma materiálu Komprimace, archivace dat Autor Ing. Bohuslav Nepovím Anotace Student si procvičí / osvojí komprimaci, archivaci

Více

Počítačová grafika. OBSAH Grafické formy: Vektorová grafika Bitmapová (rastrová grafika) Barevné modely

Počítačová grafika. OBSAH Grafické formy: Vektorová grafika Bitmapová (rastrová grafika) Barevné modely Počítačová grafika OBSAH Grafické formy: Vektorová grafika Bitmapová (rastrová grafika) Barevné modely Vektorová grafika Vektorová grafika Příklad vektorové grafiky Zpět na Obsah Vektorová grafika Vektorový

Více

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN Škola: Gymnázium, Brno, Slovanské náměstí 7 Šablona: III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN prostřednictvím ICT Číslo projektu: CZ.1.07/1.5.00/34.0940

Více

On-line škola mladých autorů , pořadatel: ČVUT FEL. Jak na obrázky? Martin Žáček

On-line škola mladých autorů , pořadatel: ČVUT FEL. Jak na obrázky? Martin Žáček On-line škola mladých autorů 20. 2. 18. 4. 2013, pořadatel: ČVUT FEL Jak na obrázky? Martin Žáček zacekm@fel.cvut.cz http://www.aldebaran.cz/onlineskola/ Jak na obrázky? Osnova 1. Co je to vůbec obrázek,

Více

Barvy a barevné systémy Formáty obrázků pro WWW

Barvy a barevné systémy Formáty obrázků pro WWW Barvy a barevné systémy Formáty obrázků pro WWW Viditelné světlo. Elektromagnetické záření o vlnové délce 390 760 nanometrů. Jsou-li v konkrétním světle zastoupeny složky všech vlnových délek, vnímáme

Více

Zásady prezentace CENTRUM MEDIÁLNÍHO VZDĚLÁVÁNÍ. Akreditované středisko dalšího vzdělávání pedagogických pracovníků

Zásady prezentace CENTRUM MEDIÁLNÍHO VZDĚLÁVÁNÍ. Akreditované středisko dalšího vzdělávání pedagogických pracovníků Zásady prezentace CENTRUM MEDIÁLNÍHO VZDĚLÁVÁNÍ Akreditované středisko dalšího vzdělávání pedagogických pracovníků Prezentace Prezentace: přednášený text + elektronický materiál Přednášený text: poutavý

Více

Barvy a barevné systémy Formáty obrázků pro WWW

Barvy a barevné systémy Formáty obrázků pro WWW Barvy a barevné systémy Formáty obrázků pro WWW Viditelné světlo. Elektromagnetické záření o vlnové délce 390 760 nanometrů. Jsou-li v konkrétním světle zastoupeny složky všech vlnových délek, vnímáme

Více

KOMPRIMACE. aneb Aby to zabralo méně místa

KOMPRIMACE. aneb Aby to zabralo méně místa KOMPRIMACE aneb Aby to zabralo méně místa Komprimace nebo také komprese je jednoduše řečeno sbalení či spakování dat na mnohem menší velikost. Ve skutečnosti se jedná o vypuštění nadbytečné informace takovým

Více

Obraz jako data. Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno. prezentace je součástí projektu FRVŠ č.2487/2011

Obraz jako data. Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno. prezentace je součástí projektu FRVŠ č.2487/2011 Získávání a analýza obrazové informace Obraz jako data Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno prezentace je součástí projektu FRVŠ č.2487/2011 Osnova 1 Datové formáty obrazu 2 Datové

Více

Webové stránky. 6. Grafické formáty pro web. Datum vytvoření: 11. 10. 2012. str ánk y. Vytvořil: Petr Lerch. www.isspolygr.cz

Webové stránky. 6. Grafické formáty pro web. Datum vytvoření: 11. 10. 2012. str ánk y. Vytvořil: Petr Lerch. www.isspolygr.cz Webové stránky 6. Vytvořil: Petr Lerch www.isspolygr.cz Datum vytvoření: 11. 10. 2012 Webové Strana: 1/6 Škola Ročník Název projektu Číslo projektu Číslo a název šablony Autor Tématická oblast Název DUM

Více

Rastrový obraz, grafické formáty

Rastrový obraz, grafické formáty Rastrový obraz, grafické formáty 1995-2010 Josef Pelikán CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ RasterFormats Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 1 / 35 Snímání

Více

Reprodukce obrazových předloh

Reprodukce obrazových předloh fialar@kma.zcu.cz Podpořeno z projektu FRVŠ 584/2011 Historie Reprodukční fotografie V reprodukční fotografii se používají různé postupy pro reprodukci pérovek (pouze černá a bílá) jednoduché (viz přednáška

Více

ZÁKLADY DATOVÝCH KOMUNIKACÍ

ZÁKLADY DATOVÝCH KOMUNIKACÍ ZÁKLADY DATOVÝCH KOMUNIKACÍ Komunikační kanál (přenosová cesta) vždy negativně ovlivňuje přenášený signál (elektrický, světelný, rádiový). Nejčastěji způsobuje: útlum zeslabení, tedy zmenšení amplitudy

Více

Webové stránky. 16. Obrázky na webových stránkách, optimalizace GIF. Datum vytvoření: 12. 1. 2013. str ánk y. Vytvořil: Petr Lerch. www.isspolygr.

Webové stránky. 16. Obrázky na webových stránkách, optimalizace GIF. Datum vytvoření: 12. 1. 2013. str ánk y. Vytvořil: Petr Lerch. www.isspolygr. Webové stránky 16. Vytvořil: Petr Lerch www.isspolygr.cz Datum vytvoření: 12. 1. 2013 Webové Strana: 1/6 Škola Ročník Název projektu Číslo projektu Číslo a název šablony Autor Tématická oblast Název DUM

Více

Barvy na počítači a grafické formáty

Barvy na počítači a grafické formáty Barvy na počítači a grafické formáty Hlavním atributem, který se používá při práci s obrazem či s grafickými formáty, je barva. Při práci s barvami je důležité určit základní množinu barev, se kterou budeme

Více

Souborové systémy a logická struktura dat (principy, porovnání, příklady).

Souborové systémy a logická struktura dat (principy, porovnání, příklady). $TECH 13 Str. 1/5 Souborové systémy a logická struktura dat (principy, porovnání, příklady). Vymezení základních pojmů Soubor První definice: označuje pojmenovanou posloupnost bytů uloženou na nějakém

Více

Číslo DUM: VY_32_INOVACE_04_01 Autor: Mgr. Ivana Matyášková Datum vytvoření: březen 2013 Ročník: prima Vzdělávací obor: informační technologie

Číslo DUM: VY_32_INOVACE_04_01 Autor: Mgr. Ivana Matyášková Datum vytvoření: březen 2013 Ročník: prima Vzdělávací obor: informační technologie Číslo DUM: VY_32_INOVACE_04_01 Autor: Mgr. Ivana Matyášková Datum vytvoření: březen 2013 Ročník: prima Vzdělávací obor: informační technologie Tematický celek: počítačová grafika Název projektu: Zvyšování

Více

Rastrové počítačové obrazy (poněkud sporně často označované jako bitmapové) jsou pravděpodobně nejběžnější variantou obrazů v počítači.

Rastrové počítačové obrazy (poněkud sporně často označované jako bitmapové) jsou pravděpodobně nejběžnější variantou obrazů v počítači. Ot 2. Rastrová počítačová grafika 1.1.1 Rastrové obrazy Rastrové počítačové obrazy (poněkud sporně často označované jako bitmapové) jsou pravděpodobně nejběžnější variantou obrazů v počítači. Rastrový

Více

Digitální učební materiál

Digitální učební materiál Střední hotelová škola, s.r.o. Floriánské náměstí 350, 272 01 Kladno Digitální učební materiál Číslo projektu Název projektu Název školy Předmět Tematický okruh Téma CZ.1.07/1.5.00/34.0112 Moderní škola

Více

Úvod do počítačové grafiky

Úvod do počítačové grafiky Úvod do počítačové grafiky Zpracoval: ing. Jaroslav Chlubný Počítačová grafika Počítačová grafika a digitální fotografie zaujímá v současnosti stále významnější místo v našem životě. Uveďme si jen několik

Více

POČÍTAČOVÁ GRAFIKA. Počítačová grafika 1

POČÍTAČOVÁ GRAFIKA. Počítačová grafika 1 Počítačová grafika 1 POČÍTAČOVÁ GRAFIKA Gymnázium Jiřího Wolkera v Prostějově Výukové materiály z matematiky pro nižší gymnázia Autoři projektu Student na prahu 21. století - využití ICT ve vyučování matematiky

Více

Co je počítačová grafika

Co je počítačová grafika Počítačová grafika Co je počítačová grafika Počítačovou grafikou rozumíme vše, co zpracovává počítač a co lze sledovat očima Využití počítačové grafiky Tiskoviny - časopisy, noviny, knihy, letáky Reklama

Více

Kódy a kódování dat. Binární (dvojkové) kódy. Kód Aikenův

Kódy a kódování dat. Binární (dvojkové) kódy. Kód Aikenův Kódy a kódování dat Kódování je proces, při kterém se každému znaku nebo postupnosti znaků daného souboru znaků jednoznačně přiřadí znak nebo postupnost znaků z jiného souboru znaků. Kódování je tedy transformace

Více

aneb jak se to tam všechno vejde?

aneb jak se to tam všechno vejde? 768 576 KOMPRIMACE aneb jak se to tam všechno vejde? Položme si hned na začátku zdánlivě nepodstatnou otázku: Kolik místa zabere dvouhodinový film na CD nebo DVD? Uvažujme následující příklad: rozlišení

Více

CAD II přednáška č. 5. Grafické formáty PCX GIF TIFF BMP

CAD II přednáška č. 5. Grafické formáty PCX GIF TIFF BMP PCX GIF TIFF BMP PCX vyvinuto firmou ZSoft bezztrátová komprese každý obrázek obsahuje 128 bitovou hlavičku,následují komprimovaná data nabízítři druhy komprimace podle počtu barev (16-barev, 256-barev

Více

1. Formáty grafických dat

1. Formáty grafických dat 1. Formáty grafických dat Studijní cíl Tento blok kurzu je věnován problematice grafických formátů, kompresi grafických dat a odlišností u rastrových a vektorových souborů. Doba nutná k nastudování 2 hodiny

Více

Základy práce v programovém balíku Corel

Základy práce v programovém balíku Corel Základy práce v programovém balíku Corel Mgr. Tomáš Pešina Výukový text vytvořený v rámci projektu DOPLNIT První jazyková základní škola v Praze 4, Horáčkova 1100, 140 00 Praha 4 - Krč Základy počítačové

Více

Algoritmizace prostorových úloh

Algoritmizace prostorových úloh INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Úlohy nad rastrovými daty Daniela

Více

JPEG Formát pro archivaci a zpřístupnění.

JPEG Formát pro archivaci a zpřístupnění. JPEG 2000 Formát pro archivaci a zpřístupnění Přednáška: Přednášející: Kontakt: 3. 12, 2009, AMK2009 Bedřich Vychodil bedrich.vychodil@nkp.cz JPEG2000 a očekávání Představen konsorciem Joint Photographic

Více

Porovnání obrazových souborů vzniklých digitalizací periodik a monografií

Porovnání obrazových souborů vzniklých digitalizací periodik a monografií Příloha č. 4 Porovnání obrazových souborů vzniklých digitalizací periodik a monografií Digitální dokumenty vznikají v digitalizaci NK dvojím způsobem : 1. Naskenování mikrofilmu skenerem Wicks and Wilson

Více

SOU Valašské Klobouky. VY_32_INOVACE_3_01 IKT Pc grafika základní pojmy Mgr. Radomír Soural. Zkvalitnění výuky prostřednictvím ICT

SOU Valašské Klobouky. VY_32_INOVACE_3_01 IKT Pc grafika základní pojmy Mgr. Radomír Soural. Zkvalitnění výuky prostřednictvím ICT SOU Valašské Klobouky VY_32_INOVACE_3_01 IKT Pc grafika základní pojmy Mgr. Radomír Soural Zkvalitnění výuky prostřednictvím ICT Název a číslo projektu CZ.1.07/1.5.00/34.0459 Název školy SOU Valašské Klobouky,

Více

POČÍTAČOVÁ GRAFIKA. Lenka Bednaříková

POČÍTAČOVÁ GRAFIKA. Lenka Bednaříková POČÍTAČOVÁ GRAFIKA Lenka Bednaříková POČÍTAČOVÁ GRAFIKA - OBSAH Barevné modely Základní dělení počítačové grafiky Vektorová grafika Rastrová (bitmapová) grafika Rozlišení Barevná hloubka Komprese, komprimace

Více

13 Barvy a úpravy rastrového

13 Barvy a úpravy rastrového 13 Barvy a úpravy rastrového Studijní cíl Tento blok je věnován základním metodám pro úpravu rastrového obrazu, jako je např. otočení, horizontální a vertikální překlopení. Dále budo vysvětleny různé metody

Více

Téma: Barevné modely, formáty souborů

Téma: Barevné modely, formáty souborů Téma: Barevné modely, formáty souborů Vypracoval/a: Ing. Jana Wasserbauerová TE NTO PR OJ E KT J E S POLUFINANC OVÁN EVR OPS KÝ M S OC IÁLNÍM FONDEM A STÁTNÍM ROZPOČTEM ČESKÉ REPUBLIKY. Barevné modely

Více

VY_32_INOVACE_INF4_12. Počítačová grafika. Úvod

VY_32_INOVACE_INF4_12. Počítačová grafika. Úvod VY_32_INOVACE_INF4_12 Počítačová grafika Úvod Základní rozdělení grafických formátů Rastrová grafika (bitmapová) Vektorová grafika Základním prvkem je bod (pixel). Vhodná pro zpracování digitální fotografie.

Více

IVT. 8. ročník. listopad, prosinec 2013. Autor: Mgr. Dana Kaprálová

IVT. 8. ročník. listopad, prosinec 2013. Autor: Mgr. Dana Kaprálová IVT Počítačová grafika - úvod 8. ročník listopad, prosinec 2013 Autor: Mgr. Dana Kaprálová Zpracováno v rámci projektu Krok za krokem na ZŠ Želatovská ve 21. století registrační číslo projektu: CZ.1.07/1.4.00/21.3443

Více

Informatika Počítačová grafika Mgr. Jan Jílek (v.11/12) Počítačová grafika

Informatika Počítačová grafika Mgr. Jan Jílek (v.11/12) Počítačová grafika Počítačová grafika - obor informatiky zabývající se zpracováním grafické informace (př. obrázky, videa, fotografie, informační plakáty, reklamy, konstrukční plány, návrhy, virtuální světy, hry aj.) První

Více

ZÁKLADY DATOVÝCH KOMUNIKACÍ

ZÁKLADY DATOVÝCH KOMUNIKACÍ ZÁKLADY DATOVÝCH KOMUNIKACÍ Komunikační kanál (přenosová cesta) vždy negativně ovlivňuje přenášený signál (elektrický, světelný, rádiový). Nejčastěji způsobuje: útlum zeslabení, tedy zmenšení amplitudy

Více

Videosekvence. vznik, úpravy, konverze formátů, zachytávání videa...

Videosekvence. vznik, úpravy, konverze formátů, zachytávání videa... Videosekvence vznik, úpravy, konverze formátů, zachytávání videa... VIDEOSEKVENCE (VIDEO) Sekvence obrázků rychle po sobě jdoucích (např. 60 snímků za sekundu) tak, že vznikne pro diváka iluze pohybu.

Více

Základy informatiky. 10 Počítačová grafika

Základy informatiky. 10 Počítačová grafika Základy informatiky 10 Počítačová grafika Michal Kačmařík Institut geoinformatiky, VŠB-TUO Osnova přednášky Reprezentace barev v PC Způsoby míchání barev Barevné modely Bitová hloubka Rastrová grafika

Více

DATOVÉ FORMÁTY GRAFIKY, JEJICH SPECIFIKA A MOŽNOSTI VYUŽITÍ

DATOVÉ FORMÁTY GRAFIKY, JEJICH SPECIFIKA A MOŽNOSTI VYUŽITÍ DATOVÉ FORMÁTY GRAFIKY, JEJICH SPECIFIKA A MOŽNOSTI VYUŽITÍ UMT Tomáš Zajíc, David Svoboda Typy počítačové grafiky Rastrová Vektorová Rastrová grafika Pixely Rozlišení Barevná hloubka Monitor 72 PPI Tiskárna

Více

Digitální učební materiály ve škole, registrační číslo projektu CZ.1.07/1.5.00/

Digitální učební materiály ve škole, registrační číslo projektu CZ.1.07/1.5.00/ Projekt: Příjemce: Digitální učební materiály ve škole, registrační číslo projektu CZ.1.07/1.5.00/34.0527 Střední zdravotnická škola a Vyšší odborná škola zdravotnická, Husova 3, 371 60 České Budějovice

Více

Počítačová grafika. Studijní text. Karel Novotný

Počítačová grafika. Studijní text. Karel Novotný Počítačová grafika Studijní text Karel Novotný P 1 Počítačová grafika očítačová grafika je z technického hlediska obor informatiky 1, který používá počítače k tvorbě umělých grafických objektů a dále také

Více

IVT. Grafické formáty. 8. ročník

IVT. Grafické formáty. 8. ročník IVT Grafické formáty 8. ročník listopad, prosinec 2013 Autor: Mgr. Dana Kaprálová Zpracováno v rámci projektu Krok za krokem na ZŠ Želatovská ve 21. století registrační číslo projektu: CZ.1.07/1.4.00/21.3443

Více

Komprese dat Obsah. Komprese videa. Radim Farana. Podklady pro výuku. Komprese videa a zvuku. Komprese MPEG. Komprese MP3.

Komprese dat Obsah. Komprese videa. Radim Farana. Podklady pro výuku. Komprese videa a zvuku. Komprese MPEG. Komprese MP3. Komprese dat Radim Farana Podklady pro výuku Obsah Komprese videa a zvuku. Komprese MPEG. Komprese MP3. Komprese videa Velký objem přenášených dat Typický televizní signál - běžná evropská norma pracuje

Více

Počítačová grafika a vizualizace I

Počítačová grafika a vizualizace I Počítačová grafika a vizualizace I KOMPRESE, GRAFICKÉ FORMÁTY Mgr. David Frýbert david.frybert@gmail.com OSNOVA Barva pro TV Datový tok Bitmapové formáty (JPEG, TIFF, PNG, PPM, ) Formáty videa MPEG-1,2,4,7,21

Více

Kompresní algoritmy grafiky. Jan Janoušek F11125

Kompresní algoritmy grafiky. Jan Janoušek F11125 Kompresní algoritmy grafiky Jan Janoušek F11125 K čemu je komprese dobrá? Pokud je třeba skladovat datově náročné soubory. Např. pro záznam obrazu, hudby a hlavně videa je třeba skladovat překvapivě mnoho

Více

Kosinová transformace 36ACS

Kosinová transformace 36ACS Kosinová transformace 36ACS 10. listopadu 2006 Martin BruXy Bruchanov bruxy@regnet.cz Uplatnění diskrétní kosinové transformace Úkolem transformačního kódování je převést hodnoty vzájemně závislých vzorků

Více

Kde se používá počítačová grafika

Kde se používá počítačová grafika POČÍTAČOVÁ GRAFIKA Kde se používá počítačová grafika Tiskoviny Reklama Média, televize, film Multimédia Internetové stránky 3D grafika Virtuální realita CAD / CAM projektování Hry Základní pojmy Rastrová

Více

Základní pojmy. Multimédia. Multimédia a interaktivita

Základní pojmy. Multimédia. Multimédia a interaktivita Základní pojmy Multimédia Jedná se o sloučení pohyblivého obrazu, přinejmenším v televizní kvalitě, s vysokou kvalitou zvuku a počítačem, jako řídícím systémem. Jako multimediální systém se označuje souhrn

Více

b) červená, zelená, modrá, c) černá, bílá, d) černá, bílá, šedá. 5. PNG je formát: a) textový,

b) červená, zelená, modrá, c) černá, bílá, d) černá, bílá, šedá. 5. PNG je formát: a) textový, Opravil: Kontroloval: Přijímací zkouška xx_xx_xxxx_v1 (INF komb. st.) Identifikační údaje: 1. Mezi znakové sady nepatří: a) Windows CP 1250, b) ISO 8859-14, c) Unicode, UTF-13. 2. Unicode používá k reprezentaci

Více

5.15 INFORMATIKA A VÝPOČETNÍ TECHNIKA

5.15 INFORMATIKA A VÝPOČETNÍ TECHNIKA 5.15 INFORMATIKA A VÝPOČETNÍ TECHNIKA 5. 15. 1 Charakteristika předmětu A. Obsahové vymezení: IVT se na naší škole vyučuje od tercie, kdy je cílem zvládnutí základů hardwaru, softwaru a operačního systému,

Více

Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy

Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy Lukáš Havrlant Univerzita Palackého 10. ledna 2014 Primární zdroj Jiří Adámek: Foundations of Coding. Strany 137 160. Na webu ke stažení, heslo:

Více

Rastrové grafické formáty. Václav Krajíček KSVI MFF UK, 2007

Rastrové grafické formáty. Václav Krajíček KSVI MFF UK, 2007 Rastrové grafické formáty Václav Krajíček KSVI MFF UK, 2007 Grafické formáty Velké množství Mnoho různých požadavků na uložená data neobrazová data Nativní formáty Například: PSP (Photoshop), XFC (Gimp)

Více

VIDEO DATOVÉ FORMÁTY, JEJICH SPECIFIKACE A MOŽNOSTI VYUŽITÍ SMOLOVÁ BÁRA

VIDEO DATOVÉ FORMÁTY, JEJICH SPECIFIKACE A MOŽNOSTI VYUŽITÍ SMOLOVÁ BÁRA VIDEO DATOVÉ FORMÁTY, JEJICH SPECIFIKACE A MOŽNOSTI VYUŽITÍ SMOLOVÁ BÁRA 18.12.2017 OBSAH VLASTNOSTI VIDEA Snímková frekvence Rozlišení Prokládání Poměr stran Komprese Datový tok ANALOGOVÉ FORMÁTY KONTEJNERY

Více

GRAFICKÉ FORMÁTY V BITMAPOVÉ GRAFICE

GRAFICKÉ FORMÁTY V BITMAPOVÉ GRAFICE GRAFICKÉ FORMÁTY V BITMAPOVÉ GRAFICE U057 Zoner Photo Studio editace fotografie 2 BAREVNÁ HLOUBKA pixel základní jednotka obrazu bit: ve výpočetní technice nejmenší jednotka informace hodnota 0 nebo 1

Více

KRY. Projekt č. 2. Kamil Dudka xdudka00

KRY. Projekt č. 2. Kamil Dudka xdudka00 KRY Projekt č. 2 Kamil Dudka xdudka00 1 Úvod Úkolem bylo vytvořit program, který do určeného obrázku umí schovat text a tento text z obrázku později vytáhnout. Schovaný text měl být zabezpečený pomocí

Více

Barvy v digitální fotografii. Jaroslav Svoboda

Barvy v digitální fotografii. Jaroslav Svoboda Barvy v digitální fotografii Jaroslav Svoboda Co je fotografie? Stroj času Trošku víc fyzikálně a bez sci-fi Záznam odrazu světla v určitém časovém intervalu Můžeme zaznamenat nejen intenzitu, ale i vlnovou

Více

Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost Projekt je realizován v rámci Operačního programu Vzdělávání pro konkurence

Více

Základy informatiky část 10

Základy informatiky část 10 Základy informatiky část 10 Ing. Vladimír Beneš vedoucí K-101 MSIT 4. patro, místnost č. 414 e-mail: vbenes@bivs.cz Ing. Bohuslav Růžička, CSc. tajemník K-108 MSIT 2. patro, místnost č. 215 e-mail: bruzicka@bivs.cz

Více

Digitální audio zde se vysvětluje princip digitalizace zvukového záznamu, způsoby komprese uložení ztrátové a bezztrátové, obvyklé formáty atd.

Digitální audio zde se vysvětluje princip digitalizace zvukového záznamu, způsoby komprese uložení ztrátové a bezztrátové, obvyklé formáty atd. Monitorovací indikátor: 06.43.10 Počet nově vytvořených/inovovaných produktů Akce: Přednáška, KA 5 Číslo přednášky: 33 Téma: DIGITÁLNÍ OBSAH A DIGITALIZACE Lektor: Ing. Michal Beránek Třída/y: 2ME Datum

Více

Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost Registrační číslo projektu: CZ.1.07/1.5.00/34.0553 Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost Projekt je realizován v rámci Operačního programu Vzdělávání pro konkurence

Více

IVT. Rastrová grafika. 8. ročník

IVT. Rastrová grafika. 8. ročník IVT Rastrová grafika 8. ročník listopad, prosinec 2013 Autor: Mgr. Dana Kaprálová Zpracováno v rámci projektu Krok za krokem na ZŠ Želatovská ve 21. století registrační číslo projektu: CZ.1.07/1.4.00/21.3443

Více

Kde se používá počítačová grafika (PG)?

Kde se používá počítačová grafika (PG)? Počítačová grafika Kde se používá počítačová grafika (PG)? Tiskoviny - časopisy, noviny, letáky Reklama billboardy, propagační mat., reklamní spoty Média, televize, film titulky, efekty, triky Multimédia

Více

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávání v informačních a komunikačních technologií

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/34.0333 Vzdělávání v informačních a komunikačních technologií VY_32_INOVACE_31_18 Škola Název projektu, reg. č. Vzdělávací oblast Vzdělávací obor Tematický okruh Téma Tematická oblast Název Autor Vytvořeno, pro obor, ročník Anotace Přínos/cílové kompetence Střední

Více

DOKUMENTACE A MANUÁLY

DOKUMENTACE A MANUÁLY Střední průmyslová škola na Proseku Novoborská 2, 190 00 Praha 9 DOKUMENTACE A MANUÁLY - elektronické dokumenty - archivace dokumentů - dokumentace k software + CASE systémy - další druhy dokumentace (manuály,

Více

Systémy digitálního vodotisku. Digital Watermarking Systems

Systémy digitálního vodotisku. Digital Watermarking Systems Systémy digitálního vodotisku Digital Watermarking Systems Simona PEJSAROVÁ Česká zemědělská univerzita v Praze, Provozně ekonomická fakulta Katedra informačních technologií Kamýcká 129, Praha 6, Česká

Více

Počítačová grafika - úvod

Počítačová grafika - úvod Autor: Mgr. Dana Kaprálová Počítačová grafika - úvod Datum (období) tvorby: listopad, prosinec 2013 Ročník: osmý Vzdělávací oblast: IVT 1 Anotace: Žáci se seznámí se základními pojmy počítačové grafiky,

Více

VY_32_INOVACE_INF.19. Inkscape, GIMP, Blender

VY_32_INOVACE_INF.19. Inkscape, GIMP, Blender VY_32_INOVACE_INF.19 Inkscape, GIMP, Blender Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Jiří Kalous Základní a mateřská škola Bělá nad Radbuzou, 2011 INKSCAPE Inkscape je open source

Více

BPC2E_C09 Model komunikačního systému v Matlabu

BPC2E_C09 Model komunikačního systému v Matlabu BPCE_C9 Model komunikačního systému v Matlabu Cílem cvičení je vyzkoušet si sestavit skripty v Matlabu pro model jednoduchého komunikačního systému pro přenos obrázků. Úloha A. Sestavte model komunikačního

Více

Obsah. Úvodem 9 Kapitola 1 Jaký počítač a jaký systém? 11. Kapitola 2 Obrázky a fotografie 21

Obsah. Úvodem 9 Kapitola 1 Jaký počítač a jaký systém? 11. Kapitola 2 Obrázky a fotografie 21 Obsah Úvodem 9 Kapitola 1 Jaký počítač a jaký systém? 11 Potřebné parametry počítače pro práci s multimédii 12 Stručně pro každého 12 Podrobněji pro zájemce o techniku 12 Jak ověřit kvalitu svého počítače

Více

INFORMATIKA. Grafické studio ve škole

INFORMATIKA. Grafické studio ve škole INFORMATIKA Grafické studio ve škole LUKÁŠ RACHŮNEK Přírodovědecká fakulta UP, Olomouc V současné době školy všech typů často potřebují grafické práce. Jedná se například o prezentaci školy ve formě brožur,

Více

Kódováni dat. Kódy používané pro strojové operace

Kódováni dat. Kódy používané pro strojové operace Kódováni dat Před zpracováním dat například v počítači je třeba znaky převést do tvaru, kterému počítač rozumí, tj. přiřadit jim určité kombinace bitů. Tomuto převodu se říká kódování. Kód je předpis pro

Více

Číslo a název šablony III/2 Inovace a zkvalitnění výuky prostřednictvím ICT. Popis výukového materiálu Soubory, typy souborů, komprimace

Číslo a název šablony III/2 Inovace a zkvalitnění výuky prostřednictvím ICT. Popis výukového materiálu Soubory, typy souborů, komprimace Číslo projektu školy Číslo a název šablony klíčové aktivity Číslo materiálu CZ.1.07/1.5.00/34.0963 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT VY_32_INOVACE_ICT_II_S1_05 Popis výukového materiálu

Více

Kurz digitální fotografie. blok 1 data/úpravy fotografií

Kurz digitální fotografie. blok 1 data/úpravy fotografií Kurz digitální fotografie blok 1 data/úpravy fotografií Grafické soubory Grafické soubory Obsahují grafická (obrazová) data, která mohou být uložena různými způsoby, tedy formou různých grafických formátů.

Více

Světlo, které vnímáme, představuje viditelnou část elektromagnetického spektra. V

Světlo, které vnímáme, představuje viditelnou část elektromagnetického spektra. V Kapitola 2 Barvy, barvy, barvičky 2.1 Vnímání barev Světlo, které vnímáme, představuje viditelnou část elektromagnetického spektra. V něm se vyskytují všechny známé druhy záření, např. gama záření či infračervené

Více

Základní práce v souborovém manažeru

Základní práce v souborovém manažeru Základní práce v souborovém manažeru 18-20-M/01 Informační technologie Základní pojmy a prostředky pro programování webových stránek Zvládnutí nástrojů typických pro programování webových aplikací Základní

Více

Převody datových formátů

Převody datových formátů Převody datových formátů Cíl kapitoly: Žák popíše data používaná v informatice, jejich rozdělení, používané formáty souborů a jejich přípony, vysvětlí převody formátů. Klíčové pojmy: Data Typ souboru (formát

Více

Moderní multimediální elektronika (U3V)

Moderní multimediální elektronika (U3V) Moderní multimediální elektronika (U3V) Prezentace č. 7 Digitální fotografie a digitální fotoaparáty Ing. Tomáš Kratochvíl, Ph.D. Ústav radioelektroniky, FEKT VUT v Brně Program prezentace Digitální fotografie

Více

1. ZÁKLADNÍ POJMY POČÍTAČOVÉ GRAFIKY

1. ZÁKLADNÍ POJMY POČÍTAČOVÉ GRAFIKY 1. ZÁKLADNÍ POJMY POČÍTAČOVÉ GRAFIKY Pixel: je zkratka anglického PICture Element, tedy obrazový bod. Velikost obrázku: na monitoru v obrazových bodech - počet obrazových bodů, ze kterých je obrázek sestaven

Více

Automatická detekce anomálií při geofyzikálním průzkumu. Lenka Kosková Třísková NTI TUL Doktorandský seminář, 8. 6. 2011

Automatická detekce anomálií při geofyzikálním průzkumu. Lenka Kosková Třísková NTI TUL Doktorandský seminář, 8. 6. 2011 Automatická detekce anomálií při geofyzikálním průzkumu Lenka Kosková Třísková NTI TUL Doktorandský seminář, 8. 6. 2011 Cíle doktorandské práce Seminář 10. 11. 2010 Najít, implementovat, ověřit a do praxe

Více

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT EU-OVK-VZ-III/2-ZÁ-315

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT EU-OVK-VZ-III/2-ZÁ-315 Číslo a název šablony Číslo didaktického materiálu Druh didaktického materiálu Autor Jazyk Téma sady didaktických materiálů Téma didaktického materiálu Vyučovací předmět Cílová skupina (ročník) Úroveň

Více

P o w e r P o i n t 2 0 0 7

P o w e r P o i n t 2 0 0 7 4. Karta Domů Obsahuje skupiny příkazů, z nichž každá umožňuje zpracovat jednu ucelenou tematickou oblast úkolů: 1. Schránka 2. Snímky 3. Písmo 4. Odstavec 5. Kreslení 6. Úpravy 4.1. Schránka Text či objekt,

Více

VY_32_INOVACE_E 15 03

VY_32_INOVACE_E 15 03 Název a adresa školy: Střední škola průmyslová a umělecká, Opava, příspěvková organizace, Praskova 399/8, Opava, 746 01 Název operačního programu: OP Vzdělávání pro konkurenceschopnost, oblast podpory

Více

schopni vysvětlit, co znamená protokol NFS a k čemu se používá; umět rozpoznat autorské dílo a znát autorská práva;

schopni vysvětlit, co znamená protokol NFS a k čemu se používá; umět rozpoznat autorské dílo a znát autorská práva; POKYNY KE STUDIU 1 Rozšiřující data na Internetu Pracovní materiály Doprovodné obrázky a videa na Internetu Rejstřík pojmů 7 SDÍLENÍ DAT Čas ke studiu: 1,5 hodiny Cíl: Po prostudování této kapitoly budete:

Více

Komprese obrazu. Michal Bujalka, Ondrej Kováč. Gymnázium Botičská. Botičská 1, Praha 2

Komprese obrazu. Michal Bujalka, Ondrej Kováč. Gymnázium Botičská. Botičská 1, Praha 2 Středoškolská technika 2013 Setkání a prezentace prací středoškolských studentů na ČVUT Komprese obrazu Michal Bujalka, Ondrej Kováč Gymnázium Botičská Botičská 1, Praha 2 1 Obsah Úvod... 3 Přehled literatury...

Více

Multimediální prezentace MS PowerPoint I

Multimediální prezentace MS PowerPoint I Multimediální prezentace MS PowerPoint I Informatika Multimediální prezentace zažívají v poslední době obrovský rozmach. Jsou používány například k reklamním účelům, k předvedení výrobků či služeb. Velmi

Více

Barvy a barevné modely. Počítačová grafika

Barvy a barevné modely. Počítačová grafika Barvy a barevné modely Počítačová grafika Barvy Barva základní atribut pro definici obrazu u každého bodu, křivky či výplně se definuje barva v rastrové i vektorové grafice všechny barvy, se kterými počítač

Více

Rastová a vektorová grafika

Rastová a vektorová grafika Rastová a vektorová grafika Ke zlepšení vzhledu dokumentů aplikace Microsoft Word můžete použít dva základní typy grafiky: vektorovou (Nakreslený objekt: Libovolná nakreslená nebo vložená grafika, kterou

Více