Gizli Yazı Sanatı : Steganografi

Gizli Yazı Sanatı : Steganografi

Yandaki fotoğraf size ne anlatıyor? Tükenen mesleklerden biri olan kalaycılığın öyküsünü mü? Bir ustanın iş arasında verdiği molayı mı? Yoksa sadece zaman içinde yaşanmış ve sonsuzlaştırılmış bir kareyi mi?

Fotoğrafın içinde kalaycı ustasının ağzından, nasıl kalay yapıldığını anlatan uzun bir yazı olduğunu söylesem…

Gizli Yazı Sanatı: Steganografi

Bir bilginin, görünen başka bir bilgi içine gizlemesi sanatına steganografi denir. Kalaycı amcanın masum gözlerinin derinliklerindeki dijital çöplükte gizli bir mesajın saklanması bu yöntemle gerçekleştirilmiştir. Ancak, her zaman görmek için bak felsefesinin burada işe yaramadığı belirtmek isterim. Gördüğümüz sadece masum bir fotoğraf!

Steganografi, eski Yunanca bir kelime olup ‘Gizli Yazı – Stegano Graphy’ anlamına gelmektedir. Milattan önce 5inci yüzyılda İran savaşları sırasında; Yunan komutanı Histiaeus, Susa Kralı Darius tarafından göz hapsine alındığı sırada, Anadolu’da bulunan Milet şehrindeki damadı Aristagoras’a bir mesaj göndermek ister. Kral Darius tarafından görünmeden bu mesajın damadına ulaştırılması gerekmektedir. Komutan Histiaeus bir kölenin saçını kazıtır ve mesajı oraya dövme yaptırır. Saçları uzayan köle Anadolu’ya gönderilir ve saçları tekrar kazınarak kölenin kafasındaki mesaj damadı tarafından okunur. Günümüzde bilgilerin gizlenerek taşınması sanatının başlangıcı, kaynaklara göre bu olaya dayanmaktadır.

Eski Romalılar, doğal kaynaklar ile elde edilen görünmez mürekkep sayesinde mektuplarına yazdıkları gizli mesajları üçüncü kişilerinden gizleyerek ilettiler. İkinci dünya savaşı sırasında Almanya microdot(mikro noktalama) teknolojisi ile gizli mesajlarını resimleme tekniği ile nokta boyutuna küçülterek, noktalı harflere ve noktalama işaretleri üzerine yapıştırarak sakladılar. İngiltere’de, BBC, radyo haberleşmesinde sürekli olarak steganografiyi kullanmış ve masum gibi görünen fakat aslında gizli mesajlar taşıyan anahtar cümleleri bu yolla iletmiştir.

Soğuk savaş sırasında Amerika Birleşik Devletleri saklanan mesajların gönderilmesini engellemek amacıyla satranç oyunlarının soruları, örgü öğreten resimli yayınlar, gazete kupürleri ve çocukların çizdiği resimlerin uluslar arası biçimde postalanmasını yasaklanmıştı. Bu yasaklar fayda etti mi bilinmez ancak bundan yıllar sonra 11 Eylül tarihindeki saldırılarda teröristlerin, ABD’nin dev kulaklarına yakalanmadan, bu yöntem ile haberleştiği tahmin edilmektedir. Tüm dünya televizyonları tarafından yayımlanan Usame Bin Laden kasetlerinin gizli mesajlar içerdiğini söylersek steganografinin hangi şekillerde kullanılabileceğini ve bu yöntemle gizlenen mesajların açığa çıkartılması karşısındaki çaresizliği daha iyi anlamış oluruz.

Yazı İçinde Gizli Yazı

Günümüzde, teknolojinin nimetlerinden faydalanarak karmaşık steganografi yöntemleri geliştirilmiş olsa da casus filmlerinden de izlediğimiz gibi bir yazının içince başka bir yazıyı gizleyebileceğimiz basit yöntemler de vardır. Akıl Oyunları filmindeki ünlü matematik profesörü John NASH’in kendi kurduğu hayal dünyasında yüzlerce gazete ve dergi arasından steganografi yöntemiyle gizlenmiş mesajları nasıl açığa çıkarttığını(stegaanaliz) anımsayabiliriz. Ya da bir filmdeki esas oğlanın esaret sırasında kurtarıcısına yazdığı mektuptaki kelimelerin baş harfleriyle yardım çağrısında bulunduğunu.

Aşağıdaki yazıda bir mesaj gizli. En basit yöntemlerden biri olan yazı içine gizlenmiş başka bir yazıyı yöntemi kullanılarak yazılan bu paragrafın içindeki gizli mesaj acaba ne?

GÜLŞEN; EVDE LAHANA,İRMİK, REÇEL KALMAMIŞ.

EVDE NEDEN BU EKSİKLERLE NEDİM İLGİLENMEZKİ?

