Šta je novo?

Steganografija? sta je to :)

xWoLf

Čuven
Učlanjen(a)
08.10.2002
Poruke
2,279
Poena
690
Moja oprema  
Pristup internetu
  1. ADSL
nesto sam malo citao ovih dana i nasao na zanimljive stvari...
prica se svodi na sakrivanje poruka koristeci neki drugi nosac informacije koji, na prvi pogled, izgleda bezazlen..

mnogo je lukaviji pristup nego klasicna kriptografija... kriptujuci poruku/fajl samo izazivate sumnju i privlacite paznju ljudi sa viskom slobodnog vremena, koji ako budu imali srece mozda i probiju lozinku i dodju u posed vasih tajnih podataka.

steganografijom vi ustvari prosvercujete vazne podatke sakrivene ispod neke bezazlene fotografije ili mp3 pesme...

ima raznih implementacija, ali o tome iduci put.. voleo bih da cujem tudja iskustva i da li je neko koristio neki od ovih algoritama?
 
U cemu je poenta?

Tvoj signal modulises kao random noise - a onda taj sum modulises u sliku / zvuk tako da on bude najmanje vidljiv... treba obratiti paznju na:

1. Robusnost generatora (kako bi signal preziveo "mucenje" i vise generacija)
2. Perceptualni model - kako se signal ne bi cuo
3. Jako dobar error-robustness mehanizam


Postoje i jednostavniji metodi - MP3 i WAV mogu da sadrze i "Extra" podatke i za to nije potrebna neka nauka - ali se ti podaci mnogo lakse i uklanjaju...
 
hmmm. znas li neki program koji modulise signal (kakav signal? drugi zvuk ili binarni fajl?) u zvucni signal

ne interesuju me resenja koja dodaju podatke na kraj wav/mp3 fajla, nego na maskiranje jedne informacije u drugu informaciju

nesto sam se zezao sa sakrivanjem podataka u png/jpg slike...
ali o tom/potom
 
Sve se to detektuje ako se trazi ;) A bitno je i da informacija koju sakrivas bude manja nego ono sto se sakriva i to primetno manja inace se lako primeti da nesto ne valja oko velicine. Tipa JPG od 50MB :D
Korisno je za skrivanje PORUKA ali ne i za skrivanje podataka vece velicine. (moze ali lako se otkriva kao sto pomenuh gore)
 
pa poruka naravno...
mnogo je pametnije sakriti tajni dokument ili poverljivi tekst od 4-5kb (ascii tekst) u jpg od 90-10kb.. u to ce ljudi mnogo manje posumnjati nego u kriptovani txt koji privlaci paznju sam po sebi (po principu, mora da je nesto vazno, cim je kriptovano)

jos ako taj dokument kriptujete pa ubacite u sliku, niko nece posumnjati u bezazlenu prepisku gde dvojica ljudi , naizgled, razmenjuju slike sa letovanja (ili cestitaju novogodisnje praznike).. a u slikama planovi za ***cenzurisano***

negde sam procitao da su strucnjaci iz CIA potvrdili da su teroristi alkaide koristili steganografiju za komunikaciju godinama unazad (pripremajuci ono sto svi znamo da je bilo u USA)

imate li neke konkretne programe za razmenu
koliko vidim, ti programi nisu zabranjeni, pogotovo sto vecina njih je gnu/freeware ili tako nesto...

zanimljiva je opcija ugradnje tajne informacije u nosioca tj. u zvucni zapis (wav/mp3) i to tako da informacija ostane sacuvana i posle obrade zvuka (do odredjene mere)
ovo sto sam nasao sa sakrivanjem u slike je isto zanimljivo, ali ima raznih tehnika...

video sam na jednom sajtu gde lik krije sliku u slici, i to tako da cak i izmene u kontrastu/boji/rezoluciji slike nosioca, ne uticu previse na sakrivenu sliku, koja se moze rekonstruisati, neznatno izmenjena...
 
Пре пар година не било неке приче о томе на форуму. Сећам се да је обичан ЈПГ фајл, могао да се простом променом екстензије претвори у ЗИП, који у себи даље садржи неке текствове, итд... Тај фајл је постављан овде али ко ће га сад наћи.
 
