Tik-76.115 Käyttöohje

Stegano

http://
Viimeksi päivitetty .

Sisällysluettelo

1. Johdanto
2. Järjestelmän käyttöönotto
3. Toiminnot
4. Ongelmatilanteet
5. Kirjallisuusviitteet
6. Sanasto
7. Hakemisto

1. Johdanto

Tämä käyttöohje käsittelee viimeistä prototyyppiversiota proto27.

1.1 Sovellusalueen kuvaus

Steganograafisen systeemin ympäristö on kuvattu kuvassa 1. Lähettäjällä (sender) on jokin salainen viesti (secret message), jonka hän haluaa lähettää vastaanoottajalle (receiver) jotakin turvatonta kanavaa (insecure channel) esimerkiksi internetiä pitkin. Paitsi että lähettäjä ei tahdo kenenkään saavan tietää salaisen viestin sisältöä (tämän takaamiseksi riittäisi pelkästään viestin salaaminen jollain vahvoja kryptografisia algoritmejä käyttävällä ohjelmalla, kuten PGP:llä), vaan hän tahtoo ettei kukaan edes tiedä salaisen viestin olemassaolosta. Viestien huomaamatonta lähetystä varten salainen viesti kätketään johonkin viattomaan peitetiedostoon (cover file), kuten esimerkiksi digitoituun kuvaan.

Yleiskuva systeemistä
Kuva 1: Steganograafisen systeemin ympäristö

Stegano on tiedon kätkemisen ja purkamisen suorittava ohjelmisto. Ohjelmisto soveltaa valittavia algoritmejä salaiseen viestiin ja peiteviestiin salaisen avaimen avulla tuottaen tuloksena kätköviestin. Ohjelmisto ilmenee kuvassa 1 laatikoina Hiding ja Extracting.

1.2 Työryhmän yhteystiedot

Ongelmatapauksissa voi ottaa yhteyttä kehen tahansa ryhmän jäsenistä, mieluiten siihen jonka "rooli" projektin parissa on lähimpänä ongelma-aluetta.

Tommi Liittokivi

Tommi Junttila

Vesa Peltola

Lasse Huovinen

Tuomas Aura

2. Järjestelmän käyttöönotto

Järjestelmä koostuu kirjastosta, ja sen päälle rakennetusta kahdesta käyttöliittymästä.

Kirjaston kofigurointi

Ennen kirjaston kääntämistä se on konfiguroitava käyttöjärjestelmä kohtaisesti. Kirjasto koostuu kahdesta osasta, steganografisesta ja kryptografisesta kirjastosta.

Unix-käyttöliittymän asennus

1.Tarkasta että Makefile:ssa on oikea polku Crypto-kirjaston hakemistoon.

2.Konfiguroi Crypto-kirjasto ja JPEG-kirjasto käyttöjärjestelmällesi edellämainittujen ohjeiden mukaisesti.

3.Käännä kirjastot ja käyttöliittymä 'make' komennolla.

Windows-käyttöliittymän asennus

Ohjelma toimii laitteissa johon on asennettu windows 95/NT -käyttöjärjestelmä. Ohjelmistoon pitäisi kuulua seuraavat tiedostot:
stegano.exe - ajettava ohjelma
stegano.hlp - online help
stegano.cnt
Mfc40.dll
mfc40d.dll
msvcr40d.dll
msvcrt40.dll

Kun tiedostot ovat samassa hakemistossa voi ohjelman käynnistää komennolla stegano.exe. Tiedostot *.dll kannattaa siirtää windowsin system-hakemistoon sillä muutkin visual c++ 4.0:lla tehdyt ohjelmat todennäköisesti käyttävät niitä. Jos tiedostot löytyvät jo windowsin system-hakemistosta, voi ne poistaa stegano-ohjelman hakemistosta.

3. Toiminnot

3.1 Unix-käyttöliittymä

Unix-käyttöliittymän toiminnot on kuvattu sen manuaalisivussa:
NAME
   stegano - hide/extract messages in/from image files

SYNOPSIS
   stegano -h [-v] [-q] [-f msgfile] [-r selector] [-c compression algorithm]
           [-s encryption algorithm] key coverfile stegofile
   stegano -e [-v] [-t] [-r selector] [-s encryption algorithm] key stegofile
   stegano coverfile