AMMA RAHAT ADAM.

 

Resim İçinde Gizli Yazı

Bir resim içine gizli bir yazı yerleştirmek için steganografi programlarından faydalanabiliriz. Ücretsiz olarak edinebileceğimiz bazı programlar ile bu işlemin ne kadar kolay ve eğlenceli olduğunu görececeğiz. Ancak, ilk olarak bir resim dosyasının nasıl meydana geldiğini, saklanacak olan verinin bu görüntü dosyasına nasıl yerleştirilebileceğini anlamamız gerekiyor.

Bir görüntü dosyası gözle göremediğimiz kutucuklardan(piksel) oluşur. Her bir piksel içinde o pikseli tanımlayan renk bilgisi yer almaktadır. Yan yana ve alt alta dizilmiş piksel grubu içindeki renkler birleştiğinde karşımıza görüntü dosyası çıkacaktır. En basit anlamda bir pikselin içeriğinde 0 veya 1 olarak tanımlanan bit değerleri yer alır. 1 bitlik bu görüntü içerisinde sadece 2 renk tanımlayabiliriz. Görüntümüz siyah-beyaz ise bu bir pikselin 0 yada 1 değerini aldığı anlamına gelir ve bu görüntünün her bir pikseli 1 bit’tir.

1 piksellik görüntü dosyasında 2 bit değerine sahip bir tanımlama yapılmışsa bu görüntünün 4 renkten birine sahip olduğunu anlayabiliriz. Bunun için 2 bitlik değerin tanımlayabileceği toplam kombinasyona bakmamız gerekir:

2 bit = 4 renk (2²=2×2) = 00 01 11 01

3 bitlik bir görüntü dosyasının her bir pikseline 8 renk tanımlaması yapılabilir.

3 bit = 8 renk (2³=2x2x2) = 000 001 011 100 010 …

4 bitlik bir görüntü dosyasının her bir pikseline 16 renk tanımlaması yapılabilir.

4 bit = 16 renk (2x2x2x2) = 0000 0001 0011 …

8 bitlik bir görüntü dosyasının her bir pikseline 256 renk tanımlaması yapılabilir.

8 bit = 256 renk (2x2x2x2x2x2x2x2) 00000000 00000011 10100010 …

24bitlik bir görüntü dosyasının her bir pikseline 16 milyon renk tanımlaması yapılabilir.

24 bit = 16.777.215 renk (2x2x2x2x2x2x2x2x2x2x2x2x2x2x2x22x2x2x2x2x2x2x2)

000000101010100010000101 101010010101010001110001 …

24 bitlik bir görüntü dosyasından bir pikselini ekranımıza konuk edelim ve rengin dijital olarak nasıl oluştuğunu anlamaya çalışalım.

RGB standartlarında bir rengin oluşması için kırmızı, yeşil ve mavi renk değerlerinin belli oranlarda karışması gereklidir. Konuğumuz olan pikselin gözle gördüğümüz rengini fıstık yeşili olarak belirledik. Bu rengi elde etmek için hangi oranlarda kırmızı,yeşil ve mavi karışımını kullanacağımıza bakalım.

R (red-kırmızı) : 178

G (green-yeşil) : 229

B (blue-mavi) : 41

Fıstık yeşili olarak gördüğümüz renkte 178 değerinde kırmızı(R) , 229 değerinde yeşil(G) ve 41 değerinde mavi(B) bulunduğunu görüyoruz.

Kırmızı renk, tanımlama değerleri

R (red-kırmızı) : 100

G (green-yeşil) : 0

B (blue-mavi) : 0

Yeşil renk, tanımlama değerleri

R (red-kırmızı) : 0

G (green-yeşil) : 100

B (blue-mavi) : 0

Mavi renk, tanımlama değerleri

R (red-kırmızı) : 0

G (green-yeşil) : 0

B (blue-mavi) : 100

Şimdi de konuğumuz olan bir piksellik rengi gözümüzün önünden alıp, dijital dünyaya geri gönderiyor ve bu rengin orada nasıl ifade edildiğine bakıyoruz.

24 bitlik bir renk dosyasını ele aldığımızda ve bu dosyasının her bir pikselinin 3 renkten oluştuğunu bildiğimize göre her renk için 8 bitlik bir tanımlama yapabileceğimiz ortaya çıkıyor. Kırmızı için 8 bit, yeşil için 8 bit, mavi için 8 bit; toplamda 24 bit. 8 bitlik bir renk tanımlamasını binary(ikili) modda yazdığımızda aşağıdaki değerlerin tam olarak neyi ifade ettiğini ve gizli yazımızı resmin içine nasıl yerleştirebileceğimiz konusunda fikir sahibi olacağız.

Renk Değeri Binary Mod(İkili Mod)

R:178 10110010 (28,27,26,25,24,23,22,21,20 – 128,0,32,16,0,0,2,0 = 178)

