background image

 

 

 

POLITECHNIKA BIAŁOSTOCKA 

 

 

WYDZIAŁ INFORMATYKI 

 

KATEDRA Systemów Komputerowych 

 

 

 

PRACA DYPLOMOWA

 

MAGISTERSKA 

    

 

 

 
TEMAT: 

Analiza algorytmów ukrywania w d wi ku 

 

 

 

 

 

 

 

 

 

WYKONAWCA: Marcin Tomaszewski 

Imi  i nazwisko 

 

 

 

 

 

 

 

 

      PODPIS: ................................. 

 

 

 

 

 

 

PROMOTOR: dr in . Eugenia Busłowska    

Imi  i nazwisko 

  

 

 

 

 

 

BIAŁYSTOK  2006 r.

background image

 

Spis tre ci 

Wst p 
1. Wprowadzenie do steganografii 
 

1.1. Rys historyczny 

 

1.2. Idea ukrywania danych 

 

1.3. Systematyka steganografii 

 

1.4. Wybór kontenera 

2. Wybrane media 
 

2.1. Tekst 

 

2.2. Obrazy i multimedia 

 

2.3. Protokoły sieciowe 

3. D wi k jako kontener 
 

3.1. HAS (Human Auditory System) 

 

3.2. Zało enia bezpiecznego stego- systemu 

 

3.3. Wybrane metody 

 

 

3.3.1. LSB 

 

 

3.3.2. DSSS 

 

 

3.3.3. Dodawanie szumów 

 

 

3.3.4. Modulacja fazy 

 

 

3.3.5. Autokorelacja 

 

3.4. Podsumowanie 

4. Analiza metod ukrywania w d wi ku 
 

4.1.  rodowisko bada  

 

 

4.1.1. Borland c++ Builder 

 

 

4.1.2. Aplikacja StegoSound 

 

4.2. Badane algorytmy 

 

4.3. Próbki danych 

 

4.4. Wyniki poszczególnych analiz 

Zako czenie i wnioski 
Bibliografia

 

background image

 

Wst p 

Celem  niniejszej  pracy  jest  zaprezentowanie  istniej cych  technik  i  metod 

steganograficznych  ze  szczególnym  naciskiem  na  algorytmy  wykorzystuj ce  jako 
kontener d wi k cyfrowy. 

W  pracy  zostały  przeprowadzone  analizy  porównawcze  dwóch  wybranych 

algorytmów  steganograficznych,  których  celem  było  okre lenie  która  z  nich 
zapewnia wy szy stopie  bezpiecze stwa przy pomocy badania amplitudy d wi ku. 
Przeprowadzone  badania  miały  równie   na  celu  sprawdzenie  czy  styl  muzyczny 
kontenera ma znaczenie dla bezpiecze stwa ukrywanych danych.

background image

 

1. Wprowadzenie do steganografii 
 
 

Steganografia  jest  nauk ,  której  celem  jest  opracowywanie  mechanizmów 

ukrywania  danych  przed  niepowołanymi  oczami.  Najlepsz   definicj   wysnuł 
Duncan Sellars w "An Introduction To Steganography": 
 
"The goal of steganography is to hide messages inside other harmless messages in a 
way  that  does  not  allow  any  enemy  to  even  detect  that  there  is  a  second  secret 
present" 
[1] 
 
Celem  steganografii  jest  ukrycie  wiadomo ci  wewn trz  innej  wiadomo ci  w  taki 
sposób, aby przeciwnik nawet nie był w stanie wykry ,  e wyst puje druga, sekretna 
informacja. 
 
 

Problem steganograficzny został precyzyjnie okre lony przez Simmonsa na 

przykładzie "problemu wi niów". 
 

Alice  i  Bob  siedz   w  wi zieniu,  w  oddzielnych  celach,  bez  mo liwo ci 

prywatnej rozmowy. Aby uzgodni  plan ucieczki musz  wykorzysta  otwarty kanał 
komunikacyjny  w  postaci  listów,  które  podlegaj   cenzurze.  Cenzor  Wendy  nie 
przepu ci  adnej wiadomo ci zaszyfrowanej lub te  wydaj cej si  niebezpieczn . W 
przypadku  jednego,  silnie  monitorowanego  kanału  komunikacyjnego  klasyczna 
kryptografia jest nieskuteczna, wiadomo  musi by  tak przemycona, aby sprawne 
oko Wendy nie zauwa yło nic niebezpiecznego. Tu do gry wchodzi steganografia, 
umo liwiaj ca wi niom swobodn  wymian  informacji.[2] 
 
 
1.1. Rys historyczny 
 
 

Termin  steganografia  pochodzi  z  j zyka  greckiego.  Dosłownie  znaczy 

"ukryte pismo" od słów steganos - ukryty i graphos - pismo. 
 

Historia  ukrywania  informacji  si ga  dalekich  czasów  przed  Chrystusem, 

pierwszy  udokumentowany  przypadek  u ycia  technik  steganograficznych  pojawia 

background image

 

si   w  pismach  Herodota  (484  -  425  p.  n.  e.),  który  opisuje  histori   Histiausa 
uwi zionego przez perskiego władc  Dariusa. Herodot dokładnie opisuje sposób w 
jaki  Histiaus  przekazał  informacj   o  swoim  poło eniu  do  swego  szwagra. 
Wiadomo  została ukryta pod włosami niewolnika, który został wysłany z nic nie 
znacz cym  i  nie  wzbudzaj cym  jakichkolwiek  podejrze   listem  ze  strony  stra y 
Dariusa.  Niewolnikowi  zgolono  włosy,  w  nast pnej  kolejno ci  na  skórze  głowy 
Histiaus wytatuował mu prawdziw  wiadmo . Gdy włosy odrosły, niewolnik bez 
trudu przeszedł przez perskie stra e, które nie wykryły  adnych tajnych informacji 
w przewo onym przez niewolnika li cie.[1] 
 

Na  przestrzeni  wielu  lat  techniki  steganograficzne  rozprzestrzeniły  si  

znacznie,  wzrosła  ró norodno   stosowanych  metod  tajnego  przekazywania 
informacji.  Do  tego  celu  wykorzystywane  były  np.  tabliczki  drewniane  pokryte 
warstw  wosku słu ce do nauki pisania. Informacja była grawerowana na drewnie 
a  nast pnie  pokrywana  równ   warstw   wosku,  doskonale  wygładzaj c  
powierzchni   deszczółki  i  skutecznie  przykrywaj c   wiadomo .  Zdarzały  si  
przypadki  zwini cia  listu  w  kulk   i  pokrycie  jej  woskiem,  która  w  nast pnej 
kolejno ci połykana była przez posła ca. 
W miar  upływu czasu, kiedy sztuka pisania stała si  bardziej powszechna, a jako 
materiały  były  wykorzystywane  ju   papier  i  inkaust,  techniki  steganograficzne 
ewoluowały. Pojawiły si  specjalnie spreparowane substancje, zwane atramentami 
symptaycznymi,  którymi  mo na  było  napisa   wiadomo   w  sposób  niewidoczny. 
W dalekich Chinach lub Egipcie popularny stał si  sok z cytryny. Napis wykonany 
sokiem z cytryny po wyschni ciu całkowicie znikał. Jako atramenty sympatyczne 
wykorzystywano  równie   mleko  jak  i  w  niektórych  przypadkach  uryn . 
Wiadomo ci  napisane  powy szymi  substancjami  odczytywano  po  uprzednim 
podgrzaniu papieru. Wysoka temperatura utleniała w giel zawarty w substancjach 
organicznych  u ytych  jako  atrament,  przez  co  litery  ciemniały  i  stawały  si  
widoczne. Organiczne atramenty sympatyczne miały dwie du e wady - były łatwe 
do wykrycia oraz istniało du e ryzyko uszkodzenia papieru podczas podgrzewania 
materiału.  Znacznie  bardziej  zaawansowane  techniki  wykorzystywały  substancje 
nieorganiczne.  W  ok.  250  roku  przed  Chrystusem  Filon  z  Bizancjum  zastosował 
kwas  garbarski  do  napisania  tajnej  wiadomo ci.  Podgrzewanie  materiału  nic  nie 

background image

 

dawało, informacja nadal pozostawała ukryta przed nieodpowiednimi osobami. Aby 
j   odczyta ,  nale ało  papier  pokry   solami  elaza,  które  wchodziły  w  reakcj  
chemiczn   z  kwasem,  przez  co  postawione  znaki  ciemniały  uwidaczniaj c  pismo. 
Niestety technika ta te  była niedoskonała - czas pomi dzy napisaniem wiadomo ci 
a jej odczytaniem musiał by  stosunkowo krótki. 
 

Pierwsz   prac   opisuj c   metody  ukrywania  wiadomo ci  była 

Steganographica  napisana  w  1665  roku  przez  Gaspari  Schotti,  który  oparł  j   na 
podstawie  bada   niemieckiego  mnicha  Johannesa  Trithemiusa.  Praktycznie  ka de 
kolejne  opracowanie  odwoływało  si   do  Steganographici  uzupełniaj c  zawarte  w 
niej wiadomo ci. Powstała w 1883 roku Cryptographie militaire przedstawia wiele 
reguł, b d cych podwalinami dzisiejszej steganografii. Napisana 24 lata pó niej w 
1907 roku Les Filigranes Charlesa Biqueta przez wiele lat była podstaw  znaków 
wodnych. 
Najwi kszy  rozwój  steganografii  nast pił  w  czasie  Drugiej  Wojny  wiatowej, 
zwłaszcza ze strony niemieckiego  wywiadu. Przykładem mo e by  przechwycona 
przez wywiad ameryka ski pozornie bezpieczna depesza: 
 
Apparently neutral's protest is thoroughly discounted and ignored. Isman hard hit. 
Blockade  issue  affects  pretext  for  embargo  on  by-products,  ejecting  suets  and 
vegetable oils.
[3] 
 
Czytaj c jedynie drug  liter  ka dego słowa otrzymano: 
 
Pershing sails form NY June 1.[3] 
 
 

Metoda  zapisywania  kluczowych  dla  wywiadu  informacji  polegaj ca  na 

odczycie poszczególnych znaków wiadomo ci była wielokrotnie wykorzystywana. 
Dopiero  w  momencie  wynalezienia  systemu  mikrokropek  technika  ta  poszła  do 
lamusa.  Wg.  J.  Edgara  Hoovera,  dyrektora  FBI  było  to  "arcydzieło  wrogiego 
wywiadu". Technika ta została zdradzona przez byłego agenta niemieckiego aparatu 
szpiegowskiego,  gdyby  nie  ten  fakt,  prawdopodobnie  amerykanie  nigdy  nie 
dowiedzieliby si  o tym systemie.  

background image

 

 

Mikrokropki  były  to  zdj cia  wykonane  w  bardzo  wysokiej  rozdzielczo ci 

miniaturyzowane  do  rozmiarów  zwykłej  kropki  umieszczanej  np.  w  li cie  lub 
znaczkach  pocztowych.  Wyselekcjonowanie  mikrokropki  i  jej  wielokrotne 
powi kszenie  pozwalało  odczyta   tajny  przekaz.  Technika  ta  pozwalała  na 
przesłanie  bardzo  du ej  ilo ci  danych,  ł cznie  z  mapami,  szkicami  lub  planami, 
b d cymi prawdziwym rarytasem dla wrogiego wywiadu. 
W  czasie  trwaj cej  wojny  obowi zuj ca  cenzura  starała  si   ograniczy   nie  tylko 
wydawane publikacje, ale równie  wszelkiego typu rebusy czy krzy ówki, b d ce 
doskonałym  medium  dla  technik  ukrywania  wiadomo ci.  W  dobie  II  Wojny 

wiatowej, gdy w USA prasa codzienna docierała do niektórych obszarów kraju z 

opó nieniem  nawet  tygodniowym,  bardzo  popularne  stało  si   wysyłanie 
dzienników lub tygodników rodzinie zamieszkałej w rejonach o trudnej dost pno ci 
do prasy. Otworzyło to kolejne mo liwo ci dla ukrywania informacji, zwłaszcza,  e 
poczta  była  wielokrotnie  poddawana  cenzurze.  System  ten  zwany  szyfrem 
ksi kowym polegał na dziurkowaniu cienk  igł  poszczególnych liter w słowach 
zawartych  w  gazetach.  Adresat  wiadomo ci  odczytywał  wypunktowane  litery 
składaj c całe słowa i zdania. 
Steganografia analogowa jednak oddała pole na rzecz steganografii cyfrowej, która 
powstała w momencie upowszechnienia si  licz cych maszyn cyfrowych. Powstały 
nowe, ogromne mo liwo ci, nowe mechanizmy niezwykle trudne do wykrycia bez 
przeprowadzenia szczegółowych a zarazem czasochłonnych analiz. 
 
1.2. Idea ukrywania 

Idea  ukrywania  jest  jedna  i  podstawowa  –  potencjalny  agresor  nie  mo e 

dowiedzie   si   o  istnieniu  tajnej  wiadomo ci.  Kryptografia  nie  dysponuje 
narz dziami umo liwiaj cymi to – wiadomo  mimo  e bezpiecznie zaszyfrowana 
jest widoczna – a to ju  wystarczaj co du e zagro enie.  

W  przypadku  opisanego  przez  Herodota  zdarzenia  steganografia  była 

jedynym narz dziem umo liwiaj cym przekazanie wiadomo ci. Tylko i wył cznie 
wiadomo  niewidoczna mogła zosta  przepuszczona przez stra e Dariusa. 

Czasami jawne istnienie informacji, mimo  e bezpiecznie zaszyfrowanej ju  

jest zagro eniem dla niej. Po przechwyceniu zaszyfrowanych informacji mo na je 

background image

 

zniszczy  w sposób nieodwracalny uniemo liwiaj c dostarczenie ich do odbiorcy. 
Mimo  faktu,  e  szyfr  nie  został  złamany  transmisja  została  przerwana  i  wymiana 
danych nie doszła do skutku. Ka da wiadomo  zaszyfrowana wzbudza podejrzenia 
–  informacja  musi  by   naprawd   wa na  skoro  została  zamkni ta  przed 
niepowołanymi  oczami,  informacja  skutecznie  ukryta,  która nie  jest  widoczna  nie 
wzbudzi  adnego zainteresowania. Zdj cia z wakacji, zdj cia swojego psa lub kota 
nie  zainteresuj   nikogo  poza  ich  wła cicielem,  dlatego  te   umieszczaj c  w  nich 
dane  mo na  zapewni   im  bardzo  wysoki  poziom  bezpiecze stwa  faktem,  e  nie 
wzbudzaj  zainteresowania osób trzecich. 

Kolejn   cech   mechanizmów  steganograficznych  jest  mo liwo  

„znakowania”  plików  graficznych  lub  multimedialnych  w  celu  zaznaczenia  np. 
praw  autorskich.  Wkomponowanie  tzw.  Znaku  wodnego  (ang.  Watermark)  do 
sygnału kontenera w taki sposób, aby niemo liwe było jego usuni cie bez znacznej 
utraty jako ci zapewnia ochron  praw autorskich. Jest to wykorzystywane min.  W 
systemach zarz dzania prawami DRM (ang. Digital Rights Management). 

 
 

1.3. Systematyka steganografii 

Tajna  wiadomo   mo e  zosta   osadzona  praktycznie  w  ka dym  typie 

sygnału. Jednak e w zale no ci od formatu sygnału stosowane s  ró ne techniki jej 
umieszczania. Wiele mediów charakteryzuje si  ró nymi cechami, wi c nie mo na 
sprecyzowa  jednego – uniwersalnego algorytmu pasuj cego do ka dego medium. 
Ró ne cechy sygnału przykrywaj cego wpływaj  na dobór nie tylko algorytmu, ale 
równie  na wybór miejsca osadzenia danych. Ze wzgl du na t  cech  steganografi  
komputerow  mo na podzieli  na sze  głównych klas: 

•  substitution  systems  –  zast powanie  nieistotnych  elementów 

kontenera poszczególnymi tajnymi danymi.  

•  transform  domain  techniques  –  osadzenie  informacji  w 

zmodyfikowanej 

przestrzeni 

sygnału, 

np. 

dziedzinie 

cz stotliwo ciowej 

•  spread  spectrum  techniques  –  rozszerzanie  widma  sygnału  –  cz sto 

wykorzystywane w d wi kach 

background image

 

•  statistical methods  - ukrywanie informacji poprzez zmodyfikowanie z 

góry okre lonych cech statystycznych kontenera. 

•  disortion  techniques  –  zanieczyszczanie  sygnału  poprzez  dodanie 

białego szumu zawieraj cego tajne informacje 

•  cover  generation  methods  –  osadzania  wiadomo ci  w  momencie 

tworzenia  kontenera.  Sygnał  przykrywaj cy  jest  specjalnie  tworzony 
w celach steganograficznych.[4] 

 

Aby  zastosowanie  technik  steganograficznych  zapewniało  wysoki  poziom 

