WikiTurk
Editor Login | Register
Ekle

> Bilgisayar > Kriptografi

kurtefendy
(Relased 09.10.2009 17:31:54)
imageimageimage %22


Klasik Şifreleme Teknikleri - I


 Reklam



Bir referans şeklindeki geçen yazımızda bahsettiğimiz şifreleme tekniklerine giriş yapacağımız; bu yazımızda “Klasik Şifreleme Teknikleri” olarak bilinen şifreleme tekniklerini inceleyeceğiz. Her ne kadar günümüzde kullanılan şifreleme teknikleriyle doğrudan ilgileri olmasa da, bu teknikler günümüz şifreleme tekniklerini anlayabilmeniz için temel oluşturacaktır.
 

Steganography(Metni Gizleme): Sözlüklerde tam karşılığını bulamayacağınız kadar eski bir kelime olan David Kahn “The Story of Secret Writing” adlı eseriyle bugünkü anlamını kazanmıştır: Şifrelenmemiş düz bir metni çeşitli dönüşümler kullanarak diğer kişilerce anlaşılamaz bir metin haline getirilmesi işlemidir. Verilebileecek en basit örnek, bir metnin tüm harflerinin başka bir metnin içindeki kelimelerin ilk harflerine gizlenmesidir. Örneğin; “Sezen Aksu ve aşk şarkıları benim için tüm tesellilerden iyidir.”

Ancak her durum için böyle bir mesajı oluşturmak zor ve zaman alıcı bir işlemdir. Oluşturulacak mesajdaki kelimelerin anlamlı bir bütünlük oluşturacak şekilde bulunmasının ancak çok üst düzey bir yapay zeka uygulamasıyla bilgisayar ortamına aktarılması mümkündür. Hala daha “natural language processing” (bilgisayarların konuşma dillerini anlayabilmesi olarak basitçe tanımlanabilir) konusunda mükemmel bir sisteme ulaşılamamış olması kadar önemli bir nokta da kırılmasının çok kolay olmasıdır. Tarihçesine göre çeşitli teknikler kullanılmıştır. Bazıları:

Character marking(Harf işaretleme): İsminden de anlaşılabileceği üzere, önceden belirlenmiş bazı karakterlerin daha derin (daha koyu değil) olarak yazılması mantığına dayanır. İşaretli harfler ancak belirli bir açıyla parlak bir ışığa tutulduğunda görülebilir.

  Invisible ink (Görünmeyen mürekkep): Belirli bir sıcaklığa ulaşmadan ya da kimyasal bir işlemden geçirilmeden görülemeyen özel bir mürekkep ile yazılır.   Pin Punctures (İğne delikleri): Belirli harflerin üzerinde gözle görülemeyecek kadar küçük delikler açılarak gerçekleştirilir. Deliklerle işaretlenmiş araçlar parlak bir ışığa tutularak okunur.

Her ne kadar bu teknikler çok eski gibi gözükse de steganography tekniğinin çağdaş örnekleri de bu tekniklerin eşleniği durumundadır. Çağdaş örneği olarak bir CD deki bilgilerin her byte’inin son bitini kullanarak şifreleyebiliriz. Örneğin oluşturulabilinecek en büyük çözünürlükteki 32 bitlik resmlerin kaydedildiğ bir CD’yi ele alalım. Burada biraz teknik bilgi verelim. Bir resmin 32 bit olması; her pixelinin 32 bitlik renk kodlarıyla gösterilmesi demektir. En sonuncu bitin değişmesi resmin genel içeriğini ve renklerin ihmal edilebilir ölçülerde değiştirir. Bu sayede 700 MB’lık bir CD’de yaklaşık 12 MB’lık bilgi saklayabilirsiniz. Buna benzer bir şifreleme çok yakın bir zamanda kullanılmıştır.

Substitution techniques(Yerine koyma teknikleri): Düz bir metindeki harflerin yerine başka harflerle, sayılarla ya da semboller koyarak yapılan şifreleme türüdür. Eğer düz metin ardışık bitler olarak görülebiliyorsa, çeşitli bit patternlerinin(örneklemlerinin) değiştirilmesi de bu tekniğe dahil edilebilir.

Caesar Cipher(Sezar Şifrelemesi): bilinen en eski yerine koyma tekniğidir. Ünlü Roma İmparatoru Julius Caesar tarafından geliştirilmiştir. Sezar şifrelemesinde mantık her harfi kendisinden sonra gelen üçüncü harfle çembersel olarak değiştirmeye dayanmaktadır. Örneğin;

düz metin: “Bilgisayarların şifreleri kırıldı”
şifrelenmiş metin: “DLOİUÖÇBÇTOÇTKÖ ÜLHTĞOĞTL NKTKOGK”

