Kriptografi Nedir
Kriptografi, kelime kökeni olarak Yunanca gizli/saklı anlamına gelen kryptós ve yazmak anlamına gelen gráphein kelimesinden türetilmiştir.
Kriptografi, gizlilik, kimlik denetimi, bütünlük gibi bilgi güvenliği kavramlarını sağlamak için çalışan matematiksel yöntemler bütünüdür. Bu yöntemler, bir bilginin iletimi esnasında karşılaşılabilecek aktif ya da pasif ataklardan bilgiyi -dolayısıyla bilgi ile beraber bilginin göndericisi ve alıcısını da- koruma amacı güderler.
Bir başka deyişle kriptografi, okunabilir durumdaki bir bilginin istenmeyen taraflarca okunamayacak bir hale dönüştürülmesinde kullanılan tekniklerin tümü olarak da görülebilir.
Şifre yazımı bilimi olarak bilinen kriptolojinin kullanım alanıdır.Kısaca bazı temel şeyleri sağlayabilmek için bırakın bilgisayarı insanlık tarihinin başlarına kadar giden bir bilim ve tekniktir.Temel amaçları;Gizlilik,kimlik tanımlama,bütünü koruma ve değişmezliktir.Benim anlatacağım genel olarak bilgisayar kısmını ve daha çok internette kullanabileceğiniz kısım olacaktır.
Kripto işlemini ikiye ayırırsak temel olarak şifreleme ve deşifreleme işlemleri yapar.Buda alıcı ve verici arasındaki bir anahtarla olabilir.
Verici elindeki mesajı anahtar yardımıyla şifreler ve alıcıya gönderir alıcıda aynı anahtarlar deşifreleme işlemi yaparak mesajı almış olur böylece alış-veriş arasında başkasına geçme durumunda dahi mesaj içinden bilgi sızdırılmaz.İşte hackerlar burada devreye girer.Temel kripto sistemlerinin çözüm yöntemleri vardır,bunlardan en basit görüneni elimizdeki mesajı açmak için tüm olasılıklara göre şifreleme tekniğinde denemek ve karşılaştırmaktır.Ama çok zor tabir edilen tekniklerle şifrelenmiş olgularda bu imkansıza yakındır.
Simetrik - Asimetrik
Temel kriptolojide iki ana gruba ayrılır;Simetrik ve asimetrik.Simetrik şifrelemelerde alıcı ve verici arasında mesaj alış-verişi aynı anahtarla olur yani verici gönderirken kullandığı anahtarla alıcı mesajı deşifreleyebilir.Asimetrik şifrelemede ise 2 anahtar olur.Verici bu iki anahtardan biriyle şifreler fakat alıcı deşifreleme işlemi için vericinin kullanmadığı anahtarı kullanmak zorundadır.
Temel bit işlemleri ve kullanımı
Aslında matematiği seven biri için biçilmiş kaftandır kriptoloji temel olarak işlem pratikliği için büyük sayıların bitlere dönüştürülmüş halidir.Yani mesela 4 bit 128 karaktere eşdeğerdir.Bunun temeli ise 2 nin kalanlar sınıfıdır (0,1).Aynı şekilde 4 bitlik bir karakter 4 tane 0 ve 1 in yan yana yazılmış halidir.
Bir şifrenin çözülme olasılıkları
Tamamen rakamlardan oluşmuş şifreler için standartların dışında kısa yoldan çözümler vardır ama kesin süreleri bitlere göre değerlendirirsek;
32 bitlik bir şifreyi 10^6 / s hızında çözmek 36 dakika alır
40 bitlik bir şifreyi 10^6 / s hızında çözmek 6 gün alır
64 bitlik bir şifreyi 10^6 / s hızında çözmek 292000 yıl alır
128 bitlik bir şifreyi 10^6 / s hızında çözmek 54*10^23 yıl alır.
Görüldüğü gibi 2 nin katlarında arttıkça çözme süresi imkansıza doğru ilerliyor.Tabi makine hızıda gene 2 katında artarsa bu hızlar aynı oranlarda yarıya bölünerek azalır.
Tek kullanımlık Şerit
Kısacası elimizdeki mesaj kadar uzun bir anahtardır.Rast gele seçilmiş şifreleme işleminde mesajdaki her harf ve o harfin şeritteki karşı gelen harfi sayıya çevirilip toplanılır. Harfler sayıya çevirilirken alfabedeki sıra numaraları kullanılabilir. Toplam alfabedeki harf sayısını aşarsa alfabedeki harf sayısı toplamdan çıkartılır. Elde edilen sayı ya doğrudan yazılır veya bir harfe çevrilir.
Gene deşifreleme için aynı anahtar şerit ile işlem tersinden yapılır; bu sefer şeritteki harfler şifreli mesajdaki harflerden çıkartılır, toplam sıfırın altına düşerse alfabedeki harf sayısı eklenir.
Şifresiz Metin: BUMESAJTEKKULLANIMLIKSERITILESIFRELENMISTIR
Şerit: DOKPEZRHOCVSVMLNDTKBJTSDSULEPLSSZCHEBZMQCHJ + (mod 26)
Şifreli Metin: EIWTWZAASMFMGXLALFVJTLWUANTPTD***GSIOLUIVPA
Şeritteki harflerin rasgele seçilmiş olması çok önemlidir. Harfleri rasgele seçilmiş bir şerite, harfleri düzenli olan bir mesaj eklersek, elde ediceğimiz harfler gene rasgele olacaktır. Dolayısıyla bu şifreli mesajı çözmek için hangi şeridin kullanıldığını tahmin etmekten başka çaremiz yoktur. Şerit ile mesaj aynı uzunlukta olduğuna göre (bu da bir şeridin sadece bir kere kullanılmasını gerektirir) bütün şeritleri denersek, o uzunluktaki bütün mesajları da elde ederiz. Dolayısıyla tek kullanımlık şeridin güvenilirliği kanıtlanmıştır. Şeritle şifrelenmiş mesajdan sızan tek bilgi, onun varlığı ve uzunluğudur.
Açık Anahtar Kriptografisi
Yukarda yazdığım gibi teme olarak simetrik ve asimetrik anahtarlar vardır.Simetrik anahtar tek anahtardan oluşur ve bilgi alışverişi sırasında başkasında da bu anahtar varsa bilgiyi deşifreleyebilir.Bu yüzden ilk asimetrik şifreleme yöntemleriyle açık anahtar olgusu oluşmuştur.Bunlardan birine açık diğerinede gizli anahtar adı verilir.Açık anahtar bilinendir ve gizlenmesine gerek yoktur şifreleme işleminde kullanılır ama şifreyi çözme (deşifreleme) işleminde gizli anahtar ihtiyacı olduğundan sadece alıcıda bulunur ve onun yardımıyla çözülür.
Kapan işlemleri
Aynı şekilde asimetrik çözümlerde kapan işlemleride kullanılır.Bunlar değişken bir uzunluktaki metni sabit uzunlukta değer üreterek şifrelerler. 1 gigabaytlık bir dosyayı 128 bitlik sonuç veren bir kapan işleminden geçirirsek, o dosyanın her bitine bağımlı bir parmakizi elde ederiz. Dosyadaki herhangi bir kasıtlı veya kasıtsız değişiklik (bir bitlik bile olsa) kapan değerine yansır. Ayrıca parmakizinden metinin içeriği hakkında herhangi bir bilgi elde edilemediğinden kapan işlemler tek yönlü olarak nitelenir. Güvenli bir kapan işlemi ile, belli bir parmakizini verecek bir dosya yaratmak veya parmakizleri aynı olan iki dosya yaratmak çok zordur.
Hack ve Kullanım alanları(herkes burayı bekliyordur muhtemelen)
Kriptoloji bilimi şuanda bankalar önemli veri alışverişi olan şirketler hatta devletler arası gizli görüşmelerde kullanıldı kullanılıyor ve kullanılacaktır.Bu yüzden hackerların üstünde durduğu temel bir bilimdir.Yıllar boyunca çözüm üretmek için kullanılmıştır.En başta dediğim gibi hiçbirşey yapamıyorsak Brute force (deneme yanılma) yöntemiyle tüm şifreleri çözmek mümkün ama yukarda verdiğim örnekte olduğu gibi kimsenin 292000 yıl yaşayacağını sanmıyorum.Bu yüzden temel olarak kendi tekniğimizi geliştirmek zorundayız.Bir sürü şifreleme tekniği var ve hepsinin değişik çözümleri var. Bu yüzden demek istediğim bir şifreyi çözmek için basit bilgisayar kullanıcısı olmanın üstüne çıkmalısınız.Şuanda yaygınlaşmaya başlayan dijital imza olayı ilede hackerların önü kesilmek isteniyor bu muhtemeldir ama hiçbirşey imkansız değildir.Dijital imzalar 128 bitlik şifreleme teknikleriyle encyrpt edilmiş verilerdir.Yani bir mail veya başka bir şey için kendimizi tanımlamak amacıyla altında dijital imzamız olmalıdır.Bir yabancı(muhtemelen hacker) dijital imzamızı ele geçirse bile çözemiyecek ve güvenilirlik garanti olacaktır.İşte bu yüzden kriptoloji önemlidir.