bezpiecze stwa  nale y  odpowiednio  przygotowa   sygnał  b d cy  kontenerem 
wiadomo ci.  U ycie  nieodpowiedniego  sygnału  mo e  nie  zapewni  
bezpiecze stwa,  a  wr cz  narazi   dane  na  wykrycie.  Przykładem  le  wybranego 
medium  mo e  by   doskonale  biały  obraz  –  umieszczenie  w  nim  nawet 
najdoskonalsz   technik  porcji danych  spowoduje zachwianie doskonało ci bieli i 
modyfikacje  mog   by   widoczne  nawet  gołym  okiem  –  taka  sytuacja  jest 
niedopuszczalna.  Siła  steganografii  nie  le y  jednak  jedynie  po  stronie  sygnału 
przykrywaj cego. Bezpieczny stegosystem musi spełni  nast puj ce warunki: 

•  kontener nie mo e zosta  zmodyfikowany w sposób na tyle znaczny, 

e zmiany b d  widoczne okiem nieuzbrojonym. 

•  struktura  kontenera  musi  pozosta   nienaruszona  przy  jednoczesnym 

upakowaniu danych zewn trznych 

•  osadzona  informacja  musi  by   odporna  na  uszkodzenia  lub  celowe 

przetwarzanie  sygnału  poprzez  edycj ,  samplowanie,  kompresj  
stratn  

•  ukryta wiadomo  (a przynajmniej jej fragment) musi by  mo liwa do 

wyodr bnienia nawet w przypadku utraty cz ci kontenera.[1] 

Ka dy stegosystem nara ony jest na uszkodzenia jak i celowe ataki ze strony 

potencjalnych  agresorów.  Przykładem  niecelowego  uszkodzenia  osadzonej 
informacji jest potraktowanie obrazu posiadaj cego ukryty przekaz osadzony prost  
technik   LSB  dowolnym  edytorem  graficznym  –  np.  zastosowanie  opcji  sharpen, 
ang.  Wyostrzanie.  Jest  to  jeden  z  cz ciej  wykorzystywanych  filtrów,  zwłaszcza 
przy  obróbce  grafiki  dopiero  co  zmniejszonej.  Przy  prostych  technikach 

background image

 

10 

ukrywaj cych mo e to skutecznie zniszczy  tajn  informacj . 

Do ataku na stegosystem mo e doj  w dwóch przypadkach. W pierwszym 

główn   rol   zagrał  przypadek  –  atakuj cy  sprawdzaj c  du   ilo   danych 
przypadkiem  natrafił  na  kontener  z  danymi.  Jest  to  przypadek  bardzo  rzadko 
spotykany  i  raczej  nieprawdopodobny.  Drugi  przypadek  jest  bardziej  realny. 
Atakuj cy miał podstawy s dzi ,  e przechwycony sygnał zawiera „co ” ukrytego, 
np niepokoj ce szumy i zakłócenia w sygnale d wi kowym. Je eli to b dzie miało 
miejsce wówczas stegosystem mo na uzna  ju  za bliski kompromitacji. Całkowita 
kompromitacja systemu steganograficznego nast pi wówczas, gdy atakuj cy system 
skutecznie wyodr bni dane. Klasyczny atak na stegosystem przebiega trzyetapowo: 

•  wykrycie  (ang.  Detection)  –  atakuj cy  mo e  znale   si   w  trzech 

stanach na etapie wykrywanie osadzonej informacji: 

o

  mo e  wykry   osadzon   informacj   –  oznacza  to  pełn  

kompromitacj  systemu 

o

  mo e  nie  wykry   informacji  popełniaj c  bł d  II  typu  – 

wówczas  stegosystem  nie  zostaje  skompromitowany  i 
osadzone informacje pozostaj  bezpieczne 

o

  mo e  niepoprawnie  wykry   osadzon   informacj   popełniaj c 

bł d  I  typu  –  stegosystem  jest  na  granicy  kompromitacji, 
jednak informacja jest nadal bezpieczna.[4] 

Konstruuj c  algorytm  steganograficzny  d y  si   do  osi gni cia 
prawdopodobie stwa wyst pienia bł du II typu równego 1. 
Prawdopodobie stwo wykrycia zale y zarówno od u ytej techniki 
osadzania danych jak i od jako ci i typu medium przykrywaj cego. 
Je eli  zostanie  wybrany  nieodpowiedni  sygnał,  taki  w  którym 
łatwo  jest  zauwa y   „zanieczyszczenia”  wprowadzone  przez 
funkcj   steganograficzn   to  prawdopodobie stwo  wykrycia 
znacznie  wzrasta.  Dysponuj c  pewn   baz   wiedzy  o  statystyce 
danego  typu  sygnału  mo na  przeprowadzi   atak  statystyczny, 
przynosz cy  dobre  efekty.  Udowodniono  równie ,  e  niektóre 
aplikacje  steganograficzne  osadzaj c  informacj   nara aj   j   na 
łatwe wykrycie przez atakuj cego. Aplikacje te działaj  w sposób 

background image

 

11 

szablonowy  i  znaj c  sposób  jej  działania  wiadomo  gdzie  i  czego 
szuka   –  niektóre  wr cz  zapisuj   informacje  o  sobie  w  pliku 
wynikowym.  
Na  etapie  wykrywania  osadzonej  informacji  mo na  posłu y   si  
nast puj cymi metodami ataku: 
•  stego-only  attack  –  metoda  o  bardzo  niskiej  skuteczno ci  ze 

wzgl du  na  du   ilo   dost pnych  metod  stganograficznych. 
Posiadanie  samego  stegosystemu  nie  gwarantuje  poprawno ci 
wykrycia czegokolwiek 

•  known  cover  attack  –  atakuj cy  ma  dost p  zarówno  do 

stegosystemu 

jak 

pierwotnej 

wersji 

kontenera 

nieposiadaj cego ukrytych danych 

•  known  message  attack  –  atakuj cy  dysponuje  pełn   tre ci  

ukrytego  przekazu  –  atak  maj cy  na  celu  skompromitowanie 
algorytmu. 

•  Chosen stego attack – algorytm jest znany dla agresora –  adna 

wiadomo   nie  jest  bezpieczna,  prawdopodobie stwo 
skompromitowania równe 1. 

•  chosen message attack – atak polegaj cy na poddawaniu próbki 

wcze niej  przygotowanych  informacji  działaniu  ró nych 
algorytmów steganograficznych w celu wykrycia podobie stwa 
lub wzorca do znanej metody. Technika ataku przypominaj ca 
metod  łamania haseł brute-force. 

•  known  stego  attack  –  atakuj cy  dysponuje  kompletn   wiedz  

na  temat  uzytego  algorytmum,  posiada  przechwycony 
stegosystem  jak  i  oryginalny  sygnał  u yty  jako  medium 
przykrywaj ce.[4] 

 

•  Wyodr bnianie  (ang.  Extraction)  –  je eli  na  etapie  wykrywania  nie 

został  popełniony  bł d  I  typu  istnieje  wysokie  prawdopodobie stwo 
wyodr bnienia  i  poprawnego  odczytania  ukrytych  informacji  z 
kontenera. 

background image

 

12 

•  Usuwanie  (ang.  Deletion)  –  mo e  zdarzy   si ,  e  atakuj cy  po 

wyodr bnieniu  informacji  z  kontenera  b dzie  starał  si   zniszczy  
przekaz, nie wzbudzaj c podejrze  zarówno u nadawcy jak i odbiorcy 
przekazu,  lub  informacj   t   sfałszowa .  Atakuj cy  mo e  usiłowa  
zniszczy  wiadomo  w momencie gdy nie uda mu si  poprawnie ich 
wyodr bni  i odczyta . Przy wykorzystaniu wielu technik zniszczenie 
ukrytych  danych  jest  procesem  stosunkowo  prostym  i  niezbyt 
czasochłonnym. 

 

W  praktyce  wyst puj   trzy  typy  algorytmów  steganograficznych,  których 

podobie stwo zasady działania mo na zauwa y  do algorytmów kryptograficznych: 

•  Prosty algorytm steganograficzny (ang. Pure steganography).  
 
Definicja 1:  

, , ,

C M D E

∂ =<

>

,  gdzie  C  jest  zbiorem  mo liwych  kontenerów  (ang. 

Covers),  M  jest  zbiorem  wiadomo ci,  przy  czym  musi  zachodzi  
własno  

| | |

|

C

M

:

E CxM

C

  jest  funkcj   osadzaj ca  wiadomo   w 

kontenerze, 

:

D C

M

jest  funkcj   wyodr bniaj c ,  przy  zachowaniu 

własno ci: 

( ( , ))

D C m c

m

=

,  gdzie  dla  ka dego 

m M

  i  ka dego 

c C

 

nazywamy prostym algorytmem steganograficznym.[4] 
 

Cech  główn  prostego algorytmu steganograficznego jest to,  e wcze niej, 

pomi dzy    nadawc   i  odbiorc   wiadomo ci  nie  musi  doj   do  wymiany  lub 
uzgodnienia  klucza  –  wystarczy  znajomo   algorytmu  przez  obie  strony.  Aby 
algorytm był bezpieczny musi by  utrzymany w  cisłej tajemnicy, ujawnienie jego 
zasady działania spowoduje totaln  kompromitacj . 

Formalnie osadzanie przebiega nast puj co: 

:

E CxM

C

 

Gdzie  C  jest  zbiorem  wszystkich  mo liwych  kontenerów  za   M  zbiorem 

wiadomo ci.  Proces  wyodr bniania  to: 

:

D C

M

.  Przy  czym  konieczne  jest 

spełnienie zale no ci 

| | |

|

C

M

 

background image

 

13 

Zalet  prostego algorytmu steganograficznego jest fakt,  e przed wysłaniem 

informacji nie musi nast pi  przekazanie klucza otwartym kanałem informacyjnym, 
gdzie mo e by  nara ony na przechwycenie przez osoby trzecie. Jednak e stało  
algorytmu znacz co odbija si  na jego bezpiecze stwie. Dysponuj c odpowiednio 
du  ilo ci  danych do analizy mo na zrekonstruowa  struktur  algorytmu, jak to 
ma  miejsce  przy  łamaniu  prostych  szyfrów  podstawieniowych  lub 
przedstawieniowych.  

•  Algorytm z kluczem prywatnym 
 

Definicja 2: 

, , ,

,

k

k

C M K D E

∂ =<

>

,  gdzie  C  jest  zbiorem  mo liwych  kontenerów,  M  jest 

zbiorem  tajnych  wiadomo ci,  gdzie  musi  wyst pi   własno  

| | |

|

C

M

,  K  jest 

zbiorem  kluczy  prywatnych, 

:

k

x x

E C M K

C

  i 

:

k

x

D C K

M

  z  zachowaniem 

zale no ci 

( ( , , ))

k

k

D E c m k

m

=

 dla ka dego 

m M

, ka dego 

c C

 i ka dego 

k K

 

nazywamy algorytmem steganograficznym z kluczem prywatnym.[4] 

 

 

Rys. 1. Osadzanie i wyodr bnianie z wykorzystaniem klucza prywatnego 

 

Aby uniezale ni  si  od samego algorytmu, uwa aj c aby nie został złamany 

lub  odtajniony  wprowadzono  algorytmy  steganograficzne  bazuj ce  na  kluczu 
prywatnym. Wyst puje tu pewne podobie stwo do algorytmów kryptograficznych 
symetrycznych,  gdzie  istniał  jeden  klucz  –  zarówno  do  szyfrowania  jak  i 
deszyfrowania wiadomo ci. 

Warunkiem koniecznym do spełnienia jest wcze niejsza propagacja klucza – 

zarówno nadawca jak i odbiorca musz  posiada  identyczny. Przesyłanie otwartym 
i  niebezpiecznym  kanałem  wi e  si   z  ryzykiem  przechwycenia  klucza.  Aby 

background image

 

14 

zminimalizowa   te  ryzyko  mo na  posłu y   si   algorytmami  kryptograficznymi 
słu cymi do ustalania kluczy na odległo .  

Algorytm Diffie-Hellmana: 
„publicznie znane s  p, która jest wystarczaj co du  liczb  pierwsz , oraz 

generator alfa dla Zp. Protokół ma nast puj c  posta : 

1.

 

Alice wybiera Z

a

, Bob wybiera Z

b

, gdzie 

,

2

a

b

Z Z

p

≤ −

. liczby Z

ai

 Z

b

 

s  trzymane w tajemnicy. 

2.

 

Alice  przesyła  Bobowi  liczb  

mod

Za

a

C

p

α

=

,  Bob  przesyła  Alice 

liczb  

mod

Zb

b

C

p

α

=

3.

 

jako  uzgodniony  klucz  przyjmowana  jest  liczba 

mod

Za Zb

k

p

α

=

Alice  oblicza  k  jako 

( ) mod

Za

b

C

p

,  Bob  korzysta  z  równo ci 

( ) mod

Zb

a

k

C

p

=

 

Algorytm  Diffie-Hellmana  mimo  e  nie  korzysta  z  adnego  szyfrowania  przy 
przekazywaniu warto ci obliczonych przez Alice i Boba uznawany jest za metod  
wzgl dnie bezpieczn . Agresor podsłuchuj cy transmisj  pomi dzy Alice i Bobem 
nie  jest  w  stanie  obliczy   klucza  k  mimo  znajomo ci  danych  publicznych.  Aby 
obliczy  klucz k, atakuj cy musiałby wyliczy  logarytm dyskretny do wyznaczenia 
liczb Z

a

 i Z

b

 z C

a

 i C

b

, gdzie nie znany jest jeszcze efektywny algorytm wyznaczania 

logarytmu dyskretnego.[5] 
 

Algorytm  Diffie-Hellmana  nie  jest  jedynym  algorytmem  wymiany  klucza. 

Istniej   jego  odmiany,  równie  dobrze  nadaj ce  si   do  ustalenia  kluczy 
steganograficznych takie jak: protokół STS (Stadion-To-Station) lub protokół MTI 
(Matsumoto Takashima Imai).[5] 

Stałe u ywanie jednego klucza wi e si  z niebezpiecze stwem jego utraty 

lub  odkrycia  przez  osoby  niepowołane.  Lepszym  rozwi zaniem  s   klucze 
jednorazowe    -  ich  bezpiecze stwo  jest  znacznie  wy sze  ni   jednego,  stałego 
klucza, gdy  nawet w przypadku odkrycia klucza przez osoby trzecie, praktycznie 
nie  istnieje  prawdopodobie stwo  odszyfrowania  danych  zakodowanych  innymi 
kluczami.  Wad   kluczy  jednorazowych  jest  konieczno   posiadania  karty  kodów 
lub  ksi ki  kodowej  (jak  np.  w  przypadku  Enigmy).  W  algorytmach 
steganograficznych istnieje mo liwo  zastosowania klucza jednorazowego poprzez 

background image

 

15 

klucz sesji. 

Klucz sesji jest obliczany z funkcji: 

(

)

K H feature

=

[4] 

 Gdzie  H  jest  niezmienn ,  z  góry  okre lon   funkcj ,  natomiast  feature  jest 

pewn  niezmienn  cech  kontenera. Cecha ta musi by  tak wybrana, aby osadzanie 
wiadomo ci nie zaburzyło jej – w tym przypadku wyodr bnienie informacji stanie 
si  niemo liwe, gdy  nie b dzie sposobu na obliczenie klucza sesji przez adresata. 
Cech  t  mo e by  np długo  sygnału d wi kowego, rozmiar kontenera w bajtach, 
rozdzielczo  u ytego obrazu, lub kombinacja tych cech razem. 

Zastosowanie klucza sesji zapewnia bardzo wysoki poziom bezpiecze stwa. 

Praktycznie  ka dy  stegosystem  tworzony  jest  na  bazie  innego  klucza,  nie  ma 
potrzeby  wcze niejszego  ustalania  lub  wymiany  kluczy  pomi dzy  adresatem  i 
nadawc . Niezb dne natomiast jest ustalenie funkcji H() i cechy. 

 

•  Algorytm z kluczem publicznym 

Istniej   pewne  sytuacje  gdzie  u ycie  jednego  klucza  do  osadzania 

wiadomo ci,  jak  i  do  wyodr bniania  nie  zapewnia  odpowiedniego  poziomu 
bezpiecze stwa,  lub  w  przypadku  gdy  rozpropagowanie  klucza  czy  te   jego 
ustalenie  jest  zbyt  niebezpieczne,  stegosystem  mo e  zosta   przedwcze nie 
skompromitowany. 

Zupełnie  jak  w  przypadku  kryptografii  symetrycznej  posiadaj c  wiedz   na 

temat u ytego algorytmu i dysponuj c odpowiedni  ilo ci  danych wej ciowych do 
analizy, atakuj cy jest w stanie odtworzy  klucz.  

W  1990  roku  w  ten  sposób  udało  si   złama   kryptograficzny  algorytm 

symetryczny DES, przez  wiele  lat  uznawany  za  niełamliwy  metodami  innymi  ni  
brute-force.  Eli  Biham  i  Adi  shamir  opracowali  metod   kryptoanalizy  ró nicowej 
bazuj cej  na  tym,  e  znany  był  algorytm  i  dysponowano  du   ilo ci   danych 
wej ciowych  (w  przypadku  16  rundowego  DES  wymagane  były  2

55

  znane  teksty 

jawne)  dla  złamania  klucza.  Trzy  lata  pó niej  nast pił  kolejny  przełom,  Matusi 
opracował  metod   kryptoanalizy  liniowej,  bazuj cej  na  liniowej  aproksymacji  do 
„odgadni cia” klucza.[5] 

