You are here: TUTWiki>Tietoturva/Tutkielmat>TalvitieT?>2005-19
Mikko Hilpinen:

Steganografia

Johdanto

Työssä tarkastellaan steganografiaa ja sitä läheisesti muistuttavia tekniikoita, digitaalista vesileimausta ja sormenjälkeä. Nämä kaikki lasketaan tässä työssä kuuluvan termin steganografia alle, vaikka yleisesti onkin kiistelty, onko näin. Vesileimaus ja sormenjälki lasketaan tässä siis yläkäsitteen steganografia alahaaroiksi. Näiden alahaarojen ero on se, että vesileimassa tiedon mukana kulkee merkintä tiedon omistajasta, sormenjäljessä on mukana tiedon yksilöivä tunniste. Työssä siis laajennetaan vesileimaus koko steganografian alueelle. (SemTyo04)

Yleisesti sanottuna ideana on piilokirjoitus, joka on salattuna muun sanoman joukossa. Erona kryptografiaan on siis se, että koko piilotekstin olemassaolo yritetään salata. Perinteisiä steganografian keinoja ovat olleet mm. mikropistetekniikka ja näkymätön muste. Digitaalisen aikakauden myötä steganografia on saanut uuden merkityksen. Nykyään sitä tarvitaan esimerkiksi tekijänoikeuksien puolustamisen kehittämiseen digitaalisissa äänitallenteissa. Steganografialla on myös pahempi puolensa; rikollisuuden pelätään ottavan alan keinot käyttöönsä. (SemTyo04)(Essee97)

Työssä annetaan pohjustus steganografian käytöstä eri osa-alueilla ja tarkastellaan osoitteesta http://www.infosec-technologies.com/covert.htm löytyvästä listasta steganografian sovellusohjelmaa Windows-ympäristössä. Harjoitustyössä ei tutkita perinteisiin menetelmiin, kuten paperiin, liittyvää vesileimausta.

Steganografia

Steganografia tarkoittaa siis tietotekniikassa viestin piilottamisessa muun kohteen sekaan. Tietoa voidaan piilottaa tekstitiedostoihin, äänitiedostoihin, kuvatiedostoihin ja digitaaliseen kuvaan. Piilotetun tiedon määrä peiteobjektissa voi olla suurikin, tosin itse peiteobjektin koko määrää piilotettavan objektin koon.(Essee97)

Avaimella tai ilman

Viesti voidaan piilottaa peiteobjektiin kahdella tavalla, steganoavaimen avulla tai ilman. Ilman avainta piilotettu viesti saadaan takaisin stegano-objektista alkuperäisen peiteobjektin avulla. Avaimella piilotettu viesti saadaan puolestaan takaisin näkyviin samaisen avaimen avulla.

Piiloviesti sisällytetään objektiin joko steganoavaimen kanssa tai ilman. Jos käytetään avainta, saadaan piiloviesti selville objektista vain kyseisen avaimen avulla. Jos taas viesti piilotetaan ilman avainta, saadaan piiloviesti takaisin vain alkuperäisen objektin avulla. Avaimien käyttöön liittyy avaimenhallinta, jossa ongelmana on avauskoodien siirtäminen muille luotetuille osapuolille siten, ettei kukaan epäluotettava taho saa koodeja haltuunsa. Tähän apuna on käytetty julkisen avaimen salausmenetelmiä, kuten RSA:ta. (SemTyo04),(VSiivola00)

Lailliset ja laittomat käyttökohteet

Kuten aiemmin todettu, eräs oleellinen käyttökohde digitaaliselle vesileimaukselle on tekijänoikeuksien suojaaminen. Tekijänoikeudet voidaan sisällyttää särkyvästi tai robustisesti. Särkyvässä merkinnässä kohteen eheys rikkoontuu, jos kohdetta yritetään muuttaa liikaa. Tästä voidaan siis päätellä mahdollinen kohteen sormeilu. Robustiset (kovat, kestävät) merkinnät eivät muutu kohdetta muutettaessa. Tekijänoikeus voi olla mukana kaikille näkyvänä tai täysin piilossa. (TTMat05)