Sezar şifrelemesi 3 önemli zayıflığı vardır. Şifrelenmiş metinden hangi dilin kullanıldığı rahatlıkla anlaşılabilir. Türkçe için düşündüğümüzde sadece 28 ayrı şifreleme geliştirilmiş olabilir. Şifreleme ve deşifreleme algoritmalarının biliniyor ve kolaylıkla uygulanabiliyor olması da diğer zayıf olduğu yönüdür. Sezar şifrelemesi ile şifrelenmiş bir metin “Brute Force” bir saldırı ile kırılabilir. Brute Force, kelime anlamı olarak kaba kuvvet demektir. En zayıf ama en kesin saldırı yöntemidir. Sezar şifrelemesi gibi algoritmaların bilindiği yöntemlerde olası bütün kombinasyonların denenmesi demektir. Daha sonraları çokça bahsedeceğimiz “Brute Force” saldıraların nasıl gerçekleştirileceği ve bu saldırılardan nasıl korunabileceğimizi kodlarıyla birlikte açıklayacağız. Şimdilik 28 ayrı şifrelemenin de denerek düz metnin ele geçirilmesi olarak bilmeniz yeterli olacaktır.

Sezar şifrelemesindeki 28 ayrı şifrelemenin yetersizliği açıktır.

Monoalphabetic Ciphers(Tekli alfabeye dayanan şifreleme): Sezar Şifrelemesindeki mantığı biraz daha geliştirilerek, her harfe rastgele bir harfin eşleştirilmesi mantığına dayanmaktadır. Yani A ile eşlenen harf arasındaki ilişki diğer hiç bir harf arasında yer almamaktadır. Bunun basit bir örneğini her haftasonu gazetelerin ilavelerinde verdikleri “Şifreli bulmacalar” da görmekteyiz. Orada harfler yerine rakamlar verilmektedir. Çözülebiliriliğini arttırmak için şifrelenmemiş metin üzerine bir kaç örnek ve şifrelenmemiş metnin içeriği hakkında bilgi verilmektedir.

Monoalphabetic Cipher’lar ile Türkçe için “29!-1” ayrı şifreleme söz konusudur. İlk bakışta çok güvenli izlenimi yaratmasına karşın monoalphabetic cipherlar da kırılabilmektedir. Hala daha şifrelemenin yapıldığı dil rahatlıkla tespit edilebiliyor. Şifrelemenin yapıldığı dil üzerine istatiksel bir araştırma yaparak kısa sürede kırmanız mümkündür. Her dilde belirli karakterlerin tekrarlanma frekansları belirlidir. Elimizdeki şifrelenmiş metinde en çok tekrarlanan karakterler ile şifrelemenin yapıldığı dildeki en yüksek frekanslı karakterleri eşleştirdiğinizde tahmin ettiğinizden çok daha kısa bir sürede kırabilirsiniz. Zaten eşleştirmelerden sonra elimizdeki şifreli metnin haftasonu gazetelerinde verilen bulmacalardan pek bir farkı kalmıyor.

Monoalphabetic tekniğinin biraz daha geliştirmenin bir diğer yolu da şifreleme boyunca farklı “yerine koyma teknikleri” kullanmaktır. Bu tür yaklaşımların genel adı Polyalphabetic Ciphers(çoklu alfabeye dayanan şifreleme)’ dır. Bu tür şifreleme mekanizmalarının çoğunda iki ortak özellik vardır:

Önceden tanımlanmış bir monoalphabetic yerine koyma kuralları kümesi vardır, Bir anahtar verilen dönüştürme işlemi için hangi kuralın kullanılacağını belirler.

Multiple-Letter Encryption(Çoklu Harfle Şifreleme): Verilen düz metindeki ikili harflere tek bir birim olarak ele alan ve işleyen şifreleme tekniğine dayanan Playfair multiple-letter encryption için en çok bilinen yöntemdir. Digraph(tek sesi temsil eden iki harf) olarak alınan harfler yine digraph olarak şifrelenir. Playfair algoritması ingilizce için özelleşmiş bir şifreleme algoritmasıdır. 5x5’ lik bir matris kullanılarak yapılır. Playfair, İngiliz bilim adamı 1854’te Sir Charles Wheatstone tarafından ilk defa ortaya atılmıştır. Ancak Playfair’e destek veren ve savunan Baron Playfair of St. Andrews ismiyle anılmıştır. Playfair ile ilgili yapacağınız hemen hemen her araştırmada karşınıza çıkacak klasik ve açıklayıcı bir örnek vardır. Bu örnek de Lord Peter Wimsey tarafından Dorothy Sayer’s Have His Carcase adlı eserinden alınmıştır.