U ycie  jednego  klucza  do  szyfrowania  a  drugiego  klucza  do 

odszyfrowywania  dostało  miano  kryptografii  asymetrycznej.  W  steganografii 

background image

 

16 

asymetrycznej jeden klucz przeznaczony jest do osadzania wiadomo ci, natomiast 
drugi do jej wyodr bniania. 

Klucz za pomoc  którego nast puje osadzania informacji w kontenerze nosi 

miano  klucza  publicznego  b d cego  dost pnym  ka demu.  Klucz  słu cy  do 
wyodr bniania  danych  jest  kluczem  prywatnym,  znanym  jedynie  dla  adresata 
wiadomo ci.  Par   kluczy  publiczny-prywatny  nale y  wygenerowa   przed 
rozpocz ciem transmisji. 

 

 

Definicja 3: 

Stegosystem  z  kluczem  publicznym  jest  potrójnym  zło eniem  probabilistycznych 
algorytmów 

(

,

,

)

S

SG SE SD

=

, gdzie 

(1 )

k

SG

 generuje par  kluczy 

( , )

k

k

p s

PKxSK

.  

(1 )

{ , }

k

k

k

SG

p s

 

SE bierze publiczny klucz p

k

 nale cy do PK oraz tekst jawny m nale cy do {0,1}. 

Funkcja SE zwraca wiadomo  ukryt  s: 

( , )

k

SE p m

s

=

 

SD  wykorzystuj c  prywatny  klucz  s

k

  nale cy  do  SK  i  stegosystem  s,  zwraca 

wyodr bnion  wiadomo  m. 

( , )

k

SD s s

m

=

[4] 

Standardowo  klucz  publiczny  jest  kluczem  mocno  rozpowszechnionym  i 

znanym  szerokiemu  kr gu  ludzi.  Wiadomo   osadzona/zaszyfrowana  za  pomoc  
klucza publicznego danej osoby mo e zosta  wyodr bniona/odszyfrowana jedynie 
przez wła ciciela klucza  publicznego, posiadaj cego równie  klucz prywatny. 

Aby  techniki  steganograficznej  były  jeszcze  skuteczniejsze  i  bardziej 

bezpieczne  mo na  posiłkowa   si   algorytmami  kryptograficznymi.  Przed 
osadzeniem  do  kontenera  wiadomo   jest  szyfrowana  wybranym  algorytmem  i 
dopiero szyfrogram jest umieszczany w sygnale przykrywaj cym i transmitowany 
do odbiorcy. 

Wcze niejsze u ycie kryptografii, oprócz zmniejszenia prawdopodobie stwa 

prawidłowego odczytania  osadzonego przekazu  poprzez  podwojenie  siły  systemu, 
zwi ksza  równie   prawdopodobie stwo  popełnienia  bł du  II  typu  przy  ataku  na 
stegosystem. Agresor nie wiedz c o fakcie wykorzystania siły szyfrowania, nawet 
po  prawidłowym  wyodr bnieniu  danych  otrzyma  przypadkowo  wygl daj cy  ci g 

background image

 

17 

znaków.  Prawdopodobie stwo  domy lenia  si   jakiego  algorytmu  szyfruj cego 
u yto jest bliskie 0. 

 
1.4. Wybór kontenera 
Od  prawidłowego  wyboru  sygnału  przeznaczonego  na  kontener  w  du ej 

mierze zale y skuteczno  ukrywania danych. Idealny kontener to taki, który został 
stworzony  bezpo rednio  w  celu  ukrycia  w  nim  danych  i  jest  ci le  prywatny  dla 
jego wła ciciela. Nie istnienie  adnej innej kopii uniemo liwi wykorzystanie ataku 
typu  Known-Cover-Attack.  Przygotowanie  kontenera  zale y  od  typu  i  wielko ci 
danych jakie ma przechowywa . Niedopuszczalne s  sygnały mało zró nicowane – 
takie jak obraz jednolicie kolorowy lub o bardzo niskim kontra cie i ró norodno ci 
barw, sygnał d wi kowy posiadaj cy prawie płask  amplitud , d wi k stworzony  z 
niewielkiej ilo ci mało zró nicowanych ampli. 

Wskazane jest, aby sygnał kontenera jak i dane do ukrycia spełniały w jak 

najwi kszym stopniu zale no  funkcji podobie stwa (ang. Similarity function) 

 
Definicja 4: 

Niech C b dzie niepustym zbiorem, Funkcja 

2

:

(

,1]

sim C

→ −∞

, jest nazywana 

funkcj  podobie stwa dla C, je eli dla x,y nale cego do C zachodzi: 

Sim(x,y)=1   x=y 
Dla x<>y sim(x,y)<1 
Dla systemów steganograficznych: 

( ( ( , ))

sim C E c m

  zbiega  do  1,  dla  ka dego 

c C

  i 

m M

,  gdzie  C  to  zbiór 

wszystkich mo liwych kontenerów, 

( , )

E c m

 jest funkcj  osadzaj c  wiadomo  m 

w kontenerze c.[4] 

Im  wi ksze  podobie stwo  stegosystemu  i  kontenera  tym  sygnał  kontenera 

został  mniej  zmodyfikowany  poprzez  osadzanie  i  przeprowadzenie  stegoanalizy 
b dzie znacz co utrudnione. 

Przy doborze medium nale y pami ta  o spełnieniu zale no ci: 

| | |

|

C

M

 

W  przeciwnym  wypadku  wiadomo   nie  zostanie  prawidłowo  ukryta  lub 

mo e ulec zniszczeniu cało  lub jej cz

.

background image

 

18 

2. Wybrane media 
 
 

Wraz  z  rozwojem  technologii  cyfrowej  steganografia  musiała  ewoluowa . 

Opracowanie cyfrowych no ników informacji stworzyło olbrzymie mo liwo ci dla 
ukrywania  informacji.  Dane  nie  były  ju   reprezentowane  analogowo  posiadaj c 
znacznie  mniejsze  mo liwo ci,  sposoby  osadzania  jak  i  wyodr bniania  danych 
uległy  pełnej  automatyzacji,  wymagany  nakład  pracy  zmniejszył  si   do  operacji 
kilkuminutowych.  To  co  kiedy   wymagało  sporej  dawki  wiedzy,  wyobra ni  i 
niemałej  ilo ci  czasu  zostało  zredukowane  do  automatycznych  programów 
wykonuj cych  wszystkie  mudne  czynno ci  za  człowieka.  Sam  sygnał  cyfrowy 
stworzył  kolejne  mo liwo ci  -  opracowywane  techniki  steganograficzne  s   co  raz 
doskonalsze  pod  wzgl dem  bezpiecze stwa  i  niezmienno ci  kontenera.  Proste 
zasady  oszukiwania  ludzkich  zmysłów  zostały  wzbogacone  o  skomplikowane 
reguły  matematyczne  pozwalaj ce  uzyska   lepsze  efekty  w  stosunku  do  ery 
przedkomputerowej.  Ró norodno   cyfrowych  formatów  danych  stworzyło  wr cz 
nieograniczone mo liwo ci dla steganografów. Ka da informacja zapisana cyfrowo, 
niezale nie od jej formatu nadaje si  w mniejszym lub wi kszym stopniu do bycia 
kontenerem na inn  wiadomo , zale nie od jej konstrukcji. 
 
2.1. Tekst 
 

Tekst  jawny  jest  jednym  z  najstarszych  mediów  wykorzystywanych  w 

steganografii. Pozornie nieskomplikowana wiadomo  zapisana na skrawku papieru 
lub w formie elektronicznej mo e nie  pewn  dawk  informacji niejawnej. 
Podczas  II  Wojny  wiatowej  steganografia  tekstowa  wykorzystywała  specjalnie 
preparowane wiadomo ci, gdzie przy znajomo ci algorytmu lub klucza mo na było 
wyodr bni   inna,  niejawn   wiadomo .  Przykładem  historycznym  mo e  by  
zapisywanie wiadomo ci w  ci le okre lonych literach ka dego słowa. 
Tekst jako kontener posiada jednak spore ograniczenia: 
- jest w stanie pomie ci  niewielk  ilo  danych 
- wykrycie informacji transportowanej w tek cie jawnym jest łatwe do wykonania, 
nawet bez specjalistycznego oprogramowania 
- bardzo łatwo uszkodzi  lub całkowicie zniszczy  informacj  w nim zapisan . 

background image

 

19 

Algorytmy  steganograficzne  bazuj ce  na  kontenerach  tekstowych  mo na 
zakwalifikowa  do dwóch grup: 
1. algorytmy osadzj ce informacj  w sposób daj cy mo liwo  przechowywanie 
stegosystemu w formie niecyfrowej (np. Jako wydrukowany arkusz papieru) 
2. algorytmy wył cznie cyfrowe. 

 
Do pierwszej kategorii zalicza si  grup  mechanizmów zaproponowanych przez J. 
T.  Brassila  okre lanych  jako  line-shift-coding,  word-shift-coding,  feature-coding, 
metod  semantyczn  i syntaktyczn . Do grupy drugiej zalicza si  algorytm białych 
znaków. 

2.1.1.

 

Line shift coding 

 

Algorytm  line-shift-coding  opiera  si   na  precyzyjnym  manipulowaniem 

poło enia  wiersza  tekstu  w  stosunku  do  wierszy  nad  i  pod  nim.  Przesuni cie 
powinno mie  stał  warto  i wynosi ok. 1/300 cala. Zalet  tego algorytmu jest fakt, 

e ukryta informacja nie zostanie zniszczona nawet po wydrukowaniu dokumentu. 

Badania dowiodły,  e mo liwe jest poprawne wyodr bnienie osadzonej wiadomo ci 
nawet  z  10  pokolenia  oryginału  przy  fotokopiowaniu  dokumentu.  Natomiast 
podstawow   wad   jest  to,  e  prawdopodobie stwo  wykrycia  informacji  przez 
niepowołane osoby jest bardzo wysokie i nie wymaga specjalistycznych narz dzi. 
Algorytm zakłada,  e przesuni ciu ulegaj  tylko wybrane wiersze tekstu, wi c dany 
wiersz mo e znale  si  w jednym z trzech stanów:[6] 

{0, 1,1}

S

=

 

gdzie S=0 – brak przesuni cia wiersza 
S=1 – przesuni cie wybranego wiersza w gór  
S=-1 – przesuni cie wybranego wiersza w dół. 
Aby  umo liwi   prawidłowe  wyodr bnienie  danych  z  tekstu  nale y  zało y ,  e 
poło enie nie wszystkich wierszy mo e ulec zmianie. Zało ono,  e wiersze parzyste 
pozostaj   w  stanie  S=0,  natomiast  jedynie  wiersze  nieparzyste  mog   przyj   stan 
S=1  lub  S=-1.  Nie  zachowuj c  tej  zasady  nie  b dzie  mo na  okre li   punktu 
odniesienia do obliczenia przesuni cia. Przykładowo b d ce w s siedztwie wiersze: 
wiersz 1 

- stan S=-1 

wiersz 2 

- stan S=-1 

background image

 

20 

wiersz 3  

- stan S=-1 

s  niepoprawnie zakodowane. Niemo liwe jest jasne okre lenie ich stanu. Równie 
dobrze ka dy z nich mo e by  w stanie S=0 jak i S=1. 
Je eli jednak wiersz 1 i 3 b d  w stanie S=0, wówczas analizuj c dokument mo na 
zauwa y ,  e wiersz 2 jest na pewno w stanie S=-1. 
Line-shift-coding bazuje na słowach kodowych. Słowo kodowe jest zdefiniowanym 
zbiorem  warto ci  przesuni cia  poszczególnych  wierszy  dokumentu,  w  ten  sposób 
mo na odda  reprezentacj  bitow , np.: 
S=-1 – warto  bitowa 1 
S=1 – warto  bitowa 0 
 

Oznaczanie  słów  kodowych  jest  dowolne  i  zale ne  od  implementacji 

algorytmu. Za pomoc  19 wierszy tekstu mo na okre li  2

19

 słów kodowych co daje 

warto : 524588 wszystkich mo liwych słów kodowych. 
Systemy wyodr bniaj ce osadzon  informacj  mog  opiera  si  na jednej z dwóch 
metod: 

•  baseline detection decision rule 

Niech  wiersze  i-1  oraz  i  +1  nie  b d   przemieszczone  w  pionie  (stan  S=0), 
wiersz  i  b dzie  w  stanie  S={-1,1},  niech  l  b dzie  odległo ci   pomi dzy 
wierszami  i-1  oraz  i,  oraz  odległo ci   pomi dzy  wierszami  i  oraz  i+1 
wówczas reguła wykrywania przesuni cia wiersza przyjmuje posta : 
je eli l(i-1,i)>l(i,i+1) wówczas wiersz jest w stanie S=-1 
je eli l(i-1,i)<l(i,i+1) wówczas wiersz jest w stanie S=1 
je eli l(i-1,i)=l(i,i+1) wówczas wiersz jest w stanie S=0[6] 

 

•  centroid detection decision rule 

 

Niech S

i

-1 oraz S

i

 b d  centroidami pomi dzy wierszami i-1 oraz i, a tak e 

wierszami i+1 oraz i w dokumencie kontenera. Niech t

i

-1 oraz t

i

 b d  odpowiednimi 

centroidami  pomi dzy  wierszami  w  niezmodyfikowanym  dokumencie  kontenera, 
wówczas reguła ma posta : 
je eli s

i

-1 – t

i

-1  > s

i

 – t

i

 wówczas wiersz jest w stanie S=-1 

je eli  s

i

-1 – t

i

-1  < s

i

 – t

i

, wówczas wiersz jest w stanie S=1 

w pozostałym przypadku wiersz b dzie w stanie S=0. 

background image

 

21 

 
 

Wykorzystuj c  reguł   baseline  detection  decision  rule  istnieje  pewne 

prawdopodobie stwo nieprawidłowego zinterpretowania stanów badanego wiersza. 
Stan S=-1 mo e zosta  odczytany jako stan S=1 i odwrotnie, co mo e spowodowa  
bł d  I  typu  w  procesie  wykrywania  osadzonej  informacji.  Reguła  bazuj ca  na 
centroidzie jest niepodatna na tego typu bł d. 
 

Przeprowadzaj c atak na stegosystem oparty na algorytmie line-shift-coding 

mo na  posłu y   si   analiz   profilu  zale no ci  pomi dzy  poło eniem  wierszy  w 
dokumencie. Posiadaj c wykres z łatwo ci  mo na zauwa y  odchylenia od normy. 

 

Rys. 2 przykładowy profil zale no ci pomi dzy wierszami 

2.1.2. word-shift-coding 
 

W odró nieniu od line-shift-coding ta metoda opiera si  na manipulowaniu 

poło eniem  nie  całego  wiersza  w  pionie,  ale  poło eniem  pojedynczych  słów  lub 
bloków  słów  w  wierszu  wzgl dem  osi  X.  Najlepiej  do  tego  celu  nadaj   si  
dokumenty  wyrównane  do  obu  kraw dzi  strony,  aczkolwiek  gdy  nie  ma 
spełnionego  tego  warunku  u ycie  word-shift-coding  jest  równie   mo liwe. 
Sprecyzowano dwie odmiany: 

•  w  ka dym  wierszu  dokumentu  odnajdywana  jest  najwi ksza  i 

najmniejsza  odległo   pomi dzy  słowami.  Nast pnie  najwi ksza 
odległo   jest  pomniejszana  o  stał   warto ,  natomiast  najmniejsza 
powi kszana o warto  identyczn . 

•  Wiersz  dokumentu  dzielony  jest  na  trzy  bloki  słów.  Przesuni ciom 

podlega jedynie blok  rodkowy wzgl dem bloku skrajnie lewego lub 

background image

 

22 

skrajnie prawego. 

 

Rys. 3. przykładowe przesuni cie w lewo słowa „for” 

 

 

 

Metoda manipulowania pozycj  słów w wierszu równie  bazuje na słowach 

kodowych. Słowo kodowe mo e zatem by  zapisane za pomoc  3 stanów. 
S=0 gdy słowo nie uległo przesuni ciu 
S=1 gdy słowo uległo przesuni ciu w lewo 
S=-1 gdy słowo uległo przesuni ciu w prawo 
 

Ilo  słów kodowych mo liwych do zapisania w danym wierszu dokumentu 

jest  ci le zwi zana z rodzajem u ytego algorytmu oraz długo ci  wiersza – nie w 
ka dym mo na zmodyfikowa  poło enie takiej samej ilo ci słów. 
 

Word-shift-coding jest metod  bezpieczniejsz  od line-shift-coding. Istnieje 

mniejsze  prawdopodobie stwo  wykrycia  przesuni cia  pojedynczych  słów  lub 
bloków  słów  ni   całego  wiersza.  Jednak e  wraz  ze  wzrostem  bezpiecze stwa 
osadzonej  informacji  wzrasta  ryzyko  jej  uszkodzenia.  Jak  w  przypadku  line-shift-
coding  mo liwe  było  poprawne  wyodr bnienie  wiadomo ci  z  10  pokolenia 
fotokopii dokumentu, tak w przypadku word-shift-coding niemo liwe to ju  jest w 
przypadku drugiego pokolenia. 
 

Aby  móc  odczyta   osadzon   informacj   nale y  posiada   zarówno 

stegosystem  jak  i  oryginalny  dokument,  który  został  u yty  jako  kontener.  W 
przeciwnym  wypadku  nie  sposób  okre li   przesuni cie  których  słów  zostało 
zmienione. Rozszerzaj c ten klasyczny algorytm o mo liwo  wykorzystania klucza 
mo na  wyeliminowa   konieczno   posiadania  dokumentu  oryginalnego.  W  tym 
przypadku  klucz  mo e  opisywa ,  które  słowa  lub  bloki  słów  mog   ulec 
przesuni ciu.[7] 
 
 
 

background image

 

23 

2.1.3.

 

Feature-coding 

 

Najpopularniejszym  kodowaniem  za  pomoc   wybranych  cech  jest 

wykorzystanie wysoko ci liter nale cych do zbioru: 

{ , , , , , , }

L

b d f h k l t

=

 

 

Algorytm feature-coding w tym przypadku opiera si  na zmianie wysoko ci 

znaków  nale cych  do  zbioru  L.  Słowo  kodowe  mo e  zosta   zapisane  jako 
„wydłu enie”  lub  „skrócenie”  wysoko ci  poszczególnych  znaków.  Znak  mog  
znajdowa  si  w stanach[6] 
S=0 je eli wysoko  pozostaje niezmieniona 
S=1 je eli wysoko  uległa zmianie. 
Dzi ki czemu mo na słowa kodowe zapisywa  binarnie. 
Proces osadzania danych t  metod  przebiega dwuetapowo: 

1.

  wysoko ci wszystkich znaków ze zbioru L s  zwi kszane lub zmniejszane o 

losow   warto   w  celu  utrudnienia  osobie  niepowołanej  okre lenia  ich 
wysoko ci w stanie S=0. 

2.

  Słowo kodowe jest zapisywane poprzez modyfikacj  wysoko ci wybranych 

znaków ze zbioru L poprzez zwi kszenie lub zmniejszenie. 

 

Metoda ta zapewnia do  wysoki poziom bezpiecze stwa ukrytych danych, 

gdy   niewielka  zmiana  wysoko ci  znaków  jest  ignorowana  przez  ludzki  mózg. 
Jednak  w  celu  prawidłowego  wyodr bnienia  informacji  niezb dny  jest  dokument 
oryginalny.  U ycie  klucza  steganograficznego  mo e  wyeliminowa   konieczno  
posiadania  niemodyfikowanego  oryginału  dokumentu  –  klucz  mo e  ci le 
wskazywa  na znaki w których zapisane jest słowo kodowe. 

Rys. 4. Działanie algorytmu feature-coding. 

 

background image

 

24 

2.1.4.

 

Metoda białych znaków 

 

Jest to jedyna metoda ukrywania danych w tek cie jawnym, która nie mo e 

by   wykorzystywana  do  dokumentów  przeznaczonych  do  druku.  Wyst powanie 
białych znaków w tek cie jest widoczne dla człowieka jedynie w tedy, gdy s  one 
umieszczone  pomi dzy  znakami  lub  słowami  oraz  gdy  wyst puj   na  pocz tku 
wiersza. Białe znaki ulokowane na ko cu wiersza s  dla człowieka nie widoczne – 
wyj tkiem jest dokument, w którym tekst jest wyrównany do obu marginesów – w 
tym przypadku nie jest zalecane u ywanie tej metody. 
 

Poprzez  dodanie  okre lonej  liczby  białych  znaków  takich  jak  spacja  na 

koniec  wiersza  mo liwe  jest  osadzenie  słowa  kodowego  binarnie.  Ilo   spacji 
okre la maksymaln  ilo  bitów mo liw  do osadzenia w jednym wierszu: 
2 spacje reprezentuj  1 bit, gdzie 1 spacja oznacza 0 binarne, 2 spacje 1 binarne 
4 spacje reprezentuj  2 bity 
8 spacji reprezentuje 3 bity.[1] 
 
Wiersz 1 __ 
Wiersz 2 _ 
Wiersz 3 __ 
 
Zakładaj c,  e  znak  „_”  reprezentuje  spacj ,  na  powy szych  3  wierszach 
zakodowano binarnie 101. 
 
 

Im  wi cej  znaków  spacji  zostanie  u yta,  tym  łatwiej  jest  wykry ,  lub 

uszkodzi  skonstruowany w ten sposób stegosystem. 
 

Mo liwa  do  osadzenia  ilo   danych  jest  mocno  ograniczona,  zakładaj c 

kodowanie tylko 2 znakami spacji na wiersz, w dokumencie zło onym z 80 wierszy 
mo na osadzi  jedynie 10 bajtów danych: 

 

_

8

il wierszy

I

=

 

 

Zamiast  znaków  spacji  mo na  u ywa   dowolnych  innych  białych  znaków, 

niewidocznych dla człowieka. 
 

Przez  swoj   prostot   mechanizm  ukrywania  danych  posiada  bardzo  du e 

ograniczenia:  

background image

 

25 

1.

  jest łatwy do wykrycia 

2.

  bardzo du a podatno  na uszkodzenia 

3.

  niewielka mo liwa ilo  danych do ukrycia 

4.

  wielko  kontenera znacznie wzrasta 

 

2.1.5.

 

metoda syntaktyczna 

 

Metoda  syntaktyczna  bazuje  na  ludzkiej  tendencji  do  popełniania  bł dów 

ortograficznych, gramatycznych i interpunkcyjnych. 
Zakładaj c,  e obie konstrukcje s  gramatycznie poprawne: 
 

1) 