Olennainen esimerkki digitaalisesta sormenjäljestä on piiloviesti, joka voidaan sisällyttää digitaaliseen äänitallenteeseen, kuvaan ja videoon. Piiloviestin sisältö voi olla vaikkapa tuotteen sarjanumero ja sillä myös voidaan osoittaa, onko tuotetta muokattu alkuperäisestä. Keino on hyödyllinen mm. piratismia vastaan käydyssä taistelussa. Digitaalisella sormenjäljellä voidaan osoittaa tuotteen ostaja ja osoittaa ostajan tuotetta kohtaan tekemä mahdollinen väärinkäytös.

Myös sotateollisuus on käyttänyt steganografiaa hyväkseen jo pitkään ja on edelleen kiinnostunut alan kehittämisestä omassa käytössään. Toisen maailmansodan aikaisesta analogisesta steganografiasta on siirrytty digitaaliseen aikaan, ja kiinnostuksen kohteina on esimerkiksi ollut piilottaa todellinen lähetys taustakohinan sekaan sekä salaiset lähetteet julkisten seassa. Steganografiaa on käytetty viime aikoina ydinaseiden rajoitussopimusten valvonnassa.(essee97)(HHiet01)

Koska viranomaiset pystyvät nykyään tehokkaasti salakuuntelemaan ja valvomaan viestivälineitä (puhelin, sähköposti, internet), pelätään, että rikolliset, kuten terroristit ja huumekauppiaat, alkavat omalla tavalla hyödyntämään steganografiaa.(Essee97)

Steganografia digitaalisessa tekstissä

Tekstiin kohdistuva steganografia on vanhin piiloviestimisen muoto, mutta silti sitä käytetään nykyäänkin paljon sähköisten dokumenttien levitessä internetissä. Viestin piilottaminen tekstiin on myös steganografian hankalin muoto. Digitaalisessa kuvassa on ihmisen kannalta paljon ylimääräistä informaatiota, jonka voi korvata piiloviestillä, mutta tekstissä näin ei ole. Tekstistä ihmisen on myös helpoin huomata, jos siihen on tehty jotain muutoksia. Näitä muutoksia eli piiloviestin sisällytysmenetelmiä tekstiin on mm. syntaksiset ja semanttiset menetelmät. Syntaksisissa menetelmissä muutetaan tekstin rakennetta, kuitenkin kielioppisääntöjen mukaisesti. Semanttisissa menetelmissä luodaan sanojen synonyymeja ja -listoja, ja näillä on jokin jatkomerkitys, esimerkiksi bitti 0 tai 1. (SemTyo04)

Esimerkki steganografiasta tekstissä

Steganografia digitaalisessa kuvassa

Digitaalinen kuva muodostuu pikseleistä. Jokaisen pikselin väriarvo koostuu kolmen värin yhdistelmästä; punaisesta, vihreästä ja sinisestä. Väriarvo esitetään aina tietyllä bittimäärällä, esimerkiksi 24-bittisenä. Tästä esimerkkinä mainittakoon täysin musta pikseli, joka olisi siis 24-bittisenä esityksenä 00000000 00000000 00000000. Kuvatiedoston koko määräytyy käytetyn bittimäärän mukaan. Tähän perustuu myös piilotiedon sisällyttäminen, kun käytetään hyväksi ihmissilmän havainnoinnin heikkouksien suomia mahdollisuuksia. Piilotettava viesti sijoitetaan em. bittiesityksen tiettyihin bitteihin, esimerkiksi tavujen vähiten merkitseviin bitteihin. Näin muutos ei kuitenkaan vaikuta niin ratkaisevasti itse kuvan laatuun, että ihmissilmä sen huomaisi. Yleisimmät digitaaliseen kuvaan tehtävät steganografiset menetelmät ovat edellä kuvattu bittien korvaaminen, samaan ideaan perustuva maskaus ja filteröinti sekä muunnoskoodaukseen perustuvat menetelmät, jossa käytetään signaalinkäsittelyn menetelmiä, kuten diskreettiä kosinimuunnosta. (SemTyo04)

Stegano.exe (Windows XP)

Stegano.exe on Mikrobitti-lehden internet-sivuilta (MB02) otettu kevyt ilmaisohjelma tekstin piilottamiseen .bmp-muotoiseen kuvaan. Steganogrammin voi myös kryptata itse luotavalla avaimella. Alaolevassa linkissä ohjelma tarkemmin.

Stegano.exe

Steganografia digitaalisessa äänitallenteessa