DESCRIPTION
   Stegano is a steganography program that hides files in images.
   A secret key is used to hide the data into a cover file, extracting
   (or detecting that there is any data hidden) is not possible without
   the correct key.
   It's possible to select which compression, encryption and selection
   algorithms program will use. You can see the list of algorithms a
   cover file supports by typing 'stegano coverfile'.

FLAGS

-h  Encrypt and hide a file into the cover file.

-e  Extract and decrypt a file hidden in the cover file.

-v  Verbose mode, displays more detailed information.

-q  Doesn't display hiding statistics.

-t  Shows the original name and lenght of the hidden message.

-f msgfile
    Read the data from file 'msgfile' instead of standard input.

-s ea
    Choose encryption algorithm. 'ea' is the name of the used algorithm.
    If you don't use this option when extracting, Stegano will try
    to decrypt file with every possible encryption algorithm. It's
    not necessary to type the full name of the algorithm.

-c ca
    Choose compression algorithm. 'ca' is the name of the used algorithm.
    This option is not used when extracting the message. It's not necessary
    to type the full name of the algorithm.

-r sa
    Choose selector algorithm. 'sa' is the name of the used algorithm.
    It's not necessary to type the full name of the algorithm.


Parametrit

key
    The secret key which is used hiding/extracting the message in/from
    the cover file.

coverfile
    The name of the cover file where the message will be hidden.

stegofile
    The name of the cover file which includes the hidden message.

3.2 Windows-käyttöliittymä

3.2.1 Kätkentä

Kätkennän voit valita joko suoraan paineesta tai valitsemalla "hide" action-alasvetovalikosta. Valinnan tehtyäsi avautuu seuraavan kuvan kaltainen ikkuna.

Peitetiedoston valinta
KUVA 2: Peitetiedoston valinta hide-toiminnossa

Tässä valitaan peitetiedosto johon kuva kätketään. Peitetiedosto voi olla tyyppiä PGM, GIF tai JPEG. Valittuasi peitetiedoston avautuu kuvan kolme kaltainen ikkuna. Jos ohjelman asetuksiin on määritelty kyseessä olevalle peitetiedostoformaatille sovellus, jolla tulostetaan peitetiedosto näytölle, käynnistyy myös tämä sovellus. (Ks. luku 3.2.3 Asetukset)

Viestin piilotus
KUVA 3: Viestin kätkentä

Tekstilaatikkoon voit syöttää piilotettavan viestin. Jos haluat piilottaa peitetiedostoon olemassa olevan tiedoston, valitse "Use message file"-kohta ja syötä tiedoston nimi. Voit myös valita piilotettavan tiedoston "browse"-aputoiminnon avulla.
Kirjoita kohdetiedoston nimi kohtaan "destination file". Oletusarvona on peitetiedoston nimi, jolloin siis kirjoitetaan alkuperäisen tiedoston päälle. Ohjelma tunnistaa automaattisesti peitetiedostoon sopivat algoritmit. Näistä voit valita haluamasi algoritmit, tai käyttää valmiina näkyviä oletusarvoisia algoritmeja.
Ennen viestin kätkentää on vielä syötettävä avain. Viesti löytyy peitetiedostosta vain samalla avaimella, joten kannattaa varmistaa että avain on muistissa ennenkuin sulkee ikkunan. Nyt voit yrittää suorittaa kätkennän painamalla hide-painiketta. Kätkentä saattaa kestää jonkun aikaa, hitaalla koneella jopa useita minuutteja, odota kunnes ohjelma ilmoittaa kätkennän onnistumisesta tai epäonnistumisesta.
Kätkennän onnistuessa peitetiedosto, johon viesti on kätketty, tulostetaan näytölle, jos asetuksissa näin on valittu. (Ks. luku 3.2.3 Asetukset)

3.2.2 Purku