chleb, masło i mleko 

 

2) 

chleb, masło, i mleko 

mo na  zało y ,  i   w  dokumencie  oryginalnym,  zawsze  u ywana  jest  forma  1),  w 
której  nie  wyst puje  przecinek  przed  spójnikiem  „i”.  Konstruuj c  stegosystem 
opartym na interpunkcji zakłada si ,  e: 
binarne 0 okre lone jest jako brak przecinka przed spójnikiem (konstrukcja 1)) 
binarne  1  okre lane  jest  jako  wyst powanie  przecinka  przed  spójnikiem 
(konstrukcja 2)).[8] 
 

Zapisuj c  w  kontener  słowo  kodowe  nale y  zmodyfikowa   ustawienie 

przecinka przed spójnikiem „i” w odpowiednich miejscach tekstu kontenera. 
 

Pewn  odmian  tej metody syntaktycznej jest technika bazuj ca na bł dach. 

Je eli poprawn  konstrukcj  gramatyczn  jest wyst powanie znaku przecinka przed 
słowem „ e” i przypiszemy jej warto  binarn  1, to usuwaj c znak „,” popełniaj c 
przy tym bł d gramatyczny mo na zapisa  stan binarny 0. 
 

Obie  odmiany  algorytmu  steganograficznego  opartego  na  syntaktyce 

charakteryzuj   si   du ym  poziomem  bezpiecze stwa.  W  procesie  detekcji  istnieje 
bardzo  wysokie  prawdopodobie stwo  popełnienia  bł du  II  typu.  Je eli  u yty  jest 
pierwszy wariant, który bazuje jedynie na poprawnie gramatycznych konstrukcjach 
wykorzystanie  programów  do  automatycznej  korekty  dokumentu  nie  uszkodzi 
osadzonej zawarto ci.  
 

Problemem jest dobór kontenera, gdy  równie  w tym przypadku osadzenie 

du ej  ilo ci  danych  jest  niemo liwe.  Dokument  kontenera  mo e  zosta   specjalnie 
stworzony w celu osadzenia w nim danych, lub te , korzystaj c z gotowego tekstu 

background image

 

26 

nale y zapewni  jego wystarczaj c  du  obj to . 
 

Stegosystemy  utworzone  metod   syntaktyczn   doskonale  nadaj   si   do 

przekazywania  ich  w  formie  zarówno  drukowanej  jak  i  elektronicznej.  Poprzez 
wydrukowanie ich na papier nie ma mo liwo ci uszkodzenia informacji niejawnej, 
jak ma to miejsce w technikach line-shift-coding, word-shift-coding, feature-coding 
lub te  metody białych znaków. 
 

2.2.

 

Obrazy graficzne 

 

W  erze  szeroko  rozpowszechnionej  komputeryzacji  obrazy  graficzne  stały 

si   łakomym  k skiem  dla  steganografów.  Główn   cech   stegosystemów  opartych 
na grafice jest bardzo du a ilo  danych, jak  mo na ukry , oraz wysoki poziom ich 
bezpiecze stwa.  
 

Ze  wzgl du  na  budow   formatu  graficznego,  mo na  je  podzieli   na  dwie 

główne kategorie: 

•  obrazy bez kompresji stratnej – s  to formaty takie jak standardowy 

BMP  opracowany  pierwotnie  dla  systemu  IBM  OS/2,  a  nast pnie 
zaadoptowany  na  praktycznie  wszystkie  pozostałe  platformy. 
Charakteryzuje  si   tym,  e  przechowuje  obrazy  jedynie  jako 
kombinacj  3 składowych barw: 

1.

  czerwony (ang. Red) 

2.

  zielony (ang. Green) 

3.

  niebieski (ang. Blue) 

 

posiada  bardzo  prost   konstrukcj   i  składa  si   z  nagłówka,  opcjonalnie  z 

palety  kolorów  i  danych  obrazu,  który  jest  zapisywany  od  dołu  do  góry,  jako 
lustrzane  

odbicie w pionie. W przypadku obrazów zapisanych w wi kszej ilo ci 

kolorów ni    256 paleta kolorów nie wyst puje, a ka dy kolor liczony jest wg 
 

256

65535

K R

G

B

= +

+

 

 

i ka dy piksel obrazu reprezentowany jest przez 3 bajty odpowiedzialne za 

 

poszczególne składowe koloru. W przypadku obrazów w trybie 256 kolorów, 

ka dy  piksel  reprezentowany  jest  przez  jeden  bajt  zawieraj cy  indeks  do  palety 
kolorów.[9] 
 

background image

 

27 

•  obrazy z kompresj  stratn  – najpopularniejszym formatem jest jpeg. 

Standard  został  opublikowany  w  1991  roku  i  definiuje  od  4  typy 
kompresji: 

•  sekwencyjny, oparty na DCT 
•  progresywny, oparty na DCT 
•  sekwencyjny, bez stratny 
•  hierarchiczny 

 

kompresja stratna znacz co wpływa na jako  obrazu, dlatego te , format ten 

jest   zalecany  do  stosowania  w  przypadku  grafiki  nie  zawieraj cej  du ej  ilo ci 
ostrych kraw dzi i małych detali, np.  zdj cia pejza y, portrety. 

 

 
 

Kompresja  stratna  to  metoda  zmniejszania  ilo ci  bitów  potrzebnych  do 

wyra enia  danej  informacji,  która  nie  daje  gwarancji,  e  odtworzona  informacja 
b dzie  identyczna  z  oryginałem.  Dla  niektórych  informacji  algorytm  kompresji 
stratnej mo e odtworzy  informacj  w sposób identyczny.[9] 
 
 

Kompresja  stratna  wykorzystuje  fakt,  e  ludzki  zmysł  wzroku  eliminuje 

najmniej istotne elementy obrazu w celu znacznego zmniejszenia rozmiaru pliku. 
 

W zale no ci od u ywanego formatu pliku kontenera istniej  ró ne metody 

steganograficzne. 
 

2.2.1.

 

Algorytm LSB 

 

Jedna  z  najprostszych  technik  steganograficznych,  przeznaczona  do 

ukrywania  informacji  niejawnej  w  obrazach  bez  kompresji  stratnej, 
nieposiadaj cych palety kolorów – czyli np. Plików zapisanych w standardzie BMP 
TrueColor  24bits.  Algorytm  LSB  bazuje  na  modyfikacji  najmłodszych  bitów 
okre lonych bajtów, LSB – najmniej znacz cy bit (ang. Least Significant Bit). 
Je eli  obraz  zapisany  jest  z  24  bitow   gł bi ,  wówczas  ka dy  piksel 
reprezentowany  jest  przez  3  bajty,  opisuj ce  poszczególne  składowe  barwy.  Do 
zapisania  jednego  bajta  ukrywanych  danych  niezb dne  s   zatem  3  piksele  =  9 
bajtów.  
Kolor  biały  reprezentowany  jako  funkcja  RGB(255,255,255)  w  zapisie  binarnym 

background image

 

28 

b dzie miał posta : 
R              G             B 
11111111 11111111 11111111 
Poddaj c modyfikacji najmłodszy bit ka dego bajtu uzyska si  kolor biały o jeden 
stopie  jasno ci ciemniejszy 
R              G             B 
11111110 11111110 11111110 
czyli  funkcj   RGB(254,254,254).  Dla  niedoskonałego  oka  ludzkiego  taka  zmiana 
koloru  jest  niezauwa alna  i  całkowicie  ignorowana.  Dzi ki  tej  zale no ci  mo na 
swobodnie  modyfikowa   najmłodsze  bity  w  obrazie  zapisuj c  w  nich  informacj  
niejawn   bez  nara ania  obrazu  na  znaczny  spadek  jako ci,  lub  widoczne  gołym 
okiem zmiany. 
Przykładowo dysponuj c obrazem, którego fragment ma posta  binarn : 
00110110 11101001 01011000 11000011 10101000 00011010 00101011 11001011 
i  znakiem  „K”  o  reprezentacji  ASCII  1001011,  mo na  go  zapisa   w  obrazie  w 
nast puj cy sposób: 
00110111 11101000 01011000 11000011 10101000 00011011 00101011 11001011 
 

Do  zakodowania  litery  „K”  niezb dne  było  zmodyfikowanie  jedynie  3 

bajtów  oryginalnego  obrazu,  co  nie  wpłynie  znacz co  na  dany  fragment.  W 
przypadku  maksymalnie  pesymistycznym  wszystkie  8  bajtów  wymagałyby 
zamiany. 
Ilo  danych mo liwych do osadzenia metod  LSB w pliku bmp TrueColor mo na 
wyliczy  ze wzoru: 

 

 

(

)

8

8

K

x y

 

{1} 

gdzie X jest szeroko ci  obrazu w pikselach 
Y jest wysoko ci  obrazu w pikselach 
K jest gł bi  koloru w bitach. 
Oznacza  to,  e  w  niewielkim  obrazku  o  rozdzielczo ci  100px  /  100px  TrueColor 
mo na  osadzi   3750  bajtów  danych,  nie  obni aj c  znacz co  jako ci  obrazu 
kontenera.[4] 
 

Aby  zwi kszy   ilo   danych  mo liwych  do  ukrycia  wykorzystano  słabo  

background image

 

29 

ludzkich  zmysłów  do  rozpoznawania  zmian  poszczególnych  barw.  Zmysł  wzroku 
jest najmniej podatny na zmiany koloru niebieskiego, natomiast najbardziej podatny 
na zmiany barwy zielonej. Stosunek czuło ci dla poszczególnych barw ma posta  
3:6:1  dla  modelu  RGB.  Oznacza  to,  e  modyfikacja  wi kszej  ilo ci  młodszych 
bitów dla barwy niebieskiej nie wpłynie na jako  obrazu.  
Dysponuj c fragmentem obrazu: 
00110110 11101001 01011000 11000011 10101000 00011010 00101011 11001011 
oraz  znakiem  ASCII  „K”  w  postaci  01001011,  mo na  zapisa   go  jedynie  na  3 
bajtach obrazu – nie na o miu jak w poprzednim przypadku: 
00101101 11010110 00101011 
Umo liwia  to  zapisanie  wi kszej  ilo ci  danych  w  tym  samym  obrazie,  jednak 
kosztem jego jako ci. 
Proces ukrywania informacji metod  LSB przebiega wg. Schematu: 
for i=1 to l(c) do 
si<-ci endfor 
for i=1 to l(m) do 
compute index ji where to storage message bit 
sji<-cji endfor 
 
natomiast proces wyodr bniania przyjmuje posta : 
for i=1 to l(M) do 
compute index ji where the ith message bit is stored 
mi<-LSB(cji) 
Endor[4] 
 
 

W procesie wyodr bniania mo e pojawi  si  problem,  e wraz z poprawnie 

odczytan   informacj   niejawn   zostan   wyci gni te  szumy.  Wynika  to  z  tego,  e 
standardowo algorytm nie ma informacji o długo ci ukrytych danych. Aby unikn  
za miecania  wyniku  wyodr bniania  zalecane  jest  zapisanie  przed  danymi 
informacj  i ich długo ci na kilku pierwszych bajtach kontenera. 
 

Konstruuj c  system  steganograficzny  oparty  na  metodzie  LSB  nale y 

dokładnie  wybra   plik  kontenera,  jaki  ma  zosta   u yty.  W  pierwszej  kolejno ci 

background image

 

30 

musi by  spełniona zale no : 
 

| | |

|

C

M

 

gdzie C jest maksymaln  pojemno ci  kontenera w bajtach liczon  ze wzoru {1}, a 
M jest wielko ci  osadzanej wiadomo ci w bajtach. 
 

W  zale no ci  od  u ywanego  wariantu  metody  LSB  nale y  odpowiednio 

dobra   obraz.  W  przypadku  1  metody,  praktycznie  nadaje  si   ka dy  obraz 
spełniaj cy zale no  

| | |

|

C