da da
ali ja nisam mislio na te jeftine trikove, nego na pravu steganografiju i napredne algoritme koji mesaju jednu informaciju u drugu i prenose je zamaskiranu tako da niko ne posumnja...
bilo da je nosilac slika ili zvuk, sustina je u onome sto se prenosi a to je obicno neki tekst ili poruka, druga slika......
to je ono sto mene interesuje, da li se neko razume i tako to
 
Da bi se sam igrao sa takvim stvarima (a posto je podforum programiranje, onda verovatno zelis neko homemade resenje), trebao bi prvo da naucis neke neke stvari o formatu (slike/zvuka/cega vec) u koji zelis nesto da sakrijes. Verovatno je najjednostavnije da pocnes od obicnog BMP fajla gde je svaki piksel reprezentovan sa 3 bajta (RGB). Jedna, veoma jednostavna tehnika je da krijes svaki bit podatka koji zelis da ubacis u jednom bajtu data dela BMP-a kao bit najmanje tezine. Ovakve stvari tesko da ce biti primetne ljudskom oku. Onda mozes to dalje da razvijas. Da ubacujes samo u bajtove neke tvoje sekvence, da ubacujes kriptovane podatke, da ubacujes lazne podatke na nekim mestima itd.

Za svaki format je razlicita prica i verovatno vec postoje dosta napredne taktike. Ako te podatke nece pokusavati neka CIA/BIA/FBI da razbije onda samo smisle neko homemade resenje i miran si.
 
moze neki linkovi ka sajtovima koji se time bave na engleskom
ili tako nesto...
 
Sajtovi koji se cime bave?
Ako mislis na stenografiju ja o tome zaista izuzetno malo znam, tako da je google polazna tacka. Videces da cim ukucas 'steganography algorithm' dobijas link ka PDF-u o F5. To su vec napredne stvari, koje se zasnivaju na heavy matematici (mada jako interesantne, ja bas sada citam), tako da mislim da je bolje da se skoncentrises na neko svoje resenje.

Ako ces sam da programiras, moj je savet da prvo procitas o BMP-u (najjednostavnije za pocetak) i nesto uopsteno o editovanju slika. Probaj da shvatis kako se menja kontrast, brightness itd. Onda vec mozes sam da pocnes da se igras.

Na wiki stranici o stenografiji je lep i jednostavan primer kako se sakriva slika u slici:

Ovo je polazna slika
StenographyOriginal.png

Posle ovoga, sto je jako jednostavno uraditi:
Removing all but the two least significant bits of each color component produces an almost completely black image. Making that image 85 times brighter produces the image below.
Dobija se ovo:
StenographyRecovered.png


i tako, igras se vec. Ovo je odlicna tema za ucenje.
 
taj f5 je najbolji algoritam koji je dosad napisan, ustvari najbolji koji je publikovan (objavljen u javnosti)
pokusao sam da ga nadjem na internetu u formi programa koji je upotrebljiv ali mi nije poslo za rukom... sajt na kome je originalno hostovan vise ne postoji, a covek koji je napisao F5 algoritam, vise nije student vec profesor na jednom prestiznom nemackom univerzitetu i upravo se bavi srodnim temama (kriptografija, prenos podataka koriscenjem sigurnosnim linija.. itd itd itd)
njegov algoritam je najbolji, najslozeniji i najteze se otkriva (ponavljam, od ovih javno dostupnih)
bazira se na sakrivanju binarnih fajlova u jpg slike, ali tako da se podaci ne prikace na jpg sliku nego se sakriju unutar iste.. ali se vrsi statisticka raspodela duz cele jpg slike, a ne od pocetka pa do kraja... nije ni meni sve jasno, ali ako se bitovi koji se odvoje unutar jpg slike da nose binarnu informaciju izdvoje i posmatraju parcijalno, lako je uociti nepravilnosti koje dalje vode ka sumnji da je u sliku ugradjena tajna informacija..

jos je zanimljivije (to nisam probao) ugradnja tajnih informacija u zvucne fajlove.. samo mi nije jasno da li se radi o tajnoj zvucnoj informaciji ili binarnom fajlu koji se ugradjuje u zvucni zapis
 
Poslednja izmena od urednika:
Ako ceo ovaj topic nije iz cisto edukativnih razloga onda:
security.png


:)

Sto se tice F5, pogledaj malo bolje. Cini mi se da je pun net implementacijama u svim mogucim jezicima.
 