G:229 11100101 (28,27,26,25,24,23,22,21,20 – 128,64,32,0,0,4,0,1 = 229)

B :41 00101001 (28,27,26,25,24,23,22,21,20 – 0,0,32,0,8,0,0,1 = 41)

Fıstık yeşilimizin dijital ortamda ne zorluklarla kendini gösterdiğini fark ettik. Kırmızı rengin ikili(binary) gösteriminde yer alan en sondaki bit değerini değiştirmemiz bu rengi ne kadar üzer? Bayram harçlığı olarak 50ytl 5 kuruş alan bir çocuğun 5 kuruşunu almaması kadar üzüleceğini düşünmek yanlış olmayacaktır. En sondaki bit değeri en az öneme sahip bit’dir (Least Significant Bits – LSB). Bu bit üzerinde yapılan değişiklik gözümüz tarafından algılanamayacak kadar önemsizdir çünkü insan gözü sadece ilk 6 bit’lik kısmı algılar ve ayırt edebilir.

Kırmızı renk değerini 178(10110010) yerine 177(10110001) yaptığımda bu, sadece dijital olarak bir anlam ifade edecek ve normal görüntüde ayırt edemeyeceğimiz bir değişiklik olarak kalacaktır.

Sarasıyla en sonda bulunan önemsiz bit’lerin(LSB) değerini değiştirmek suretiyle önemsiz olan bitlere bir önem kazandırabilir hatta bu bit’ler sayesinde resimde bir yazı yazabiliriz(bkz: steganografi)

C harfini fıstık yeşilimizin içine yerleştirelim ve resmimizde gözle görülür bir değişiklik olup olmadığına bakalım. C harfinin ikili gösterimdeki karşılığını 01000011(67) olarak varsayalım ve bu harfi oluşturan bitleri sırasıyla 3 pikselden oluşan yeni resmimizdeki önemsiz bitler ile değiştirelim.

Orijinal resim

 

1. Piksel(R:178,G:229,B:41) 2. Piksel(R:178,G:229,B:41)

10110010 – 11100101 – 00101001 10110010 – 11100101 – 00101001

3. Piksel(R:178,G:229,B:41)

10110010 – 11100101 – 00101001

Değişen Resim

1. Piksel(R:178,G:229,B:40) 2. Piksel(R:178,G:228,B:40)

10110010 – 11100101 – 00101000 10110010 – 11100100 – 00101000

3. Piksel(R:179,G:229,B:41)

10110011 – 11100101 – 00101001

C harfini oluşturan bit’lerin değeriyle (01000011), değişen resimdeki son bitlerin sırasındaki değer benzerliği size bir anlam ifade ediyor mu?

Steganografi Araçları

Gözümüzün ayırt edemeyeceği şekilde resim ve video dosyalarına, kulağımızın duyamayacağı frekanstaki ses dosyalarına gizli bilgileri yerleştirmek için bu kadar çaba harcamamıza gerek duymayanlar da var elbette.

Bunları yapabilmek için internet üzerinde birçok ücretsiz yazılım mevcut. Birkaç saniyede resmin içine gizli bir mesajı yerleştirebilmemizi sağlayan bu programlardan bir tanesi de s-tools. Bu ücretsiz yazılım sayesinde gif, bmp yada wav formatındaki bir dosyaya mesajı kolayca saklamanız ve bu mesajı program içinde tanımlı bir algoritma ile şifrelemeniz mümkün. Hem gizli, hem de şifreli bir mesaj; kulağa hoş geliyor değil mi?

ftp://ftp.uni-stuttgart.de/pub/rus/security/win95/s-tools4.zip adresinden indirebileceğimiz s-tools programını kullanmak basit ve eğlenceli.

  1. İçine mesaj saklanacak olan resim dosyasını(bmp ya da gif formatında) s-tools ekranına sürükleyin.

  1. Gizlemek istediğiniz yazı dosyasını açmış olduğunuz resmin üzerine sürükleyin.
  2. Açılan pencerede, mesajı açarken kullanılacak olan parolayı belirleyin ve şifreleme algoritmasını seçin.

 

  1. Ekranda orijinal ve gizli bilginin saklandığı resimler görünecektir. Hidden data yazılı resmin üzerinde farenin sağ tuşunu tıklayarak içinde gizli yazı olan resmi kaydedebilirsiniz.

 

Kaynaklar:

http://www.all-nettools.com/privacy/stegano.htm

http://www.teknohaber.net/makale.php?id=20104

http://www.ntvmsnbc.com

http://www.teknoturk.org/docking/yazilar/tt000106-yazi.htm

Erdal Çakmak – Bir Bilgi Saklama Sanatı: Steganografi

Kalaycı fotoğrafı : Ahmet ORHAN

Ahmet ORHAN

ahmetorhan@yahoo.com