M

. w przypadku 2 wariantu istotne jest, aby w obrazie 

nie wyst powały płynne przej cia mi dzy odcieniami jednej barwy (tzw. Gradient), 
gdy  modyfikacja najmłodszych bitów mo e znacznie zaburzy  płynno  przej cia. 
 

2.2.2.

 

Obrazy z palet  kolorów 

 

W  plikach  graficznych,  w  których  wyst puje  paleta  kolorów  zastosowanie 

metody zmiany najmłodszego bitu jest niemo liwe. Kolor poszczególnego piksela 
nie jest reprezentowany przez 3 bajty lecz jedynie 1 bajtem, zawieraj cym indeks 
do  tablicy  –  palety  kolorów.  Zmodyfikowanie  najmłodszego  bajtu  w  indeksie 
spowoduje  znaczne  zniszczenie  obrazu,  gdy   indeksy  zaczn   wskazywa   na 
zupełnie inne kolory.[10] 

Rys.5.  Paleta kolorów – indeksy 

 

 

Proces ukrywania danych w obrazach z palet  przebiega nast puj co: 

1.

  zredukowanie palety barw. 

Proces  ten  obni a  jako   kontenera  w  stosunku  do  oryginału  poprzez 
zmniejszenie ilo ci wyst puj cych w nim kolorów. Wykonuje si  to poprzez 
zmian  odwoła  indeksów, tak, aby barwy zbli one do siebie zast powany 
były tylko jednym kolorem. Redukcja palety wykonywana jest o warto  

background image

 

31 

2

n k

=

, gdzie k przyjmuje warto ci od 1. 

zredukowanie  palety  256  kolorów  o  n=3  spowoduje,  e  obraz  b dzie 
reprezentowany  jedynie  przez  32  kolory  co  spowoduje  znaczn   utrat  
jako ci. 
Redukcja  ma  na  celu  zapewnienie  okre lonej  nadmiarowo ci  danych  w 
palecie, która nast pnie b dzie u yta do osadzania danych. 
Najprostszym  sposobem  na  zredukowanie  palety  jest  zastosowanie  metody 
histogramowej,  gdzie  redukowane  s   kolory  najrzadziej  wyst puj ce  w 
obrazie  –  takie  do  których  indeksu  jest  najmniej  odwoła .  Jest  to  metoda 
zawodna,  gdy   niektóre  obrazy  charakteryzuj   si   tym,  e  kolor,  który  nie 
jest  cz sto  wykorzystywany  mo e  mie   znacz cy  wpływ na  jako   obrazu. 
Doskonalsz  metod  jest redukcja kolorów podobnych:[11] 
niech  w  palecie  wyst puj   barwy  o  zapisie  dziesi tnym  145  144  i  147, 
wówczas  redukcja  kolorów  podobnych  mo e  wyeliminowa   wskazania 
indeksów  do  kolorów  145  i  147  zast puj c  je  kolorem  144.  Spowoduje  to 
spadek jako ci obrazu, jednak przy odpowiednim skonstruowaniu kontenera, 
strata mo e by  mało zauwa alna. 
 

2.

  Zwielokrotnienie palety kolorów. 

Po  zredukowaniu  ilo ci  kolorów  w  palecie  barw,  tablic   nale y 
zwielokrotni   w  celu  uzyskania  identycznego  rozmiaru  w  stosunku  do 
oryginału.  Je eli  paleta  zredukowana  była  ze  współczynnikiem  n=2  to 
zwielokrotnienie  równie   musi  by   przeprowadzone  n-razy.  Wynikiem 
zwielokrotnienia jest n identycznych palet umieszczonych jedna pod drug , 
przez co dany kolor wyst puje n-razy. 

 

 

 

 

 

 
 
 
 
 

Rys. 6. Zwielokrotnione palety barw 

background image

 

32 

 

 

 

3.

  Zmiana indeksów. 

W  zwi zku  z  tym,  e  cz

  kolorów  została  usuni ta  z  obrazu,  kontener 

nale y przeindeksowa  w taki sposób, aby „martwe” indeksy odnosiły si  do 
istniej cych kolorów w palecie. Wykonuje si  to poprzez obliczenie normy 
luminancji  dla  poszczególnych  barw  i  wskazanie  na  indeks  najbli szy  w 
palecie. Norm  luminancji mo na wyliczy  z normy euklidesowej: 

2

2

2

11

12

21

22

31

32

|

|

((

)

(

)

(

) )

W

L

L

L

L

L

L

=

+

+

 

 {2} 

natomiast  luminancj   jako  sum   warto ci  składowych  RGB  z 
uwzgl dnieniem wag: 

1

2

3

L L L

L

= + +

, gdzie: 

L1=3R; 
L2=6G; 
L3=1B; 
współczynniki  równania  {2}  L11,  L12,  i  L13  s   współczynnikami  dla 
pierwszej  porównywalnej  barwy,  natomiast  L12,  L22  i  L32  s  
współczynnikami dla drugiej porównywalnej barwy. 

4.

  Wła ciwe osadzenie danych 

Informacja  niejawna  kodowana  jest  na  indeksach  odwołuj cych  si   do 
palety. Je eli tablica kolorów została zredukowana ze współczynnikiem n=2, 
wówczas  jeden  kolor  wyst puje  2  razy  w  palecie.  Modyfikuj c  indeksy  w 
kontenerze,  tak  aby  poszczególne  piksele  odwoływały  si   zarówno  do 
podstawowej  palety  jak  i  zarówno  do  jej  kopii  mo na  zakodowa ,  e 
odwołanie  do  pierwszej  palety  jest  równoznaczne  z  binarn   warto ci   1, 
natomiast odwołanie do drugiej palety jest równoznaczne z binarn  warto ci  
0.  Wówczas  osiem  pikseli  obrazu  mo e  przechowywa   1  bajt  danych 
informacji  niejawnej.  Redukuj c  palet   z  wy szym  współczynnikiem  n 
mo liwe  jest  zakodowanie  1  bajta  niejawnych  danych  na  mniejszej  ilo ci 
bajtów kontenera. 

5.

  Wymieszanie palety 

W ostatnim kroku, ka d  kopi  palety nale y wymiesza , tak aby wizualnie 
nie  było  wida ,  e  wyst puje  kilka  identycznych  kopii  palety,  zmieniaj c 

background image

 

33 

równocze nie odwołania indeksów. 

 

 

 

 

 

 

 

 

Sił   algorytmu  jest  fakt,  e  modyfikuj c  kolory  w  obrazie  poprzez  np. 

ciemnianie  lub  rozja nianie  poszczególnych  fragmentów  obrazu  nie  spowoduje 

utraty  osadzonych  informacji.  Zmianie  ulegn   jedynie  poszczególne  kolory  w 
palecie  kolorów,  jednak  indeksy  do  nich  pozostan   niezmienione,  przez  co  nie 
nast pi  utrata  danych.  W  procesie  detekcji  istnieje  wysokie  prawdopodobie stwo 
popełnienia  bł du  zarówno  I  jak  i  II  typu.  Stego-only  attack  jest  praktycznie 
niemo liwy  do  poprawnego  przeprowadzenia  –  niezb dne  jest  posiadanie 
oryginalnego, niemodyfikowanego pliku z obrazem.[10] 
 

2.2.3.

 

 DCT 

DCT (ang. Discreet Cosinus Transform) – dyskretna transformata cosinusowa 
to jedna z najpopularniejszych blokowych transformat danych. Jest szczególnie 
popularna w stratnej kompresji danych[9] 

 
 

Transformata  DCT  jest  wykorzystywana  min.  w  obrazach  formatu  jpeg, 

które  dzi ki  swojej  popularno ci  w  sieci  web  stały  si   jednym  z  głównych 
zainteresowa   steganografów.  Algorytm  kompresji  stratnej  w  formacie  jpeg 
przebiega nast puj co: 

1.

  konwersja obrazu z kanałów RGB na luminancj  i 2 kanały chrominancji 

2.

  wst pne odrzucenie cz ci pikseli ze wzgl du na ni sz  rozdzielczo  barwy 

oka ludzkiego ni  rozdzielczo ci jasno ci 

3.

  kanały s  dzielone na bloki 8x8 

4.

  na  wyszczególnionych  blokach  dokonywana  jest  dyskretna  transformata 

cosinusowa, zamieniaj c warto ci poszczególnych pikseli na  redni  warto  
wewn trz bloku oraz cz stotliwo ci zmian. 

5.

  Zast pienie  rednich warto ci wewn trz bloku przez ró nice wobec warto ci 

poprzedniej  

6.

  zamiana warto ci zmiennoprzecinkowych na warto ci całkowite powoduj c 

utrat  cz ci danych – kwantyzacja 

7.

  współczynniki  DCT  umieszcza  si   tak,  aby  warto ci  zerowe  wyst powały 

background image

 

34 

obok siebie 

8.

  współczynniki niezerowe s  kompresowane algorytmem Huffmana. 

Po  dokonaniu  kompresji  obrazu  za  pomoc   DCT  mo na  zauwa y   pewne  efekty 
blokowe  mog ce  znacznie  wpływa   na  jako   obrazu,  w  zale no ci  od  u ytego 
stopnia kompresji: 
- Obraz niekompresowany o rozmiarze 196662 bajtów: 

rys. 7. Płynne przej cia mi dzy barwami spirali 
 

- Obraz potraktowany bardzo siln  kompresj  DCT o rozmiarze 1741 bajtów: 

Rys. 8. Widoczne efekty blokowe 
 

 

W pierwszym etapie działania algorytmu steganograficznego bazuj cego na 

plikach  w  formacie  jpeg  nast puje  podział  kontenera  na  bloki  o  rozmiarze  8x8 
pikseli w identyczny sposób co przy dyskretnej transformacie cosinusowej. Zakłada 
si ,  e  ka dy  z  bloków  mo e  przechowywa   jedynie  1  bit  informacji  niejawnej, 
poprzez zmodyfikowanie np. współczynników kwantyzacji luminancji.[9] 

background image

 

35 

Rys. 9. Tablica kwantyzacji luminancji wykorzystywana w formacie jpeg.[4] 

 
Osadzanie  danych  powinno  przebiega ,  w  odró nieniu  od  metody  LSB  lub 
modyfikacji  palety  kolorów  w  najbardziej  istotnych  elementach  obrazu  –  fakt  ten 
zapewnia wysoki poziom bezpiecze stwa i odporno ci na uszkodzenia poprzez np. 
ponown  kompresj , danych niejawnych. 
 

Ka dy wybrany blok b

i

 mo e przechowywa  tylko jeden i-ty bit osadzanych 

danych. Aby prawidłowo ukry , a nast pnie wyodr bni  dane na pocz tku nale y 
ustali   poło enie  dwóch  modyfikowanych  współczynników  kwantyzacji  (u1,v1)  i 
(u2,v2).  
 

Je eli 

1

1

2

2

( , )

( , )

i

i

B u v

B u v

>

  wówczas  blok  kontenera  przechowuje  binarn  

warto  1, w przeciwnym wypadku 0. 
funkcja B

i

 ma posta : 

( )

i

i

B

D b

=

[12] 

 

Odpowiednio  manipuluj c  współczynnikami  kwantyzacji  dla  poszczególnych 

bloków danych mo na ukry  du  ilo  informacji w sposób bardzo bezpieczny – 
dane  osadzone  s   w  wa nych  punktach  obrazu,  oraz  s   odporne  na  stratn  
kompresj  obrazu.  

background image

 

36 

2.3. Protokoły sieciowe 

 

Powstanie  protokołów  sieciowych  z  rodziny  stosu  TCP/IP  stworzyło  nowe 

mo liwo ci  dla  steganografii  cyfrowej.  Du a  ilo   danych  przemierzaj cych  sie  
zarówno  globaln   jak  i  lokaln   umo liwiła  transmitowanie  równie  du ej  ilo ci 
informacji  niejawnych  w  bardzo  bezpieczny  sposób,  bez  konieczno ci  u ywania 
jakiegokolwiek  pliku  zewn trznego  jako  kontenera  na  dane.  Same  protokoły 
posiadaj ce budow  blokow  umo liwiaj  osadzenie pewnej ilo ci danych. 
 

TCP/IP jest protokołem otwartym, co oznacza mo liwo  komunikacji mi dzy 

dowoln  kombinacj  urz dze , bez wzgl du na ich fizyczn  ró norodno . {wiki} 
 

Model stosu protokołów TCP/IP posiada czterowarstwow  struktur : 

1.

  warstwa ł cza, obsługuj ca transmisj  pakietów 

2.

  warstwa sieciowa 

3.

  warstwa transportowa, odpowiedzialna za dostarczenie pakietów 

4.

  warstwa aplikacji [13] 

 

Ka da  transmisja  danych  oparta  o  protokoły  TCP/IP  bazuje  na  datagramach, 

strumie   danych  przeznaczony  do  wysłania  jest  dzielony  na  sprecyzowane  na 
poziomie  specyfikacji  protokołu  paczki  danych,  opatrzone  odpowiednim 
nagłówkiem  zawieraj ce  informacje  niezb dne  do  prawidłowego  dostarczenia  i 
odebrania ich przez adresata. Algorytmy steganograficzne wykorzystuj ce TCP/IP 
opieraj   si   w  wi kszo ci  na  wyst powaniu  pewnej  nadmiarowo ci  danych  w 
nagłówkach  pakietów,  dzi ki  czemu  sam  datagram  nie  ulega  uszkodzeniom  lub 
zmianie.  Bardzo  du a  ilo   transmitowanych  pakietów  w  jednostce  czasu 
umo liwia  przesłanie  du ej  porcji  danych  niejawnych,  bez  konieczno ci 
przygotowywania  specjalnego  pliku  kontenera,  co  jest  zalet   takich  systemów. 
Wad   jest  to,  e  aby  skutecznie  przesła   osadzone  steganograficznie  dane  do 
adresata  musi  nast pi   bezpo rednia  transmisja  danych  pomi dzy  nadawc   jak  i 
odbiorc .  Niemo liwe  jest  przechowywanie  sygnału  w  formie  np.  pliku,  gdy  
wszystkie niejawne dane ukrywane s  w nagłówkach, które ulegaj  utracie zaraz po 
ich odebraniu lub zako czeniu transmisji. 
 

background image

 

37 

2.3.1.

 

Protokół TCP 

 

Jest to strumieniowy protokół obsługi transmisji pomi dzy dwoma hostami w 

sieci.  Zapewnia  wiarygodny  sposób  dostarczenia  pełnego  strumienia  danych  do 
odbiorcy  poprzez  kontrol   bł dów  oraz  numery  sekwencyjne,  dzi ki  którym 
mo liwe jest ponowne poprawne zło enie danych w cało . 
 

Poł czenie TCP nast puje w trzech krokach (ang. three-way handshake): 

1.

  Nadawca wysyła pakiet z ustawion  flag  SYN. 

2.

  Je eli odbiorca chce odebra  poł czenie odsyła pakiet z ustawionymi flagami 

SYN i ACK. 

3.

  Nadawca wysyła pierwszy pakiet danych z aktywn  flag  ACK i nieaktywn  

ju  flag  SYN. 

 

Je eli  host  odbiorcy  nie  mo e  obsłu y   poł czenia  odsyła  pakiet  z  ustawion  

flag   RST.  W  momencie  zamkni cia  poł czenia  wysyłany  jest  datagram  z 
ustawion  flag  FIN. 

 

Rys. 10. Schemat budowy nagłówka TCP[13] 

 

 

 

Technika  steganograficzna  ukrywaj ca  dane  w  nagłówkach  TCP  bazuje  na  6 

bitach przeznaczonych na flagi, odpowiedzialne za odpowiedni interpretacj  pakietu 
przez  transmituj ce  hosty.  Ka da  z  flag  mo e  przyj   warto ci  z  zbioru  {0,1}. 
istniej   64  kombinacje  ustawienia  flag,  jednak  w  trakcie  normalnej  transmisji 
danych wykorzystywanych jest jedynie 29 kombinacji. 
 

Ustawienie flagi URG na warto  0 spowoduje,  e odbiorca b dzie ignorował 

background image

 

38 

dane zapisane w polu nagłówka Urgent Pointer, co umo liwia na zapisanie tam 16 
bitów danych, nie maj cych  adnego wpływu na poprawno  komunikacji danych. 
Odpowiednio skonstruowany program pozwoli na odczytanie pola Urgent Pointer i 
zło enie z nich osadzon  wiadomo . [14] 
 

2.3.2.

 

Protokół Ipv4 

 

Protokół  odpowiedzialny  za  przekazanie  datagramów  pomi dzy  dwoma 

hostami w sieci. Rozpoznawanie i adresowanie hostów polega na identyfikacji po 
unikatowych w obr bie danej sieci adresach IP. Cech  charakterystyczn  Ipv4 jest 
fragmentacja  datagramów  wynikaj ca  z  ró norodnej  konstrukcji  sieci,  dane 
pofragmentowane  zostaj   ponownie  prawidłowo  zło one,  pomimo  faktu,  e  mog  
zosta  odebrane w ró nej kolejno ci, niekoniecznie takiej w jakiej zostały wysłane. 
Wi e  si   to  z  ustanowieniem  ł cza  wirtualnego  przebiegaj cego  poprzez  ró ne 
w zły sieciowe, tak,  e datagramy mog  by  transmitowane ró nymi drogami. 

 