pa.. s' obzirom da to nije komercijalni softwer, prikaci ovde neku od tih impelemtacija pa da vidimo

ja imam neki programcic koji nije bas kao F5 ali je "skoro kao on"

pa da uporedimo

i neka se javi neko ko se "igrao" sa skrivanjem u zvucne fajlove...

btw, meni se ovo cini mnogo efikasnijim nacinom prenosenja tajni nego cisto kriptovanje.. jer kriptovani podaci privlace paznju samim svojim statusom (svako ce pomisliti "cim su ga kriptovali, onda nesto kriju. daj da vidimo sta je to, ko salje kome salje..)

ovako niko nece posumnjati u bezazlenu prepisku gde dvoje mladih ljudi razmenjuju slike sa letovanja, a u stvari , hehehehehe
 
http://os.inf.tu-dresden.de/~westfeld/publikationen/f5r11.zip

F5 radi iskljucivi na JPG slikama. Ideja je da primalac ima "originalni" jpg koji ce koristiti za desifrovanje. Posiljalac pakuje file u transportni jpg i salje ga primaocu. Primalac pomocu "originalnog" jpg-a vadi podatke iz transportnog jpg-a.
Da bi bolje razumeli kako radi, potrebno je poznavanje JPEG kompresije. Ukratko, JPEG kompresor deli sliku na blokove od 8x8 pixela i pakuje ih. U pocesu pakovanje vrsi se konverzija boja u y-cb-cr, subsampling (opciono), DCT, Quantizacija i entropijski encoding (huffman). Profesor je uglavio potpisivanje u quantizaciju, tako sto je menjao delove quantizacione tebele bloka koji se obradjuje sa podacima iz fajla koga treba sakriti.
JPEG prvo poredja 64 pixela iz matrice 8x8 u niz od 64 boje pomocu cik-cak patterna. Zatim odradi kolor konverziju i svaki kanal posebno pakuje. Posle toga primeni DCT koji mu od uaznog niza od 64 elementa isporuci OPADAJUCI niz realnih brojeva. Kada se taj OPADAJUCI niz obradi sa Quantizacionom tablicom, dobijamo celobrojni OPADAJUCI niz, koji pri kraju ima sve manje elemente pa cak i 0. Prvih par elemenata ovog niza najvise utice na izgled bloka, dok ostali elementi manje uticu na izgled bloka posle dekompresije. Profesor je iskoristio ove elemente sa manje uticaja da ih poveca ili smanji za 1 (u zavisnosti od bitova u skrivenom fajlu).
Rezultat je JPG file koji se sasvim normalno vidi iz bilo kog viewera. Medjutim ako se uporedi sa originalnim JPG-om i to na nivou Quantizacionih nizova za svaki blok, pojavice se razlike.

MP3 slicno funkcionise kao JPG. File se deli na blokove, vrsi se FFT, dobija se niz opdajucih brojeva (tablica frekvencija i amplituda), vrsi se psihoakusticno maskiranje i jos ponesto.. ne znam sve detalje oko mp3. U jednom trenutku ce doci do koraka koji je veoma slican JPG-u i tu se moze ubaciti poneki bit filea koji treba sakriti.

Verovatno postoje clanovi koji su u detalje JPG i MP3 kompresije upuceniji vise od mene i mogu vam dati vise detalja. Izvinjavam se ako sam nesto omanuo u gornjem opisu JPG-a i MP3 kompresora.
 
Poslednja izmena:
odakle si ovo iskopao, svaka ti dala! :)

ja se mucio 2 dana i na kraju odustao. najvise sto sam nasao je java implementacija f5 algoritma, uz to jos i bagovita

samo da isprobam ovo, pa cu napisati svoj komentar

ja pricao o java implementaciji, kad ono ti poslao bas to...
imas li neki F5 u formi EXE fajla , eventualno neki GUI (nije obavezno)

dok cekamo, probajte sledeci steg_injector (u prilogu)
 

Prilozi

  • outguess-0.2-1 (u nedostatku f5, mozda najbolji!).rar
    66.1 KB · Pregleda: 33
Poslednja izmena:
Secam se najstarijeg primera steganografije, neki vlasnik u antickoj grckoj je poslao roba da prenese poruku. Poruka je bila urezana na glavu, a sisanjem se otkrivala :D
 
Nazad
Vrh Dno