Yukarıda verilen örnekte anahtar kelime “monarchy” dir. Matris anahtar kelimede geçen harflerin dışındaki harflerin soldan soğa ve yukarıdan aşağıya doğru sırayla yazılmasıyla oluşturulmuştur. I ve J harfleri bir harf olarak sayılmıştır. Metin her seferinde iki karakter alınarak ve aşağıdaki dört kural uygulanarak şifrelenirler.

Tekrarlanan karakterler önceden kabul edilmiş bir doldurma karakteriyle birbirinden ayrılırlar. Kural olarak olmasada genel olarak X karakteri kullanılır. Örneğin, “balloon” kelimesi “ba lx lo on” şeklinde ikililere ayrılarak şifrelenecektir. Matriste aynı satıra düşen düz metin karakterleri için kural, her harfi bir sağındaki harf ile değiştirmektir. Örneğin, AR digraphı, RM olarak şifrelenecektir. (Matristeki çemberselliğe dikkat edin). Matriste aynı sutüna düşen düz metin karakterleri için kural, her harfi bir altındaki harf ile değiştirmektir. Örneğin, MU digraphı, CM olarak şifrelenecektir. (Matristeki çemberselliğe dikkat edin). Eğer yukarıdaki üç koşuldan hiç biri de karşılanmıyorsa, her düz metin karakteri, kendisiyle aynı satırdaki, eşleniği karakterle aynı sutündaki harf ile değiştirilir. Örneğin, HS digraphı BP olarak, EA digraphı da IM/JM olarak şifrelenecektir.

Monoalphabetic şifrelemelere göre çok daha güvenilirdir. Her şeyden önce, monoalphabetic şifrelemede, (İngilizce için) sadece 26 harf varken, burada (İngilizce için) 26x26=676 ayrı digraph vardır, bu sayede tek bir digraphın çözülmesi biraz daha zorlaşmıştır. Bununla beraber karakter tekrarlanma frekansının oluşturulacak şifreli metni etkilemez. Bu sebeplerden ötürü, uzun süre playfair’ın kırılmasının imkansız olduğu düşünüldü. I. Dünya Savaşında İngiliz Ordusu ve II. Dünya Savaşında da U.S. Ordusu ve müttefikleri tarafından kullanılmıştır. Bu kadar güvenli olduğu sanılan Playfair şifrelemesinin kırılması aslında tahmin edilen çok daha kolaydır. Şifrelenmemiş düz metnin dili ve yapısı hakkında bir çok bilgiyi şifrelenmiş metinden elde edebiliyoruz. Genellikle bu şifreleme tekniği ile şifrelenmiş metinlerin kırılması için bir kaç yüz karakterlik şifreli bir metin yeterli olmaktadır. Oysa bir şifreleme tekniğinin tam anlamıyla güvenli bir şifreleme tekniği olabilmesi için ne kadar şifrelenmiş metin olduğunun önemi olmamalıdır. Elimizde on binlerce karakter şifrelenmiş metin olsa bile, bu bizim şifreyi kırmamıza yetmemelidir.

Not: Her ne kadar playfair sadece İngilizce için geliştirilmiştir dediysek de, Türkçe için de aynı yöntemi uyarlamak mümkündür. Ancak bununla ilgili hiç bir resmi kaynakta belgelenmiş bir yazı bulunmamaktadır. O yüzden Türkçe için yoktur diyebiliriz, ancak yapılamaz diyemeyiz.


Son Söz

“Klasik Şifreleme Teknikleri” isimli yazılarımızın ilki olan bu makalemizde, şimdiye kadar kullanılmış klasik şifreleme tekniklerini ve bunların yetersizliklerini sizlere aktarmaya çalıştık. Burada bahsi geçen teknikler bazı sistemlerde hala daha kullanılıyor olmalarına karşın, çok daha fazla güvenlik gerektiren sistemlerde artık bu tür şifreleme teknikleri kullanılmamaktadır. Çok daha kompleks ve zor kırılan şifreleme tekniklerine daha sonraki makalelerimizde geçiş yapacağız. Ancak, klasik şifreleme tekniklerine devam edeceğimiz bir sonraki makalemizde yer değiştirme tekniklerini irdeleyeceğiz.

[email protected]
Suphi UÇAR – Yunus Emre ALPÖZEN


Referanslar

Stallings. William. 1995. Network and Internetwork Security Principles and Practice. Prentice Hall. New Jersey.
Kahn. David. 1967. The Codebreakers: The Story of Secret Writing. New York: Macmillan.

Yazar : Yunus Emre ALPÖZEN
e-Posta : yunus.alpozen et msakademik.net












Derecelendir
Kaynak Suphi UÇAR – Yunus Emre ALPÖZEN
İçerik İhbarı



Open Source Document Project AUP&TOS