Rys. 11. Budowa nagłówka protokołu IP 

 
 

Konstrukcja  nagłówka  protokołu  IP  zakłada,  e  wyst puj   w  nim  trzy  bity 

przeznaczone na flagi wymuszaj ce mi dzy innymi proces fragmentacji pakietu: 

1.

  pierwszy bit zarezerwowany 

2.

  drugi bit – flaga DF – je eli DF=1 to nast puje wymuszenie fragmentacji 

3.

  trzeci bit – flaga MF  

 

Zakładaj c stał  i niezmienn  warto  MTU sieci, czyli maksymaln  wielko  

datagramu  (ang.  Maximum  Transfer  Unit)  mo na  manipulowa   bitem  DF  w  taki 
sposób,  aby  mo liwe  było  przesłanie  informacji  niejawnej  bit  po  bicie  w  ka dej 

background image

 

39 

ramce IP. Mo liwe jest to jednak, wył cznie w sieciach lokalnych o stałej warto ci 
MTU. W sieci globalnej Internet, metoda ta nie sprawdza si  ze wzgl du na mog c  
wyst pi  ró norodno  warto ci MTU na poszczególnych w złach transmisyjnych. 
 

Do  przesyłania  przekazów  steganograficznych  poprzez  sie   Internet  mo na 

zastosowa   inn   własno   protokołu  IP.  Pole  opcji  jest  zazwyczaj 
niewykorzystywane  w  sieci  globalnej,  sprawia  to,  e  do osadzenia  danych  mo na 
przeznaczy  5 32 bitowych słów danych. Modyfikuj c pola version, internet header 
length oraz identification mo na przygotowa  struktur  nagłówka odpowiedni  dla 
osadzenia danych. 
Proces osadzania danych przebiega nast puj co: 

1.

  dwa  czterobitowe  pola  version  i  internet  header  length  przyjmuj  

odpowiednie warto ci po usuni ciu pola opcji. Niech bity te b d  oznaczone 
jako [h1...hs]. Stanowi  one pierwsze 8 bitów pierwszego słowa nagłówka. 

2.

  Pole  identification  stanowi  pierwsze  16  bitów  drugiego  słowa  nagłówka  i 

niech  b d   oznaczone  jako  [i1...is].  Pierwsze  8  bitów  pierwszego  słowa  i 
drugiego słowa nale y traktowa  indywidualnie. Pierwsze 8 bitów powinno 
da  warto ci [h1...hs]=01000101, natomiast 8 bitów drugiego słowa warto ci 
[c1...cs] mog ce zawiera  osadzane dane. 

3.

  Pierwsze 8 bitów pierwszego i drugiego słowa powinny by  poddane funkcji 

XOR 

4.

  pozostałe  8  bitów  pola  identification  mo e  zosta   wygenerowana  losowo  i 

zosta   poł czone  z  pierwszymi  8  bitami  w  celu  uzyskania  unikatowej 
warto ci, niezb dnej do prawidłowej transmisji danych.[14] 

 

Utworzony  w  ten  sposób  datagram,  zawieraj cy  ukryty  przekaz  mo e  by  

transmitowany  w  sieci  Internet.  Je eli  nast pi  konieczno   pofragmentowania 
danych,  to  przy  ponownym  jej  zło eniu  nie  nast pi  uszkodzenie  zawartych 
informacji. 
 

Protokoły  TCP  oraz  IP  nie  s   jedynymi  protokołami  mo liwymi  do  u ycia  w 

steganografii,  praktycznie  dla  ka dego  protokołu  mo liwe  jest  opracowanie 
odpowiedniego algorytmu, jednak e ich wykorzystanie mo e by  ograniczone. 
 

Metody  steganograficzne  oparte  na  transmisji  sieciowej  posiadaj   wysoki 

poziom  bezpiecze stwa,  jednak  wykrycie  ich  jest  mo liwe  poprzez  długotrwałe 

background image

 

40 

analizowanie  danego  fragmentu  sieci  pod  k tem  budowy  nagłówków.  Ka da 
modyfikacja nagłówka mo e zosta  odebrana jako anomalia, jednak  momencie gdy 
powtarza si  ona cyklicznie i tylko pomi dzy okre lonymi hostami w sieci, istnieje 
wysokie  prawdopodobie stwo,  e  zostanie  to  odebrane  jako  celowe  działania 
steganograficzne. 
 

Wad   protokołów  sieciowych  jako  kontenera  jest  fakt,  e  niemo liwe  jest 

przechowywanie  zabezpieczonych  steganograficznie  informacji.  Mo liwa  jest 
jedynie ich transmisja w czasie rzeczywistym. 

background image

 

41 

3.

 

D wi k jako kontener 

 

D wi k  mo e  wyst powa   w  dwóch  postaciach  –  jako  sygnał  analogowy 

oraz  sygnał  cyfrowy.  Aby  sygnał  d wi kowy  mógł  by   przetwarzany  przez 
komputer  musi  on  ulec  zmianie  z  analogowego  na  cyfrowy.  Wykonywane  jest  to 
poprzez próbkowanie sygnału analogowego i zapisywanie warto ci próbek do pliku. 
Zsamplowany  d wi k  traci  jednak  na  jako ci  w  procesie  próbkowania,  gdy  
analizowanie  sygnału  odbywa  si   z  pewn   szybko ci ,  która  nie  jest  w  stanie 
wiernie odwzorowa  sygnału analogowego. 
 
 
 
 
 
 

Rys. 12. Samplowanie d wi ku analogowego 

 
Czym ni szy czas pomi dzy pobieraniem kolejnych próbek (wy sza cz stotliwo  
samplowania) tym wierniejsze odwzorowanie sygnału.  
 

Odpowiednio  przygotowany  plik  audio  stanowi  doskonały  kontener  dla 

ukrywanych  informacji,  dzi ki  zastosowaniom  zaawansowanych  technik 
steganograficznych  mo liwe  jest  osadzenie  du ej  ilo ci  danych  niejawnych  w 
stosunkowo  krótkim  pliku  audio,  przy  zachowaniu  wysokiego  poziomu 
bezpiecze stwa na wykrycie lub uszkodzenie. Przy zastosowaniu superdokładnych 
przetworników  analogowo  -  cyfrowych  i  cyfrowo  –  analogowych  mo liwe  jest 
poprawne wyodr bnienie informacji z sygnału analogowego, powstałego z sygnału 
cyfrowego zawieraj cego dodatkowe informacje. 
 

Steganografia  w  d wi ku  analogowym  jest  trudna  do  zrealizowania,  gdy  

wymaga realizacji bezpo rednio na sprz cie o du ej mocy obliczeniowej, b d cego 
w  stanie  dokona   oblicze   transformaty  Fouriera  w  czasie  rzeczywistym. 
Wyodr bnienie tak osadzonej informacji wymaga porównywalnego sprz tu. 
 

Zastosowanie sygnału cyfrowego, zapisanego na no nikach w postaci plików 

jest  znacznie  prostsze  i  skuteczniejsze.  Transmisja  danych  za  pomoc   sygnału 

background image

 

42 

analogowego  podlega  tym  samym  ograniczeniom  co  w  przypadku  metod 
steganograficznych  opartych  na  stosie  protokołów  TCP/IP  –  niemo liwe  jest 
składowanie  sygnału  bez  uszkodzenia  osadzonej  w  nim  zawarto ci  za  pomoc  
no ników analogowych, pomin  tu mo na urz dzenia doskonale czułe, które nie s  
w  u ytku  powszechnym.  Informacja  zapisana  w  cyfrowym  pliku  audio  mo e  by  
przesyłana  na  ró ne  sposoby,  nie  jest  konieczne  odtworzenie  pliku  w  celu 
wyodr bnienia informacji – wystarczy fakt jego posiadania. 
 

3.1.

 

HAS (ang. Human Auditory System) - ludzki układ słuchu. 

 

Steganografia  w  plikach  audio  stanowi  wi ksze  wyzwanie  ni   jej 

odpowiednik  w  plikach  graficznych.  Ludzki  system  słuchu  jest  bardziej  czuły  na 
zakłócenia spowodowane przez biały szum AWGN (ang. Additive White Gaussian 
Noise). Zakłócenia te mog  by  wykrywalne nawet gdy wyst puj  o 70db ciszej od 
poziomu  normalnego  d wi ku.  Z  drugiej  strony,  układ  HAS  charakteryzuje  si  
nisk   czuło ci   na  zmiany  siły  tonu.  Oznacza  to,  e  gło ne  d wi ki  przykrywaj  
d wi ki  o  ni szej  gło no ci,  przez  co  staj   si   one  niesłyszalne.  Cecha  ta  jest 
wykorzystywana min. w kompresji sygnałów d wi kowych mp3.[15] 
 

MP3  (ang.  MPEG  Audio  Layer-3)  jest  przykładem  kompresji  stratnej 

opracowanej  do  zmniejszania  obj to ci  plików  muzycznych.  Bazuje  na 
odpowiednio  zmodyfikowanej  dyskretnej  transformacie  cosinusowej  i  modelu 
psychoakustycznym.  D wi k  skompresowany  z  przepływno ci   (ang.  bitrate) 
128kbps  daje  zazwyczaj  jako   niskiej  klasy  odtwarzaczom  CD.  Bitrate  rz du 
192kbps jest dla wi kszo ci ludzi nieodró nialny od oryginału.[9] 
 

Model  psychoakustyczny  jest  matematycznym  modelem,  mówi cym  jakie 

informacje o d wi ku s  rozpoznawalne dla ludzkiego zmysłu słuchu, przykładowo 
czuło   ludzkiego  ucha  na  d wi ki  o  ró nych  cz stotliwo ciach  (d wi ki  bardzo 
niskie i bardzo wysokie s  niesłyszalne). Zakres cz stotliwo ci słyszalnego d wi ku 
szacuje si  w przedziale od 20hz do 20khz i maksymaln  czuło  w zakresie 2khz-
4khz. 
Badaj c  ludzki  układ  słuchowy  zaobserwowano  zjawisko  maskowania  jednych 
d wi ków przez drugie. Wyró nia si  3 typy maskowania: 

•  maskowanie jednoczesne - ciche d wi ki o cz stotliwo ciach zbli onych do 

background image

 

43 

cz stotliwo ci d wi ku gło nego nie s  słyszalne 

•  maskowanie pobod cowe - gło ny d wi k potrafi zagłuszy  cichsze d wi ki 

wyst puj ce bezpo rednio po nim 

•  maskowanie wsteczne - cichy d wi k, poprzedzaj cy d wi k gło ny nie jest 

słyszalny.[15] 

 
 

Pewne  niedoskonało ci  układu  HAS  s   podstaw   dla  konstruowania 

systemów  steganograficznych.  Jest  to  min.  wspomniane  wcze niej  zjawisko 
maskowania  lub  chocia by  przyzwyczajenie  ludzkie  do  niskiej  jako ci  d wi ku 
posiadaj cego  słyszalne  zakłócenia.  Przyzwyczajenie  to  mo e  wynika   z  niskiej 
jako ci  odbiorników  radiowych  lub  telewizyjnych,  gdzie  wyst powanie  szumów, 
trzasków lub innych zakłóce  jest rzecz  normaln  i ju  praktycznie nie dra ni c . 
Umo liwia  to  dodanie  odpowiednio  skonstruowanych  zanieczyszcze   do  sygnału 
kontenera  tak,  aby  jednocze nie  zawierały  informacj   niejawn ,  ale  równie   nie 
obni ały znacz co jako ci d wi ku. 
 

3.2.

 

Zało enia bezpiecznego stegosystemu 

Konstruuj c  bezpieczny  stegosystem  oparty  na  sygnale  audio  nale y  spełni  

poni sze warunki: 

•  ka da  osadzona  informacja  powinna  by   odporna  na  przetwarzanie  pliku 

kontenera  poprzez  jego  kompresj /dekompresj   w  stopniu  generuj cym 
akceptowaln   jako   wynikow   d wi ku.  Niedopuszczalne  jest,  aby 
podziałanie na stegosystem kompresj  o niewielkim współczynniku redukcji 
sygnału spowodowało uszkodzenie wiadomo ci. 

•  ka da wiadomo  powinna by  odporna na ataki maj ce na celu jej wykrycie 

lub uszkodzenie. 

 
 

W  celu  uzyskania  wi kszego  poziomu  bezpiecze stwa  danych  mo na 

zastosowa  zwielokrotnienie ukrywanych danych i ka d  z kopii umie ci  w innej 
cz ci  pliku  kontenera.  W  przypadku  uszkodzenia  pliku  lub  strumienia  w  trakcie 
przesyłu 

danych 

istnieje 

wy sze 

prawdopodobie stwo 

prawidłowego 

wyodr bnienia osadzonych informacji, ni  w przypadku, gdy ukryta zostanie tylko 

background image

 

44 

jedna kopia wiadomo ci.  
 

Regulacja  wykorzystania  pasma  w  sieciach  komputerowych  mo e 

spowodowa ,  e sygnał strumieniowy audio b dzie ulegał uszkodzeniom w trakcie 
przesyłu  w  przypadku  wysokiego  obci enia  ł cza.  Mechanizm  ten  jest 
powszechnie wykorzystywany przy dzieleniu pasma, gdy  u jego zało e  le y fakt, 

e  uszkodzenie  strumienia  multimedialnego  jest  dopuszczalne  i  nie  wpłynie 

znacz co  na  odbiór  informacji,  czego  nie  mo na  powiedzie   o  zwykłych  danych 
binarnych,  które  nie  mog   ulec  uszkodzeniom.  Oznacza  to,  e  w  przypadku 
jednoczesnego  działania  radia  internetowego  i  pobierania  np.  archiwum, 
przeznaczane jest szersze pasmo dla pobierania pliku -  aden bajt danych nie mo e 
zosta   utracony.  W  przypadku  utraty  cz ci  pakietów  z  pasma  wykorzystanego 
przez  radio,  wyst pi   jedynie  słyszalne  zakłócenia,  jednak  interpretacja  sygnału 
b dzie mo liwa. 
 

3.3.

 

 Wybrane metody 

3.3.1.

 

 LSB 

 

Zasada  działania  techniki  LSB  (ang.  Least  Significant  Bite)  w  plikach 

muzycznych  jest  zbli ona  do  tej  samej  metody  u ywanej  przy  algorytmach 
bazuj cych na grafice. 
 

W  standardowym  algorytmie  LSB  wybierany  jest  pewien  zbiór  danych 

reprezentuj cych pojedyncze d wi ki – sampli za pomoc  klucza lub okre lonego z 
góry algorytmu. Ukrywanie informacji odbywa si  poprzez zamian  najmłodszych 
bitów poszczególnych bajtów wybranego zestawu sampli.  
Xj[i]->m[i]; 
 

Du y  rozmiar  plików  audio  umo liwia  umieszczenie  w  nich  du ej  ilo ci 

danych  poprzez  manipulowanie  najmłodszym  bitem.  Ze  wzgl du  na  specyficzn  
cech   układu  HAS,  manipulowanie  najmłodszymi  bitami  powinno  by  
przeprowadzone ostro nie, wysoka czuło  ludzkiego ucha na biały szum AWGN 
powoduje,  e ilo  modyfikowanych bitów nie mo e by  zbyt du a. Powstałe w ten 
sposób  zniekształcenia  d wi ku  mog   by   łatwo  wykrywalne.  Ogranicza  to 
znacznie  ilo   mo liwych  do  wykorzystania  bitów.  Badania  [16]  wykazały,  e 
wprowadzenie  informacji  na  warstwy  LSB  powy ej  4  spowoduje  znaczn   utrat  

background image

 

45 

jako ci kontenera i znacz ce obni enie poziomu bezpiecze stwa – zmiany były ju  
dobrze słyszalne.  
 

Wyodr bnienie  osadzonych  wcze niej  danych  wykonywane  jest  poprzez 

odczyt okre lonej ilo ci najmłodszych bitów z zestawu danych opisanych kluczem 
lub algorytmem. 
 

Pomimo  faktu,  e  mo liwe  jest  osadzenie  du ej  ilo ci  danych  algorytmem 

LSB,  nie  oferuje  on  wystarczaj cego  poziomu  bezpiecze stwa  danych.  Ich 
uszkodzenie  lub  całkowite  zniszczenie  jest  mo liwe  poprzez  np.  przypadkow  
zmian  losowo wybranych najmłodszych bitów w całym pliku kontenera – jest to 
jeden z najprostszych ataków prowadzonych na metod  LSB.  
 
 

W  pracy  „Increasing  Roustness  of  LSB  Audio  Steganography  by  Reduced  