Purkamisen voit valita vastaavalla tavalla kuin kätkemisenkin, eli joko suoraan painikkeesta tai valitsemalla "extract" action-alasvetovalikosta. Valinnan tehtyäsi aukeaa kuvan 2 kaltainen ikkuna jossa valitaan peitetedosto josta piilotettua viestiä yritetään purkaa. Peitetiedoston valittuasi aukeaa kuvan 4 kaltainen ikkuna. Peitetiedoston sisältämä kuva tulostetaan näytölle, jos asetuksissa näin on valittu. (Ks. luku 3.2.3 Asetukset)

Viestin purkaminen
KUVA 4: Viestin purkaminen

Voit antaa ohjelman yrittää purkamista kaikilla algoritmikombinaatioilla tai voit itse valita algoritmit jolla purku yritetään suorittaa. Syötettyäsi avaimen ja paina extract-painiketta. Jos avain ja algoritmit olivat oikein, tulostetuu löydetty viesti ikkunan alalaidassa olevaan laatikkoon. Jos viestinä oli käytetty tiedostoa, ohjelma kysyy millä nimellä tiedosto talletetaan.

3.2.3 Asetukset

Valitsemalla toiminto "settings" action-alasvetovalikosta avautuu seuraavan kuvan kaltainen ikkuna, jossa voit määritellä kullekin peitetiedostoformaatille sovelluksen, jonka avulla peitetiedoston sisältämää kuvaa voidaan tarkastella.

Viestin piilotus
KUVA 5: Asetusten tekeminen

Aloita asetusten muuttaminen valitsemalla "cover file type"-kohtaan se peitetiedostoformaatti, jonka asetuksia haluat muuttaa. Kun olet valinnut peitetiedostoformaatin, muuttuvat ikkunan muut kohdat vastaamaan valitun formaatin tämän hetkisiä asetuksia.

Kullekin formaatille voit määritellä sovellusohjelman, jota käytetään tulostamaan kyseisellä formaatilla tallennettuja kuvia. Sovellukseksi voit valita jonkun seuraavista kolmesta mahdollisuuksista:

Sekä assosioitu sovellus että itse määritelty sovellus tulee olla sellaisia, että ne näyttävät tiedoston, joka on annettu komentorivillä sovellusta käynnistettäessä, esim. komennolla "C:\ACDSee.exe kuva1.gif".

Kun olet valinnut kuvien katseluun sopivan sovelluksen, sinun tulee myös valita milloin kyseistä sovellusta kuvien katseluun käytetään. Valittavia tilanteita on kolme:

Edellä mainituista toiminnoista voi kunkin kytkeä päälle tai pois täysin toisistaan riippumatta.

3.3 Esimerkkejä

Seuraavassa on esimerkki käyttösessiosta Unix-käyttöliittymällä. Annetut komennot on tummennettu ja kommentit laitettu sulkuihin.
alpha proto 51 % proto foo.pgm    (katsotaan lista tuetuista algoritmeista)
Source cover file is: foo.pgm
Cover file format is: PGM
Supported selector algorithms are: prp2D, sri2D,
Supported compression algorithms are: None, GZIP,
Supported encryption algorithms are: IDEA, DES,
alpha proto 52 % proto -h -s D secretkey foo.pgm bar.pgm
hello world
^D
hiding bits total: 56277
hiding bits used: 128
hiding bits used (%): 1
alpha proto 53 % proto -e -s IDEA bar.pgm    (avain puuttuu)
Usage: proto -h [-v] [-D] [-f messagefile] [-r selector] [-s encryption algorithm] [-c compression algprithm] passphrase inputfile outputfile
       proto -e [-v] [-D] [-r selector] [-s encryption algorithm] [-c compression algorithm] passphrase inputfile
       proto inputfile
alpha proto 54 % proto -e -s IDEA secretkey bar.pgm   (väärä salausalgoritmi)
error: No message hidden
alpha proto 55 % proto -e Secretkey bar.pgm    (väärä avain)
error: No message hidden
alpha proto 56 % proto -e Secretkey bar.pgm
hello world

alpha proto 57 %

4. Ongelmatilanteet

4.1 Järjestelmän antamat virheilmoitukset

Unix-käyttöliittymän virheilmoitukset Steganografisen kirjaston antamat virheilmoitukset

4.2 Yleisimmät ongelmatilanteet

5. Kirjallisuusviitteet

6. Sanasto

7. Hakemisto