Ihmisen korvan ominaisuudet tuntien voidaan tietyin keinoin myös ääneen piilottaa sellaisia viestejä, että korva ei niitä kuule. Keinoja äänitallenteiden steganografiassa on laajan taajuusalueen käyttö, vaihekoodaus, vähiten merkitsevien bittien koodaus ja datan piiloittaminen luomalla alkuperäiselle signaalille kaikusignaali.

Laajan taajuusalueen menetelmässä piilotettava data levitetään niin laajalle koko datan taajuusalueelle kuin mahdollista. Tällöin signaaliin ei aiheudu merkittävää muutosta eikä piilodata täten erotu selvästi.

Vaihekoodauksessa piiloviesti lisätään taajuuskomponenttien vaihekulmaa muuttamalla. Ihmisen kuulo ei erota absoluuttisia vaihearvoja, vaan pelkästään vaiheen muutoksia. Vaihekoodaus on yksi tehokkaimmista menetelmistä, jos verrataan piilotetun datan määrää havaittuun virheeseen.

Vähiten merkitsevien bittien koodaus on helpoin tapa lisätä piilodataa äänisignaaliin. Menetelmä aiheuttaa kuitenkin havaittavia häiriöitä äänisignaaliin ja piilotettu data on herkkä muutoksille muokattaessa ja siirrettäessä signaalia.

Kun luodaan alkuperäiselle signaalille kaikusignaali, datan piiloittaminen tapahtuu muokkaamalla kaikua kuvaavia parametrejä. Ihminen ei havaitse kaikua, kun alkuperäisen ja kaiutetun signaalin välinen aika on on tarpeeksi pieni, esimerkiksi n. 1 ms. (SemTyo04)

Tekstin piilottaminen äänitiedostoon

Muut keinot

Keinoja piilottaa viesti muun datan sekaan on monia, mutta mainittakoon muutamia helppokäyttöisempiä peiteobjektityyppejä, esimerkiksi videosignaali ja protokollat. Videosignaaliin voidaan piilottaa yksittäisiä kuvia tehokkaammin, kun otetaan mukaan lisäulottuvuutena aika. Protokollista esimerkiksi TCP-protokollan header-osassa on kuusi määrittelemätöntä bittiä, tosin näihin bitteihin piilottamisen onnistuminen edellyttää, ettei paketteja erikseen tutkita. (SemTyo04)

Vastatoimia

Stegoanalyysillä pyritään löytämään piilokirjoitettuja viestejä. Steganografia ja stegoanalyysi suhtautuvat toisiinsa kuten kryptografia ja kyrptoanalyysi toisiinsa.

Stegonanalyysissä on lisävaikeutena se, että viestien olemassaolosta ei ole varmuutta. Lähtökohtana voi siis olla suuri määrä digitaalisia tiedostoja, joissa saattaa olla piilokirjoitusta mutta saattaa olla olemattakin. Triviaali tapaus olisi vertailla epäiltyä piilokirjoitusta sisältävää tiedostoa ja täsmälleen samaa, mutta alkuperäistä "puhdasta" tiedostoa, jolloin ainakin muuntelu paljastuisi, mutta tätä keinoa tuskin on useinkaan käytettävissä.

Stegoanalyysi perustuu osittain tilastollisiin analyyseihin. Jos saadaan epäiltyjen, tutkittavien tiedostojen lisäksi mahdollisimman samanlaisia vertailutiedostoja (esimerkiksi samanlaisella kameralla otettuja kuvia), voidaan etsiä piilokirjoitukselle tyypillisiä vääristymiä. Hyvät steganografiset menetelmät kuitenkin yrittävät piilottaa viestin mahdollisimman satunnaiseksi.

Viestin kryptografinen salaus ennen steganografista piilottamista vaikeuttaa stegoanalyysiä. Salattu viesti muistuttaa satunnaista bittikohinaa enemmän kuin merkityksellinen viesti, joten salattu piilokirjoitus on vaikeampi paljastaa. Luonnollisesti paljastumisen jälkeenkin ongelmana olisi vielä salauksen purku viestin sisällön selvittämiseksi.

(Steganalysis09)

Lähteet

-- HannuSimonen? - 05 Oct 2009
Print version |  PDF  | History: r8 < r7 < r6 < r5 | 
Topic revision: r8 - 17 Nov 2009 - 08:16:50 - HannuSimonen?
 

TUTWiki

Copyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TUTWiki? Send feedback