Distortion LSB Coding” przeprowadzonej na University of Oulu w Finlandii przez 
Cvejica  i  Sappanena  zaproponowano  zmodyfikowan   wersj   algorytmu  LSB. 
Zaproponowany algorytm pozwala na przeniesienie ukrywanych danych z warstwy 
4 na warstw  6. Podstawow  ró nic  w działaniu jest fakt,  e standardowy algorytm 
zast puje odpowiedni bit sampla na odpowiedni bit tajnej wiadomo ci, je eli bity te 
si  ró ni . Dysponuj c danymi: 
16 bitowa próbka danych o warto ci: 0000000000001000 
fragment tajnej wiadomo ci: 00000000 
osadzanie danych w 4 warstwie LSB spowoduje,  e warto  modyfikowanej próbki 
danych b dzie: 
16 bitowa próbka danych po modyfikacji: 0000000000000000. 
spowoduje  to  znaczn   zmian   d wi ku,  gdy   z  warto ci  8  spadł  on  nagle  do 
warto ci 0. 
Zmodyfikowana metoda LSB umo liwia bezpieczne osadzenie danych nawet na 6 
warstwie  LSB,  poprzez  zamian   warto ci  sampla  na  najbardziej  zbli ony  do 
oryginału. 
16 bitowa próbka danych o warto ci: 0000000000001000 
fragment tajnej wiadomo ci: 00000000 
Wynikiem działania zaproponowanego w [16] algorytmu b dzie sygnał: 
 16 bitowa próbka danych o warto ci: 0000000000000111 

background image

 

46 

Jak wida , zmiana d wi ku nast piła jedynie o 1 a nie warto  8 jak w przypadku 
standardowej techniki. Dzi ki temu, mo na podnie  próg bezpiecznej warstwy dla 
LSB  z  4  na  6,  a  co  za  razem  idzie  podniesienie  bezpiecze stwa  danych.  Mimo 
przej cia  na  drug   warstw   kontener  nie  straci  jako ciowo  tyle,  co  w  przypadku 
poprzedniej  metody.  Zamiana  sampla  na  najbardziej  zbli ony  mo e  zapewni  
mniejsz  ilo  „niezgodno ci” pomi dzy stegosystemem a oryginałem. 
 
 

Zaproponowany w [16] algorytm ma posta : 

if host sample a>0  
 

if bit 0 is to be embedded  

 

 

if a i-1 =0 then a i-1 a i-2 ...a 0 =11...1  

 

 

if a i-1 =1 then a i-1 a i-2 ...a 0 =00...0 and  

 

 

 

if a i+1 =0 then a i+1 =1  

 

 

 

else if a i+2 =0 then a i+2 =1  

 

 

 

...  

 

 

 

else if a 15 =0 then a 15 =1  

 

else if bit 1 is to be embedded  

 

 

if a i-1 =1 then a i-1 a i-2 ...a 0 =00...0  

 

 

if a i-1 =0 then a i-1 a i-2 ...a 0 =11...1 and  

 

 

 

if a i+1 =1 then a i+1 =0  

 

 

 

else if a i+2 =1 then a i+2 =0  

 

 

 

...  

 

 

 

else if a 15 =1 then a 15 =0  

if host sample a<0  
 

if bit 0 is to be embedded  

 

 

if a i-1 =0 then a i-1 a i-2 ...a 0 =11...1  

 

 

if a i-1 =1 then a i-1 a i-2 ...a 0 =00...0 and  

 

 

 

if a i+1 =1 then a i+1 =0  

 

 

 

else if a i+2 =1 then a i+2 =0  

 

 

 

...  

 

 

 

else if a 15 =1 then a 15 =0  

 

else if bit 1 is to be embedded  

background image

 

47 

 

 

if a i-1 =1 then a i-1 a i-2 ...a 0 =00...0  

 

 

if a i-1 =0 then a i-1 a i-2 ...a 0 =11...1 and  

 

 

 

if a i+1 =1 then a i+1 =0  

 

 

 

else if a i+2 =1 then a i+2 =0  

 

 

 

...  

 

 

 

else if a 15 =1 then a 15 =0  {618} 

 
 

Je eli algorytm osadzaj cy informacj  niejawn  jest ró ny w obu odmianach 

algorytmu LSB, tak mechanizm wyodr bniania jest jednakowy i nie uległ zmianie i 
polega o odczytaniu bitu z i-tej warstwy LSB. 
 

Podsumowuj c  technik   LSB  mo na  stwierdzi   e  jej  pierwsza  odmiana 

wprowadza  wi ksz   ilo   zanieczyszcze   do  kontenera,  poprzez  niekontrolowan  
zmian  bitów na okre lonej warstwie. Wysoko  warstwy nie powinna przekracza  
czwartej,  gdy   spowoduje  to  znaczne  obni enie  jako ci  kontenera.  W  przypadku 
metody zaproponowanej na Univeristy of Oulu wysoko  warstwy mo e zwi kszy  
si  do szóstej, osadzanie danych nie powoduje znacznej modyfikacji sampla, gdy  
jego  warto   jest  obni ana  do  warto ci  mu  najbli szej  przy  zmodyfikowanym 
okre lonym  bicie  –  czyli  próbka  d wi ku  wynikowa  b dzie  bardzo  zbli ona  do 
oryginalnej. 
 

3.3.2.

 

 DSSS 

Direct  Sequence  Spread  Spectrum  a  dokładniej  directly  carrier-modulated, 
code sequence modulation) czyli bezpo rednie modulowanie no nej sekwencj  
kodow .  Jest  to  jedna  z  technik  rozpraszania  widma  w  systemach 
szerokopasmowych  przy  pomocy  ci gów  kodowych.  Jeden  ze  sposobów 
działania  tej  techniki  polega  na  tym,  e  przy  wysyłaniu,  strumie   danych  jest 
mno ony  przez  odpowiedni  ci g  kodowy  o  wi kszej  szybko ci  bitowej.  W  ten 
sposób wyj ciowy strumie  informacji zajmuje znacznie szersze pasmo.  Dobór 
ci gu kodowego musi spełnia  szereg wymaga . Wła ciwy jego dobór pozwala 
na zaszyfrowanie informacji  [9] 

 

Technika  osadzania  danych  bazuj ca  na  DSSS  jest  metod   niedoskonał   o 

background image

 

48 

niskim progu odporno ci danych na uszkodzenia i ataki maj ce na celu zniszczenie 
osadzonej  informacji.  Przyspieszanie  lub  spowalnianie  sygnału  audio  mo e 
skutecznie  uszkodzi   dane  niejawne.  Wszelkiego  typu  konwersje  z  sygnału 
analogowego  na  cyfrowy  i  odwrotnie  mog   zniszczy   osadzone  dane. 
Spowodowane jest to niezgodno ci  zegarów w konwerterach D/A i A/D.  
 

3.3.3.

 

Dodawanie echa 

 

Wiele  technik  steganograficznych  bazuje  na  kodowaniu  informacji  niejawnej 

poprzez dodawanie echa do sygnału kontenera. Pomimo wysokiej czuło ci układu 
HAS  na  biały  szum  metoda  ta  jest  skuteczna,  gdy   zastosowanie  bardzo  krótkich 
odległo ci  pomi dzy  sygnałem  oryginalnym  i  echem  powoduje  traktowanie 
zakłóce   jako  rezonansu.  Po  dodaniu  echa  do  kontenera  okazuje  si ,  e  jego 
wła ciwo ci statystyczne pozostaj  niezmienione. 
 
 
 
 
 
 
 
 
 

Rys. 13. Echo hiding 

Stegosystem bazuj cy na dodawaniu echa posiada 4 główne cechy 
 

- amplituda inicjacyjna 

 

- tempo  

 

- przesuni cie „one” (ang. „one” offset) 

 

- przesuni cie „zero” (ang. „zero” offset)[15] 

 
 

Odległo  pomi dzy oryginalnym sygnałem kontenera a dodanym echem jest w 

pełni zale na od u ytego przesuni cia – zero lub jeden. 
W  procesie  osadzania  danych  sygnał  kontenera  jest  dzielony  na  mniejsze  porcje, 

background image

 

49 

które s  traktowane jako niezale ne sygnały. Nast pnie do ka dej porcji dodawane 
jest  echo  z  okre lonym  bitem  informacji.  Informacja  jest  osadzana  w  kontenerze 
poprzez dodanie echa z przesuni ciem 0 lub 1.  
 

Proces  wyodr bniania  informacji  polega  na  wykryciu  odległo ci  pomi dzy 

sygnałem a echem za  pomoc  transformaty Fouriera F i odwróconej transformaty 
Fouriera F

-1

.  

2

1

{log( ( ) }

F

F x

 

Je eli wynik powy szego równania (cepstrum) jest wy szy na pozycji 

1

 ni  na 

pozycji 

wówczas wyodr bniany bit ustawiany jest na warto  1, w przeciwnym 

przypadku ustawiany jest na warto  0.[15] 
 

3.3.4.

 

Modulacja fazy 

Algorytmy bazuj ce na modyfikacji fazy mo na podzieli  na dwie grupy: 
•   algorytmy wykorzystuj ce kodowanie fazowe.  

Proste  kodowanie  fazowe  polega  na  podzieleniu  sygnału  kontenera  na  bloki  i 
osadzenie  całej  informacji  niejawnej  w  spektrum  fazowym  pierwszego  bloku. 
Jest u ywane min. przy znakach wodnych (ang. Watermarks) 

•   algorytmy wykorzystuj ce modulowanie fazy 

Wykorzystywany jest mechanizm niezale nego wielozakresowego modulowania 
fazy  sygnału.  W  tym  celu  u ywany  jest  stosunkowo  długi  blok  danych  o 
długo ci 

14

2

N

=

.  Algorytm  dokonuje  powolnej  zmiany  fazy  w  przestrzeni 

czasowej. Ukrywana informacja, np. znak wodny osadzana jest poprzez dodanie 
jednej  jednostki  skali  Bark  do  fazy  bloku.  Jedna  jednostka  skali  Bark  mo e 
przechowywa  jedynie jeden bit informacji niejawnej. 
Skala  Bark  jest  psychoakustyczn   skal   z  warto ciami  z  zakresu  0-24 
opisuj cymi 24 słyszalnych zakresów d wi ku. Oblicza si  j  wg: 

2

13arctan(0.00076 ) 3,5arctan((

) )

7500

f

BARK

f

=

+

 

Gdzie f jest cz stotliwo ci  wyra on  w hercach. 

 

Udowodniono,  e  sensowny  zakres  dla  osadzanych  danych  przedstawiony  w 

skali Bark to 0-24 czyli zakres 0-15khz. 
Mechanizmy modulowania lub kodowania fazy s  technikami niewykorzystuj cymi 

background image

 

50 

cechy układu HAS, maskowania słabych d wi ków, d wi kami silniejszymi.[17] 
 

3.3.5.

 

 Autokorelacja 

 

Autokorelacja  -  statystyka  opisuj ca  dla  danego  szeregu  czasowego,  w  jakim 

stopniu dany wyraz szeregu zale y od wyrazów poprzednich. {wiki}. 
 

Jest  to  funkcja  która  dla  argumentu  k  przypisuje  warto   współczynnika 

korelacji  Pearsona  pomi dzy  szeregiem  czasowym  a  tym  samym  szeregiem 
cofni tym o k jednostek czasu. 
 

Korelacja  Pearsona  okre la  poziom  zale no ci  liniowej  mi dzy  zmiennymi 

losowymi.  Niech  x  i  y  b d   zmiennymi  losowymi  o  ci głych  rozkładach  x

i

,  y

i

 

oznaczaj   warto ci  prób  losowych  zmiennych  (i=1,2…n),  natomiast 

X

Y

warto ci  rednie tych prób, tj. 

1

1

n

i

i

x

x

n

=

=

 oraz  

1

1

n

i

i

y

y

n

=

=

 

Wówczas współczynnik korelacji liniowej zdefiniowany jest nast puj co: 

1

2

2

1

1

(

)(

)

(

)

(

)

n

i

i

i

xy

n

n

i

i

i

i

x x y

y

r

x x

y

y

=

=

=

=

 

 
 

Technika manipulowania współczynnikami autokorelacji doskonale nadaje si  

do osadzania informacji w sygnale analogowym. Nale y ona do rodziny modulacji 
cech statystycznych.[18] 

 

Rys. 14. Diagram blokowy osadzania danych metod  manipulowania współczynnikiem 

autokorelacji 

background image

 

51 

 
 

Wej ciowy sygnał kontenera poddawany jest wst pnej filtracji maj cej na celu 

poprawienie własno ci kontenera. Nast pnie sygnał ten u ywany jest do utworzenia 
specjalnego  sygnału  zawieraj cego  zmodyfikowane  współczynniki  autokorelacji. 
Wykonywane jest to w generatorze sygnału pokazanego na rysunku 13. sygnał ten 
tworzony jest poprzez dodanie okre lonej zmiennej opó nienia. Liczba dodawanych 
opó nie  jest równa współczynnikowi autokorelacji modulowanego sygnału. 

 

Rys. 15. schemat blokowy generatora sygnału 

 
Krótkoterminowa  autokorelacja  przefiltrowanego  sygnału  mo e  przyjmowa  
posta : 

( , )

( ) (

)

t

t T

R t

s x s x

dx

τ

τ

=

 

 

W  wi kszo ci  implementacji  systemu  utrzymuje  si ,  e  zmienna  g  opisuj ca 

opó nienie  przyjmuje  niewielk   warto ,  aby  opó nienia  były  transparentne. 
Oblicza si  je z: 

( , )

( , )

( , 2 )

(

,0)

m

R t

R t

g

R t

R t

τ

τ

τ

τ

+

 lub z 

( , )

( , )

( , 2 )

(

,0)

m

R t

R t

g

R t

R t

τ

τ

τ

τ

+

+

  

 

Ta  technika  steganograficzna  bazuje  na  słowach  kodowych,  które  s  

reprezentowane  przez  odpowiednio  zmodulowane  zmiany  współczynników 
autokorelacji,  takich  jak  rednia  warto   opó nie .  Istnieje  kilka  metod 
reprezentacji słowa kodowego: 

background image

 

52 

1.

  kodowanie  proste,  w  którym  jeden  symbol  odpowiada  dokładnie 

jednej warto ci współczynnika autokorelacji 

2.

  multi-level  symbol  mapping  –  ka de  osadzone  słowo  kodowe 

opisane  jest  sko czonym  zbiorem  warto ci  współczynników 
autokorelacji.  

3.

  Manchester  symbol  encoding  –  niech  sygnał  b dzie  dzielony  na 

dwie  równe  cz ci,  dla  ka dej  z  nich  zostanie  obliczona  warto  
współczynnika  autokorelacji.  Nast pnie  ró nica  pomi dzy  tymi 
dwoma  współczynnikami  jest  modulowana  w  celu  zakodowania 
danych. 

4.

  delay  hoping  –  poszczególne  elementy  sygnału  zmieniaj   swoje 

warto ci  opó nienia  w  zale no ci  od  wcze niej  predefiniowanej 
tablicy, której istnienie musi pozosta  tajne.[18] 

 
 

Metoda modulowania współczynników autokorelacji przeznaczona jest przede 

wszystkim  do  osadzania  niewielkiej  porcji  danych  w  transmitowanym  sygnale 
analogowym.  Najcz ciej  wykorzystywana  jest  do  znakowania  wodnego  sygnału. 
Oznakowana  w  ten  sposób  informacja  mo e  by   swobodnie  przechowywana  na 
no nikach bez utraty zapisanych niejawnych danych. W przypadku wykorzystania 
modulacji współczynników autokorelacji w stosunku do sygnału cyfrowego uzyska 
si   stegosystem  o  wysokim  poziomie  bezpiecze stwa.  Niejawne  dane  nie  s  
podatne na kompresj , dodanie białego szumu Gaussa AWGN o sile nawet 36db nie 
spowoduje  uszkodzenia  danych,  zmiana  tempa  o  warto   do  10%  nie  uszkodzi 
przekazu. 
 

3.4.

 

Podsumowanie 

 

D wi k  cyfrowy  jest  doskonałym  medium  transmisyjnym  dla  ukrywania 

danych. Jego du a pojemno  steganograficzna i oferowane bezpiecze stwo danych 
spowodowały,  e pliki d wi kowe stały si  celem zainteresowania steganografów. 
Niedoskonało ci ludzkiego układu słuchowego HAS umo liwiaj  skuteczne ukrycie 
danych  w  d wi ku  bez  wprowadzania  du ych  zmian  w  samym  sygnale.  Istniej  
techniki, których wynikiem działania jest stegosystem o identycznych parametrach 

background image

 

53 

statystycznych  jak  oryginalny  sygnał  u yty  jako  kontener.  Istniej   algorytmy 
pozwalaj ce  ukrywa   informacje  w  takich  obszarach  d wi ku,  e  ich  poziom 
bezpiecze stwa na wykrycie lub uszkodzenie jest bardzo wysoki. Kompresja stratna 
nie jest ju  zagro eniem dla steganografii. Cz

 algorytmów gwarantuje ochron  

osadzonych danych przy u yciu kompresji. 
 

Ilo  próbek d wi ku jaka mo e  zosta  u yta jako kontener jest bardzo du a, 

mo liwo ci ró nej parametryzacji d wi ku – jego cz stotliwo ci, przepływno ci czy 
nawet stylu muzycznego jaki reprezentuj  umo liwiaj  bezpieczne ukrycie danych. 

background image

 

54 

4.

 

Analiza metod ukrywania w d wi ku 

W  tej  cz ci  pracy  zostanie  zaprezentowana  aplikacja  StegoSound,  oraz 

wykonane  za  jej  pomoc   analizy.  Analizie  porównawczej  zostały  poddane  dwa 
algorytmy  osadzania  danych  w  d wi ku,  działaj ce  na  szeregu  próbek  danych 
wej ciowych. 

Celem przeprowadzonych bada  jest stwierdzenie która z metod gwarantuje 

wy szy poziom bezpiecze stwa, oraz sprawdzenie, czy na poziom bezpiecze stwa 
wpływa styl muzyczny reprezentowany przez poszczególne próbki. 

Analizie została poddana amplituda d wi ku. 
 

4.1.  rodowisko bada  
 

4.1.1. Borland c++ Builder 

rodowisko  Borland  C++  Builder  w  wersji  Personal  zostało  u yte  do 

napisania  aplikacji  testuj cej  algorytmy  na  poszczególnych  próbkach  danych. 
Cało   projektu  została  wykonana  za  pomoc   jedynie  darmowych  i  powszechnie 
dost pnych komponentów do pakietu firmy Borland. Obiekty jakie zostały u yte to: 
Image,  pole  edycyjne  Edit,  Pole  tekstowe  Label,  Pole  kombi  ComboBox,  pole 
tekstowe CSpinEdit, checkbox, pasek post pu CGauge oraz przyciski BitBtn. 

Projekt  nie  wykorzystuje  adnych  zewn trznych  bibliotek,  i  dzi ki 

kompilacji  wraz  z  wymaganymi  modułami  jest  mo liwy  do  uruchomienia  na 
komputerach na których nie zainstalowano pakietu firmy Borland. 
 
 

4.1.2. Aplikacja StegoSound 
Aplikacja  StegoSound  jest  narz dziem  umo liwiaj cym  przeprowadzenie 

analiz  porównawczych  dwóch  badanych  algorytmów  steganograficznych 
bazuj cych na sygnale d wi kowym. 

background image

 

55 

Rys. 16. Aplikacja testowa StegoSound 

 

Aplikacja  umo liwia  wczytanie  pliku  kontenera  oraz  pliku  zawieraj cego 

tekst  jawny  przeznaczony  do  osadzenia.  Na  podstawie  wyboru  metody  oraz 
warstwy bitowej na jakiej ma działa  program dokonuje wpisania tekstu do sygnału 
d wi kowego a nast pnie generuje wykresy obu sygnałów: 

- oryginalnego przed osadzeniem danych tekstowych 
- zmodyfikowanego, zawieraj cego ukryte dane 

Do operacji  na  poszczególnych  bitach  została  u yta  prosta  klasa  napisana  w  C++ 
która ma posta : 

class bin 

public: 

 

char *CharToBin(int); 

 

void SetChar(char*); 

 

char BinToChar(); 

 

char *SetBit(int); 

        char *SetBit2(int,int); 

 

char GetBit(int); 

private: 

 

char *chars;  //wartosc bitowa znaku 

}; 

 

 

//metoda zapisujaca wartosc binarna do obiektu 

//do dalszej obrobki 

void bin::SetChar(char *_liczba) 

background image

 

56 

chars=new char[strlen(_liczba)-1]; 

strcpy(chars,_liczba); 

 

//metoda zamieniajacy znak na zapis binarny 

char *bin::CharToBin(int liczba) 

chars=new char[9]; 

int tmp=0; 

for(int i=7;i>-1;i--) 

 

 

tmp=liczba%2; 

 

if(tmp==1) chars[i]='1'; 

 

else  chars[i]='0'; 

 

tmp=0; 

 

liczba=liczba/2; 

        chars[8]='\0'; 

 

return(chars); 

 

 

//metoda zamieniajaca zapis binarny na znak 

char bin::BinToChar() 

int tmp=0; 

int mnoznik=128; 

int liczba=0; 

for(int i=0;i<8;i++) 

 

 

liczba=(chars[i]-48)*mnoznik; 

 

tmp=tmp+liczba; 

 

mnoznik=mnoznik/2; 

 

return tmp; 

 

//metoda ustawiajaca najmlodszy bit na bit przeciwny 

char *bin::SetBit(int n) 

if(chars[n]=='1') 

 

chars[n]='0'; 

else 

 

chars[n]='1'; 

return chars; 

 

char *bin::SetBit2(int n, int wart) 

if((chars[n]=='1')&&(wart==1)); 

else if((chars[n]=='1')&&(wart==0)) 

background image

 

57 

        chars[n]='0'; 

else if((chars[n]=='0')&&(wart==1)) 

        chars[n]='1'; 

else if((chars[n]=='0')&&(wart==0)); 

 

//metoda zwracajaca najmlodszy bit 

char bin::GetBit(int n) 

{return chars[n];} 

 

Wykorzystanie  metod  zawartych  w  klasie  bin  mo liwe  było  skuteczne 

manipulowanie  poszczególnymi  bitami  zarówno  d wi ku  jak  i  tekstu,  za  pomoc  
których dane zostały osadzone do kontenera. 

Aplikacja  po  wczytaniu  danych  wej ciowych  dokonuje  analizy  pojemno ci 

kontenera  –  je eli  informacji  przeznaczonych  do  ukrycia  jest  wi cej  ni  
maksymalna pojemno  kontenera, program uniemo liwi dalsze operacje. 

 
 

4.2. Badane algorytmy 

Stworzony program StegoSound dokonuje analizy dwóch odmian algorytmu 

Least Significant Bit – LSB: 

•  standardowa metoda LSB polegaj ca na zamianie warto ci bitu kontenera na 

okre lonej warstwie w zale no ci od warto ci bitu ukrywanych danych 

•  zmodyfikowana  metoda  LSB  polegaj ca  dodatkowo  na  zamianie  bitów  na 

ni szych  warstwach  w  celu  mo liwie  jak  najmniejszego  zmodyfikowania 
warto ci próbki d wi ku. Metoda opracowana na Univeristy of Oulu. 

W dalszej cz ci pracy b d  okre lone odpowiednio jako: 

•  Algorytm 1 
•  Algorytm 2 

 
 

background image

 

58 

4.3. Próbki danych 

Analizie  zostało  poddanych  5    próbek  d wi ku  o  małej  długo ci  (poni ej 

sekundy) reprezentuj ce ró ne style muzyczne. 

 

numer 

próbki  Długo  

cz stotliwo  

próbkowania 

gł bia 

bitów  Kanały 

Autor 

Styl muzyczny 

Utwór 

0,417 

44,1 

8 mono  Saturnus 

Doom Metal 

I Long 

0,509 

44,1 

8 mono  Seven Main Sins  Death Metal 

Kamienna Tablica 

0,601 

44,1 

8 mono  Omega 

Rock 

Dziewczyna o 

perłowych włosach 

0,546 

44,1 

8 mono  Puff Dady 

Rap 

Godzilla 

0,493 

44,1 

8 mono 

Eugenia Vlasova & 

Andru Donalds 

Nowoczesna 

Wind of hope 

 

Ka da próbka d wi ku została pobrana z pierwszej sekundy ka dego utworu. 
Jako danych podlegaj cych osadzaniu u yto jednej strony niniejszej pracy. 
Przeprowadzone analizy przebiegały: 

•  Ka da próbka d wi ku została poddana działaniu dwóch algorytmów 
•  Ka dy  algorytm  został  przetestowany  na  dwóch  warstwach  bitowych  – 

pierwszej i czwartej 

•  Do ka dej próbki danych został wpisany ten sam tekst 

 
4.4. Wyniki poszczególnych analiz 

Wyniki analiz prezentowane s  wg schematu: 

•  Numer badania 
•  Numer próbki 
•  Algorytm 
•  Warstwa bitowa 
•  Wykresy 
•  komentarz 

background image

 

59 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 
Amplituda d wi ku z wpisanymi danymi 

Komentarz: 

Widoczne  niewielkie  odkształcenia  sygnału  w  pierwszej  cz ci  wykresu 
amplitudy. Zniekształcenia nieznaczne. 

background image

 

60 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

 
 

Amplituda d wi ku przed wpisaniem danych 
 
Amplituda d wi ku z wpisanymi danymi 
 

Komentarz: 
 

Niewielkie zniekształcenia widoczne w pocz tkowej cz ci sygnału. 

D wi k wynikowy identyczny jak w przypadku algorytmu 1 działaj cego na tej 
samej warstwie. 

background image

 

61 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 
Amplituda d wi ku z wpisanymi danymi 

 

Komentarz: 
 

Widoczne mocne zniekształcenia sygnału na całej długo ci. Bardzo 

du e ró nice mi dzy oryginałem a sygnałem wynikowym. 

background image

 

62 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

Amplituda d wi ku po wpisaniu danych 
 

Komentarz: 
 

Du e zniekształcenie sygnału d wi kowego. W stosunku do 

algorytmu 1 zmiany dokonane w procesie ukrywania danych s  znacznie mniejsze. 
Zwłaszcza jest to widoczne w  rodkowej cz ci sygnału. 

background image

 

63 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 
Amplituda d wi ku z wpisanymi danymi 
 

 
Komentarz: 
 

Zmiany widoczne praktycznie tylko w pocz tkowej cz ci sygnału. 

Reszta sygnału z powodu du ych skoków amplitudy jest utrudniona w analizie. 

background image

 

64 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

 
 

Amplituda d wi ku przed wpisaniem danych 
 
Amplituda d wi ku z wpisanymi danymi 

 

 
Komentarz: 
 

Zmiany widoczne jedynie w pocz tkowej cz ci sygnału. Zmiany dokonane 

przez algorytm identyczne jak w przypadku algorytmu 1. 

background image

 

65 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 
Amplituda d wi ku z wpisanymi danymi 

 
 
Komentarz: 
 

Zmiany sygnału widoczne w pocz tkowej cz ci d wi ku. Pozostała cz

 

równie  zmodyfikowana, jednak analiza utrudniona przez cz st  zmian  amplitudy. 

background image

 

66 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 

 
Amplituda d wi ku z wpisanymi danymi 
 

 

 
Komentarz: 
 

Niewielkie zmiany sygnału na całej długo ci. 

background image

 

67 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 

 
 
Amplituda d wi ku z wpisanymi danymi 
 

 

 
Komentarz: 
 

Zmiany sygnału widoczne na całej długo ci – spowodowane niewielk  

zmian  amplitudy. 

background image

 

68 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

10 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 

 
Amplituda d wi ku z wpisanymi danymi 
 

 

 
Komentarz: 
 

Modyfikacja identyczna jak w przypadku algorytmu 1. 

background image

 

69 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

11 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 

 
 
Amplituda d wi ku z wpisanymi danymi 
 

 

 
Komentarz: 
 

Widoczne mocna modyfikacja sygnału. Ostatnia cz

 d wi ku 

niezmodyfikowana – spowodowane du  ró nic  mi dzy długo ci  osadzanych 
danych a maksymaln  pojemno ci  kontenera. 

background image

 

70 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

12 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 

 
Amplituda d wi ku z wpisanymi danymi 
 

 

 
 
Komentarz: 
 

Bardzo mocno zarysowane ró nice w sygnale 

background image

 

71 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

13 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 

 
Amplituda d wi ku z wpisanymi danymi 
 

 

 
Komentarz: 
 

Zmiany praktycznie niewidoczne 

background image

 

72 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

14 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 

 
Amplituda d wi ku z wpisanymi danymi 
 

 

 
Komentarz: 
 

Zmiany praktycznie niewidoczne – zupełnie jak w przypadku algorytmu 1. 

background image

 

73 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

15 

 
 
Amplituda przed wpisaniem danych 
 

 

 
 
Amplituda d wi ku z wpisanymi danymi 
 

 

 
 
Komentarz: 
 

Zmiany mało widoczne, jednak w stosunku do warstwy 1 modyfikacje s  

wi ksze. 

background image

 

74 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

16 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 

 
 
 
Amplituda d wi ku z wpisanymi danymi 
 

 

Komentarz: 
 

Modyfikacje mało widoczne – znacznie mniej zmian ni  w przypadku 

algorytmu 1. 

background image

 

75 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

17 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 

 
 
Amplituda d wi ku z wpisanymi danymi 
 

 

 
 
Komentarz: 
 

Ze wzgl du na bardzo du e skoki amplitudy modyfikacje sygnału 

niewidoczne zupełnie. 

background image

 

76 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

18 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 

 
 
 
Amplituda d wi ku z wpisanymi danymi 
 

 

 
Komentarz: 
 

Ze wzgl du na bardzo du e skoki amplitudy zmiany niewidoczne 

background image

 

77 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

19 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 

 
 
 
Amplituda d wi ku z wpisanymi danymi 
 

 

 
 
Komentarz: 
 

Zmiany minimalne, ale jednak widoczne 

background image

 

78 

 

Badanie nr 

Numer 
próbki 

Algorytm 

Warstwa 
bitowa 

20 

 
 
Amplituda d wi ku przed wpisaniem danych 
 

 

 
 
 
Amplituda d wi ku z wpisanymi danymi 
 

 

 
 
Komentarz: 
 

Zmiany mniej widoczne w porównaniu do algorytmu 1 

background image

 

79 

Zako czenie i wnioski 

 

Celem pracy było zaprezentowanie istniej cych technik steganograficznych, 

oraz dokonanie analizy porównawczej dwóch wybranych technik ukrywania danych 
w sygnale d wi kowym. 

Z  przeprowadzonych  bada   wynika,  e  modyfikacja  algorytmu  LSB 

opracowana na University of Oulu generuje mniejsze zakłócenia sygnału, przez co 
zapisana  w  kontenerze  informacja  jest  bezpieczniejsza.  Algorytmy  porównywane 
były  za  pomoc   tych  samych  danych  wej ciowych  i  identycznych  ustawieniach 
konfiguracyjnych programu testowego StegoSound. 

Kolejnym  wnioskiem,  jaki  mo na  wysnu   analizuj c  wyniki 

przeprowadzonych  20  bada   jest  taki,  e  niezale nie  od  u ytego  algorytmu  ani 
warstwy  bitowej  informacja  jest  bezpieczniejsza  w  d wi ku  o  du ych  skokach 
amplitudy ni  w d wi ku o małej zmianie. Mo na wi c przypuszcza ,  e osadzaj c 
dane  w  muzyce,  najdoskonalszym  medium  b d   nagrania  stylów  muzycznych 
takich  jak  metal,  jazz,  czy  muzyka  elektroniczna.  Ballady  lub  delikatna  muzyka 
klasyczna mo e nie sprosta  wymaganiom stawianym bezpiecznemu kontenerowi. 
Ró nica  w  amplitudzie  łagodnej  muzyki  jest  o  tyle  mała,  e  wszelkiego  typu 
zmiany mog  by  łatwiej zauwa one. 

Wprowadzanie  zakłóce   do  nagrania  wymienionego  jako  gatunek 

bezpieczny gwarantuje,  e akustycznie bardzo trudno b dzie rozró ni  oryginał od 
stegosystemu, lub nawet nie zauwa y  wyst puj cych zakłóce . Ostatni przypadek 
mo e zdarzy  si  przy muzyce metalowej. 

background image

 

80 

Bibliografia 

[1] 

Duncan 

Sellars, 

An 

Introduction 

To 

Steganography, 

http://www.cs.uct.ac.za/courses/CS400W/NIS/papers99/dsellars/stego.html 
[2] Nicholas J. Copper, John Langford, Luis von Anh, Provably secure steganography, 
2002 
[3]  Cristian  Cachin,  AnInformation-Theoretic  Model  for  Steganography,  MIT  Labs, 
1998 
[4] Stefan Katzenbeisser, Fabien A. P. Petitcolas, Information Hiding – techiques for 
steganography and digital watermarking, wydawnictwo Artech House, Boston 1999 
[5] Reinhard Wobst, Kryptologia. Budowa I łamanie zabezpiecze , wydawnictwo RM, 
Warszawa 2002

 

[6]  J.  T.  Brassil,  Electronic  Marking  and  Identification  Techniques  to  Discourage 
Document Copying, IEEE Journal on selected areas in communicatons, vol 13, no. 8, 
October 1995 

 

[7]  J.  T.  Brassil,  Document  Marking  and  Identification  using  Both  Line  and  Word 
Sifting, AT&T Bell Laboratories, Murray Hill NJ 07974

 

[8] Luther Deyo, Steganography  
[9] http://pl.wikipedia.org

 

[10] Niels Provos, Peter Honeyman, Hide and Seek – Introduction to Steganography, 
University of Michigan, IEEE Computer Society, 2003   
[11] W. Bender, D. Gruhl, N. Morimoto,  

and A. Lu., Techniques for data hiding, 

IBM Systems Journal, vol 35, NOS 384, 1996 
[12]    M.  Celik,  G.  Sharma,  M.  Teklap,  Universal  Image  Steganalysis  using  rate-
distortion curves, University Istanbul 2004 
 [13]  autor  anonimowy,  Internet  Agresja  i  Ochrona,  wydawnictwo  Robomatic, 
Wrocław 1998 
[14] Kamran Ahsan, Covert Channel Analysis and Data Hiding in TCP/IP  
[15] N.Cvejic, Algorhitms for audio watermaring and steganography, Oulu 2004 
[16] N. Cvejic, T. Sappanen, Incerasing robustness of lsb audio by reduced distortion 
LSB Coding, Oulu University 
[17] C. Matthews, Behind the music: principles of audio steganography, 2003 
[18] R. Petrovic, J. Winograd, K. Jemili, E. Metois, Data Hiding Whitin Audio Signal, 
1999 Yugoslavia