27 Mayıs 2009 Çarşamba

Kripto Sistemlerinin Karşılaştırılması

Asimetrik ve simetrik kriptografi sistemlerinin özelliklerini aşağıdaki karşılaştırma tablosuna görebilirsiniz:


Simetrik Kriptografi
Gizlilik - Sağlar
Bütünlük --
Kimlik doğrulama --
İnkar Edememezlik --
Performans - Hızlı
Güvenlik - Anahtar uzunluğuna bağlı
Asimetrik Kriptografi
Gizlilik - Sağlar
Bütünlük - Sağlar
Kimlik Doğrulama - Sağlar
İnkar Edilemezlik - Sağlar
Performnas - Yavaş
Güvenlik - Anahtar uzunluğun bağlı

20 Mayıs 2009 Çarşamba

Asimetrik Kriptografi

Asimetrik Kriptografi
Şifreleme ve şifre çözme işlemlerinin farklı anahtarlarla yapıldığı algoritmalara asimetrik algoritmalar denilmektedir. Asimetrik algoritmalar temelini matematikten alaktadır. Asimetrik algoritmaları kullanan taraflar; aynı şifreleme algoritmasını kullanmaktadırlar.

Kuvvetli Yönleri
• Hazırlanan algoritmaya bağlı kaba kuvvete dirençlidir.
• Kriptografinin ana ilkeleri olarak saydığımız; bütünlük, kimlik doğrulama ve inkar edememezlik güvenli bir şekilde hizmeti sağlanabilir.
• Anahtarı kullanıcı belirleyebilir.

Zayıf Yönleri
• Şifrelerin uzunluğundan kaynaklanan algoritmaların yavaş çalışması.
• Anahtar uzunlukları bazen sorun çıkarabiliyor olması.

Asimetrik Algoritmalar
Başlıca aimetik algoritmalar; RSA, Diffie-Hellman, ElGamal, Paillier, EKE, DSA vs. sonraki makalelerimizde bu algoritmalar hakkında bilgi edinebilirsiniz.





RSA Algoritması


Başlıca asimetrik kriptografi algoritmaları RSA, Eliptik Eğri Sistemleri, El Gamal ve Diffie-Hellman anahtar belirleme olarak sıralanabilir. Asimetrik kriptografi algoritmaları, simetrik algoritmalardan farklı olarak çözülmesi zor olan matematiksel problemlere dayanır.

•Açık anahtar kriptografik sistemi ve sayısal imzalama yöntemi olarak kullanılır.
•Çarpanlarına ayırma problemi üzerine inşa edilmiştir.
•Bileşik tam sayı olan n'i oluşturan, asal sayılar p ve q bulunur, öyleki n=pq 'dir.
•Yeterince büyük bir n için kırılması çok zordur.
•Ayrıca kök bulma problemine de dayanır.
•Çok güvenlidir fakat fazla hızlı değildir


En yaygın olarak kullanılan asimetrik algoritmadır. R. Rivest, A. Shamir, L. Adleman tarafından 1977 yılında bulunmuş ve 1978 yılında yayınlanmıştır. Adını mucitlerinin isimlerinin ilk harflerinden almıştır. Aşağıdaki özelliklere sahiptir.

•Açık anahtar kriptografik sistemi ve sayısal imzalama yöntemi olarak kullanılır.
•Çarpanlarına ayırma problemi üzerine inşa edilmiştir.
•Bileşik tam sayı olan n'i oluşturan, asal sayılar p ve q bulunur, öyleki n=pq 'dir.
•Yeterince büyük bir n için kırılması çok zordur.
•Ayrıca kök bulma problemine de dayanır.
•Çok güvenlidir fakat fazla hızlı değildir

Algoritmanın kullandığı parametreler şunlardır:


Açık anahtar : n, e


Özel anahtar : d


n bileşik bir tamsayıdır ("modulus")


e bir tamsayıdır ("açık üs ifadesi")


d bir tamsayıdır ("gizli üs ifadesi")
öyleki


ed ≡ 1 (mod (p-1)(q-1))


ve p, q sayıları n' nin asal çarpanlarıdır.

Algoritmanın Kullanımı


Ayşe, Bora'ya m mesajını şifreli göndermek için:

m'nin e'inci üssünü alır, yani m'yi Bora'nın açık anahtarı ile şifreler:
c = me mod n
c ("şifreli mesajı")'yi Bora'ya gönderir

Bora c sayısının d'nci üssünü alır, yani c'nin şifresini kendi özel anahtarını kullanarak çözer:
m = cd mod n

Algoritmanın incelenmesi


• Ayşe'nin işi kolaydır, sadece iki tane modüler çarpma işlemi yapar.
• Bora'nın işi kolaydır, 1.5 logn tane modüler çarpma yapar.
• Eğer asal sayılar p, q bilinirse işlem daha hızlı yapılabilir.
• Düşmanın işi zordur çünkü kök bulma ya da çarpanlarına ayırma problemini çözmelidir.
• Etkili bir çözümü bulunmamıştır.
• Modulus n sayısı arttıkça algoritmanın güvenliği artar.

Asimetrik Kriptografi Anahtar Yöntemi


Asimetrik kriptografi için anahtar yönetimi çok önemlidir. Anahtar yönetimi için dikkat edilmesi gereken noktalar şöyle sıralanabilir:

• Açık anahtarlar kontrollü olarak bir otorite tarafından yayınlanmalı ve değiştirilmeleri önlenmelidir.
• Anahtar çiftleri merkezi bir otorite tarafından üretilebilir veya her kullanıcı kendi anahtar çiftini üretebilir.
• Şifreleme ve imzalama için ayrı ayrı anahtar çiftleri olmalıdır. Çok özel durumlar için imzalama ve şifreleme anahtar çiftlerinin aynı olmasına izin verilebilir.
• Anahtar iptalleri kontrollü bir şekilde yapılmalı ve duyurulmalıdır.

Asimetrik kriptografi için anahtar yönetimi simetrik kriptografiye göre daha kolaydır çünkü bir kullanıcıyla şifreli haberleşmek isteyen kişi karşı tarafın açık anahtarına ihtiyaç duyar. Bu açık anahtar kamuya açık olarak yayınlandığı için sisteme giren bir kişi için sadece bir anahtar çifti üretmek yeterli olmaktadır.

Kriptoanaliz ve Yöntemleri

Kriptoanaliz, bir şifreleme sistemini veya sadece şifreli mesajı inceleyerek, şifreli mesajın açık halini elde etmeye çalışan kriptoloji disiplinidir. Kriptoanaliz çalışması sırasında kriptoanaliz yapan kişinin elinde çoğu zaman çok az bilgi vardır. Değişik durumlar aşağıda listelenmiştir:

Şifrelenmiş mesaj analizi : Kriptoanaliz yapan kişinin elinde sadece şifreli bir mesaj vardır. Mesajın açık hali ile ilgili hiç bir ipucu yoktur.

Tam bir açık mesajın analizi : Kriptoanaliz yapan kişinin elinde bütün bir mesajın hem açık hali hem de şifreli hali vardır.

Yarım olarak elde edilmiş açık mesajın analizi : Kriptoanaliz yapan kişi bir mesajın açık halinin belirli bir kısmına ve şifreli halinin tamamına sahiptir.

İstenen açık mesajın şifrelenmiş halinin analizi : Kriptoanaliz yapan kişi istediği açık mesajın şifreli halini elde edebilmektedir. Bu şifrelemeyi yapan cihazın veya yazılımın çalışan bir kopyasına sahip olarak veya şifrelemeyi yapan sistemi fark edilmeden kullanmakla mümkün olur.

Şifreli mesajın şifreleme algoritması bilinerek analizi : Kriptoanaliz yapan kişi elindeki şifreli mesajın hangi yöntemle şifrelendiğini bilmektedir.

Kullanılan kriptoanaliz yöntemleri ise aşağıda listelenmiştir:

Kaba kuvvet yöntemi : Bu yöntem bir şifreleme algoritması tarafından kullanılabilecek tüm anahtarları tek tek veya belirli bir mantık çerçevesinde deneyerek şifreyi çözmeye çalışır.

Diferansiyel kriptoanaliz : Bu yöntem bilinen açık-şifreli mesaj çiftleri arasındaki farkların hesaplanması temeline dayanır.

Basit Şifreleme Yöntemleri

Basit şifreleme yöntemleri genellikle kağıt kalem kullanarak gerçekleştirilebilen, çok karışık matematik temellere dayanmayan sistemlerdir. En gelişmiş örnekleri mekanik cihazlar olan basit şifreleme yöntemleri, elektronik cihazların kullanılmaya başlanmasıyla beraber ortadan kalkmıştır.

Mono Alfabetik Şifreleme


En eski ve basit şifreleme yötemlerinden birisi olan Sezar yöntemi mono alfabetik şifrelemenin tipik bir örneğidir. Sezar döneminde kullanılan bu yöntemde harflerin yeri değiştirilir. Şifrelenecek metindeki harfler alfabede 3 harf kaydırılarak değiştirilir.

Sezar Şifresi : ci= E(pi) = pi+3 mod 29

Açık Mesaj : Gizli Bilgi
Şifreli Mesaj : Ilcol Dloıl

Bu yöntemin biraz daha gelişmişi olan tablo yönteminde ise alfabedeki her harf başka bir harfle yer değiştirir ama bu bir kurala bağlı olmadan karışık bir şekilde yapılır.

ABCÇDEFGĞHIİJKLMNOÖPRSŞTUÜVYZ



CÇAVYJŞÜZKÖTUENOİPFGILĞHRMBDS

Mono alfabetik şifreleme yöntemleri bilgisayar yardımıyla çok kısa sürede kırılabilir. Bu yöntemler kullanılan dildeki harflerin yerini değiştirir ama harflerin kullanım sıklığını (frekansını) değiştirmez. Örneğin Türkçe'de en çok kullanılan harf olan "a" harfi tablo yöntemi kullanılarak "c" harfi ile yer değiştirilirse elde edilecek şifreli metinde en çok tekrar eden harfin "c" olduğu görülür ve bunun "a" harfi olabileceği tahmin edilerek şifre çözülmeye başlanabilir.






Poli Alfabetik Şifreleme




Bu tip şifrelemede, mono alfabetik yöntemlerden farklı olarak bir harf değiştirilince her seferinde aynı harfe dönüşmez. Bu yöntemlere güzel bir örnek Vigenere tablosudur.








Bu yöntemde oluşturulan tablo ve bir anahtar kelime kullanılarak şifreleme yapılır.

Şifreleme



Açık Mesaj (sütun) : BULUŞ MAYER İANKA RA
Anahtar Kelime (satır) : KALEM KALEM KALEM KALEM ...
Şifreli Mesaj : LUZAĞ ZAJIF UABÖM DA...

Şifre Çözme




Şifreli Mesaj (tablo) : LUZAĞ ZAJIF UABÖM DA...
Anahtar Kelime (satır) : KALEM KALEM KALEM KALEM ...
Açık Mesaj (sütun) : BULUŞ MAYER İANKA RA

Poli alfabetik şifreleme yöntemleri de bilgisayar yardımıyla ve frekans sayımı ile çok kolay ve çabuk çözülebilmektedir.

Tek Kullanımlık Karakter Dizisi (One-time Pad)


Bu basit şifreleme yönteminde rastgele üretilen bir karakter (harf veya rakam) dizisi kullanılarak şifreleme yapılır. Açık mesaj içinde yer alan her karakter, üretilen dizide karşısına denk gelen karakterle işleme sokularak (Örneğin modüler toplama işlemi) şifreli mesaj elde edilir. Mesajı çözmek için rastgele dizinin bilinmesi gereklidir. Bu yönteme Vernam şifreleme yöntemi denir.

Açık Mesaj : BULUSMAYERIANKARA
Rastgele Dizi : DEFRYPLCNMLJKHFGH
Şifreli Mesaj : RLDYDOY....

Bu yöntemin güvenliği rastgele üretilen diziye bağlıdır. Bu dizi gerçekten rastgele üretilmelidir, eğer bir kurala bağlı olarak üretilirse ve bu kural saldırgan tarafından bilinirse sistem kırılabilir. Bu tehdit dışında sistem mükemmel bir şifreleme sistemidir ve ilk olarak 1917'de bulunup "teletype" makinelerinde kullanılmıştır.

Simetrik Kriptografi

Simetrik KriptografiSimetrik algoritmalarda; şifreleme ve şifre açma işlemi aynı anahtar üzerinde yapılmaktadır.Bu tür algoritmalar da haberleşen taraflar;

• Aynı şifreleme algoritmaları kullanır.

• Algoritmalar birbirine uyumludur.

• Anahtarlar birdir.


Kuvvetli Yönleri

• Algoritmalar olabildiğince hızlıdır.

• Donanımla birlikte kullanılması.

• Güvenlidir.


Zayıf Yönleri

• Güvenli anahtar dağıtımı zordur.

• Kapasite sorunu vardır.

• Kimlik doğrulama ve bütünlük ilkeleri hizmetlerini güvenli bir şekilde gerçekleştirmek zordur.


Blok şifreleme ve dizi şifreleme algoritmaları olarak ikiye ayrılmaktadır.Blok Şifreleme AlgoritmalarıBu tür algoritmalar veriyi bloklar halinde işlemektedir. Bazen bağımsız bazen birbirine bağlı olarak şifrelemektedir. Bunlar;AES: Advanced Encryption Standard (Gelişmiş Şifreleme Standardı), uluslararası olarak kullanılan bir blok şifreleme algoritmasıdır. Vincent Rijmen ve Joan Daemen tarafından geliştirilmiş olup DES şifreleme algoritmasının zayıf noktalarını karşı oluşturulmuştur.Blowfish: Eskiyen DES şifreleme algoritmasının yerini alması ve diğer şifreleme algoritmalarının yerine alması. Bruce Schneier tarafından 1993 yılın da tasarlanmıştır.Camellia Cipher: Bilinen tüm şifre çözme saldırılarına karşı koyabilmek için yüksek güvenliği göz önünde bulundurularak tasarlanmıştır.DES: Data Encryption Standart (Veri Şifreleme Standardı ) dünyanın en çok kullanılan şifreleme algoritmalardandır. 1970 li yıllarda geliştirtmiştir. Günümüzde DES şifreleme algoritması güvenini kaybetmiştir.3DES: DES şifreleme algoritmasının güvenini kaybetmesinden dolayı IBM tarafından 1987 yılında geliştirtmiştir.Feistel Cipher: Bu Simitrik algoritma bilinen şifreleme blok şifreleme algoritmalarının temelini teşkil etmektedir.IDEA: International Data Encryption Algorithm (Uluslar Arası Veri Şifreleme Algoritması) 1992 yılında geliştirilmiştir. Kaynak kodu ücretsiz olmasına rağmen ticari amaçlı kullanımlar için lisans gerekiyor.Playfair Cipher: Temelini matematiksel matrislerden alan ve bilinen en basit algoritmadır.SkipJack: NSA tarafından tasarlanmış ve tasarımı ile ilgili bilgiler 1993’den 1998’e kadar gizli tutulmuştur.

Güvenli Şifreleme Yöntemleri

Bilindiği üzere bir sistemi basitleştiren, onun kullanabilirliğinin basit bir düzeye inmesidir. "Basit Şifreleme Yöntemleri" başlığı altında aldığımız yöntemler daha güvenli olmaya ihtiyaç duydukları için kriptografinin değer kazanıp ileri bir seviye gelmesiyle beraber bu başlığı açabilmemize vesile olmuştur. Dolayısıyla sırada basit yöntemleri temel edinmiş dev yapılar var.


Güvenli şifreleme yöntemleri klasik şifreleme yöntemlerinin zayıf yönlerini ortadan kaldıran ve kriptoanalize karşı dirençli olan algoritmalarla gerçeklenir. Bu yöntemler elektronik sistemlerde (bilgisayar, telekomünikasyon vb) kullanılır ve ikili düzende (binary) saklanan ve taşınan bilgi üzerinde uygulanır. Bu nedenle anahtar olarak bit dizileri kullanılır.






Bir şifreleme algoritmasının güvenliği belirleyen en önemli değişkenlerden birisi anahtar uzunluğudur. Örneğin 64 bitlik bir anahtar kullanan şifreleme algoritması için toplam anahtar sayısı 264= 1019 adettir. Şifrelemede bu anahtarlardan herhangi birisi kullanılabileceği için bu anahtarı tahmin yoluyla elde etme olasılığı çok düşüktür.

64 bitlik Anahtar = 1100101010110001 0001101000000111 0110100010011110 1100111010011011

Kriptolojide bahsedilen rakamlar genellikle çok büyük olduğu için, fiziksel dünyadaki bazı büyük rakamları bilmek okuyucuların hayal gücü için faydalı olacaktır.

Büyük Rakamlar
Yıldırım düşmesi sonucu ölme ihtimali (1 gün için) = 9 milyarda bir (233)
Evrenin yaşı = 1010 (234) yıl
Dünyadaki atomların sayısı = 1051 (2170)

Güvenli şifreleme temel olarak iki çeşittir :

Simetrik Kriptografi

Asimetrik Kriptografi






















17 Mayıs 2009 Pazar

Kriptolojideki Düzen:Algoritma...

Öncelikle kriptolojiyi düşüncesini uygulanabilir hale getirmek için, onu belirli bir düzene göre sıralayıp, her adımın birbirini takip ederken aynı zamanda etkide bulunduğu bir sistem yaratmalıyız. İşte algoritma, bu noktada kriptolojiye bir rehber olur. Karmakarışık bir düzene sahip olan bir şehirdeki bir yabancıyı düşünün. Ona bir yere ulaşması için bir yol tarifi vermeniz gerekiyor. Fakat ne yazık ki her sokak birkaç cümleyle ifade edemeyeceğiniz kadar ters noktalarda. Bu nedenle adım adım ve her adımı birbiriyle bağlantılı bir tarifte bulunmanız gerekiyor. Belki de tarifinizi bir krokide ifade etmeniz daha kolay. İşte soyut olarak düşündğümüz bu krokinin şemasal haline algoritma diyoruz. Tabiiki bu en basit tanımı olarak karşınızda. Şunu da düşünmemiz gerek ki: "eğer o yol kapalıysa bu yolu seç" tanımında adımlarımızda olabilirdi. Yani bir çok gereklilikler ve şartlar tarifimize etkide bulunabilirdi. Sonuç olarak algoritma: Belli bir durumdan başlayarak sonlu sayıda adımda belli bir sonucu elde etmenin yöntemini tarif eden iyi tanımlanmış kurallar kümesidir. Algoritmalar özel durumlara çözüm sunmazlar. Genel çözümlerin işlem basamaklarını içerirler. Başka bir örnek olarak:

I. Yoğurdu bir kaba koy
II. Karıştır
III. Aynı miktarda su ilave et
IV. Biraz tuz ekle
V.Tekrar karıştır


Yada şemasal olarak göstermemiz gerekirse:




Bunların yanı sıra kaynağını matematikten alan algoritmanın matematiksel uygulamalarına da örnek verilebilir:

Sonucu bir matematik problemin çözümü olan başka bir basit örnek de Öklid'in ortak bölenlerin en büyüğünü bulan algoritmasıdır.
giriş: iki sayı m, n
1. eğer n = 0 ise, sonuç m dir
2. m'nin yerine n koy, n nin yerine m%n koy, tekrar 1'den başla.
Bu örnekte m%n bölmenin kalanıdır, yani 5%2 = 1'deki gibi. Algoritmayı 33 ve 15'e uygulayalım:
33,15
15,3
3,0
sonuç 3

Bir başka ve algoritma için son olan örnek ise, bigisayar... Her türlü yazılım ve bilgisayar için geçerli olan denklemler bu yolla yapılmaktadır:

A0 --> Başla
A1 --> Sayaç=0 (Sayaç'ın ilk sayısı 0 olarak başlar.)
A2 --> Sayı=? : T=T+Sayı (Sayıyı giriniz. T'ye sayıyı ekle ve T'yi göster.)
A3 --> Sayaç=Sayaç+1 (Sayaç'a 1 ekle ve sayacı göster.)
A4 --> Sayaç<4> O=T/4 (Ortalama için T değerini 4'e böl)
A6 --> O'yu göster. (Ortalamayı göster.)
A7 --> Dur

Algoritmanın kriptolojiyle ilgisi basit olarak ortadadır. Kriptoloji anahtarını kullanarak bir kapıyı kilitlemek ya da açmak için, anahtarın dişlerinin algoritmaya göre kalıplanmış olması gerekmetedir. Kısacası, Kriptolojideki işlem bütünlüğünü sağlayabilmek için gerekli olan "ifade biçimi" algoritmadır. Başka bir deyişle kriptoloji şifreleme algoritmasının uygulamasıdır.

Artık inceleme alanımız biraz daha detaylandırılabilir. Fakat yeni başlığımıza geçmeden önce, algoritmanın örneklerini çoğaltarak düşüncelerimizi daha oturaklı ve yaratmaya müsait hale getirebilceğimizi düşünüyorum. İşte bir kaç örnek daha:

Algoritma Akış Şeması

Adım 1-Başla
Adım 2-A,B'yi oku
Adım 3-A=B ise Adım 7'ye git
Adım 4-A>B ise Adım 6'ya git
Adım 5-B'yi yaz Adım 8'e git
Adım 6-A'yı yaz Adım 8'e git
Adım 7-"A veB eşit"mesajını yaz
Adım 8-DUR



Bir okulda bulunan 10 sınıftaki 30'ar öğrencinin herbirinin 12 şer dersten aldıkları
notların ortalamasını bulan ve öğrenci ismi ile not ortalamasını yazan programın,algoritması ve
akış şeması şöyledir:

Değişkenler

ISS:Sınıf sayacı,
IOS:Öğrenci sayacı,
DN:Ders notu,
DNS:Ders notu sayacı,
DNT:Ders notlarının toplamı,
DNO:Ders notlarının ortalaması,
OGAD:Öğrencinin adı

Algoritma


Adım 1-Başla
Adım 2-SS=0
Adım 3-IOS=0
Adım 4-DNS=DNT=0
Adım 5-OGAD oku
Adım 6-DN oku
Adım 7-DNS=DNS+1(ders notu sayacı 1 artır.
Adım 8-DNT=DNT+DN(notları topla)
Adım 9-Eğer DNS<12 dno="DNT/12(ortalamayı" ios="IOS+1(öğrenci" iss="ISS+1(sınıf">

Akış şeması

14 Nisan 2009 Salı

Kriptoloji Taşları


Kullanılan bilgilerin -tamamı internette olmak üzere- güvenliğini sağlamak üzere kriptografi kullanılmaktadır. Gönderilen veriler şifrelenmediği sürece internet sahibi olan her kimseye ulaşabilir. Günümüzde neredeyse en önemli iletişim aracı haline gelen internet, böyle bir riski taşımamalıdır. Bu nedenle kriproloji, bilgi güvenliğini inceleyen ve anlaşılabileni anlaşılamaz yapan bir bilim dalıdır. Güvenilirlik, veri bütünlüğü, kimlik doğrulama gibi bilgi güvenliği konularıyla ilgilenen matematiksel yöntemler üzerine yapılan çalışmalar kriptografinin önemli konularıdır.
Kriptografi genel olarak şu ana konularla ilgilenir:

Gizlilik: Bilgi istenmeyen kişiler tarafından anlaşılamamalı.

Bütünlük: Bir iletinin alıcısı bu iletinin iletim sırasında değişikliğe uğrayıp uğramadığını öğrenmek isteyebilir; davetsiz bir misafir doğru iletinin yerine yanlış bir ileti koyma şansına erişmemelidir. Saklanan veya iletilmek istenen bilgi farkına varılmadan değiştirilememeli.

Reddedilemezlik: Bilgiyi oluşturan ya da gönderen, daha sonra bilgiyi kendisinin oluşturduğunu veya gönderdiğini inkar edememeli. Bir gönderici daha sonrasında bir ileti göndermiş olduğunu yanlışlıkla reddetmemelidir.

Kimlik belirleme: Gönderen ve alıcı, birbirlerinin kimliklerini doğrulayabilirler. davetsiz bir misafir başkasının kimliğine bürünme şansına erişmemelidir.

Kriptolojinin üzerine üzerine kurulduğu temel yapılar bu dört başlıktan ibarettir. Bu başlıklar altında yeni anlamlar türeterek, korunması gereken anlamı saklar ve ulaştırır. Gelelim bu işlemin basit bir teori merceğiyle nasıl yapıldığına...

6 Nisan 2009 Pazartesi

Neden Kriptoloji?



Elinizde sizin hayatınıza etkisi çok büyük olan bir şey olsa onu korumak istemez miydiniz? Ya da biraz daha detaya inelim: Bir hazineniz var. Bu hazine çok uzaklarda yaşayan dedenizden miras kalıyor. Fakat o kadar değerli ki, sadece sizin ilginizi değil, yaşam kaygısı olab herkesi sizin kadar ilgilendiriyor. Bu nedenle onu olabildiğince güvenli yollardan getirmelisiniz evinize. Bu yollar herkesin geçtiği ve görebileceği yollar olmamalı. Bu yüzden elinizdeki paha biçilmez hazineyi taşımak için sadece kendinizin anlayabileceği bir haritaya baş vuruyorsunuz. Çünkü onu korumalısınız. Biraz ilkel olsa da açıklayıcı bir örnek olduğunu düşündüğüm bu küçük hikayenin haritasını kriptoloji olarak görmek belki de en anlaşılır olanı. Fakat kriptolojide somut varlıklar değil, insanlar için en büyük güç olan bilginin yolunu çiziyoruz. Tabiiki bu örnekle özetlemek yeterli olmayacaktır. Bir önceki yazıdaki kronolojik gelişmeye bakıldığında belli başlı şeyler üzerine yoğunlaştığı rahatlıkla görülebiliyor. Fakat dile getirmekten zarar gelmez. Önceleri haberleşme için kullanılıyor, sonraları yüksek makamların gizlilikleri üzerine faydalanılıyor. Daha sonra savaş zamanlarında bir taktik planı haline geliyor. Yasal bozukluklar (daha çok kaçakçılık) üzerine zeki bir polis olarak görevini yerine getiriyor. Şimdi ise teknolojinin gelişen ve zorlaştıran koşullarının altındaki tehtidlere karşı gard alıyor. Bizi daha çok ilgilendiren nokta işin bu kısmı olacak işte. Umarım bu başlık altında kafanızda bir şeylerin şekillenmesine yardımcı olabilmişimdir. Sıra kriptolojinin anatomisinde...

Geçmişten Günümüze Kadar Kriptoloji



Kriptoloji, M.Ö. 1900'lı yıllarda, mısırlı bir katibin standart dışı hiyeroglif işraretler kullanması üzerine günümüze kadar ulaşan ve gelecekte de yerini garanti etmiş bir serüvenin başrolu olmuştur. Bu serüven, insanlık adına çeşitli koşullarda şekillenmiş ve tarihin sadık bir yolcusu haline gelmiştir. Bu bilim dalının ilk örneklerinin 1900'lı yıllarda verildiği kabul edirdiği taktirde, yaklaşık 3900 yıllık bir süreç içindeki gelişimi gözardı etmek mümkün değildir. Bu gelişimin devamlılığın asıl yapıtaşı, kriptolojiye gittikçe ihtiyaç duyulması olmuştur. Kriptolojiye ihtiyacın bu denli olması nedendir? Bu sorunun cevabını "gizliliğin hassasiyetindeki iletişim temeli" olarak özetlemek yeterli olabilir. Fakat bir sonraki bölümde daha detaylı inceleyip özümsemekte yarar var. Sıra, kriptolojinin bebekliğinden itibaren durmaksızın büyümekte olan sürecini kronolojik olarak incelemekte.

MÖ.1900 - dolaylarında bir Mısırlı katip yazdığı kitabelerde standart dışı hiyeroglif işaretleri kullandı.
MÖ.60-50 - Julius Caesar (MÖ 100-44 ) normal alfabedeki harflerin yerini değiştirerek oluşturduğu şifreleme yöntemini devlet haberleşmesinde kullandı. Bu yöntem açık metindeki her harfin alfabede kendisinden 3 harf sonraki harfle değiştirilmesine dayanıyordu.

725-790 - Abu Abd al-Rahman al-Khalil ibn Ahmad ibn Amr ibn Tammam al Farahidi al-Zadi al Yahmadi, kriptografi hakkında bir kitap yazdı (Bu kitap kayıp durumdadır). Kitabı yazmasına ilham kaynağı olan, Bizans imparatoru için Yunanca yazılmış bir şifreli metni çözmesidir. Abu Abd al-Rahman, bu metni çözmek için ele geçirdiği şifreli mesajın başındaki açık metni tahmin etme yöntemini kullanmıştır.

1000 - 1200 - Gazneliler den günümüze kalan bazı dokümanlarda şifreli metinlere rastlanmıştır. Bir tarihçinin dönemle ilgili yazdıklarına göre yüksek makamlardaki devlet görevlilerine yeni görev yerlerine giderken şahsa özel şifreleme bilgileri (belki şifreleme anahtarları) veriliyordu.

1586 - Blaise de Vigenère(1523-1596) şifreleme hakkında bir kitap yazdı. İlk kez bu kitapta açık metin ve şifreli metin için otomatik anahtarlama yönteminden bahsedildi. Günümüzde bu yöntem hala DES CBC ve CFB kiplerinde kullanılmaktadır.


1623 - Sir Francis Bacon, 5-bit ikili kodlamayla karakter tipi değişikliğine dayanan stenografı buldu.


1790 - Thomas Jefferson, Strip Cipher makinesini geliştirdi. Bu makineyi temel alan M-138-A, ABD donanmasının 2.Dünya savaşında da kullandı.

1917 - Joseph Mauborgne ve Gilbert Vernam mükemmel şifreleme sistemi olan “one-time pad”‘i buldular

1920 ve 1930′larda FBI içki kaçakçılarının haberleşmesini çözebilmek bir araştırma ofisi kurdu.William Frederick Friedman, Riverbank Laboratuarlarını kurdu, ABD için kriptoanaliz yaptı, 2. Dünya savaşında Japonlar’ın Purple Machine şifreleme sistemini çözdü.
2. Dünya savaşında Almanlar Arthur Scherbius tarafından icat edilmiş olan Enigma makinesini kullandılar. Bu makine Alan Turing ve ekibi tarafından çözüldü.

1952 - 4.11.1952 ABD’de Resmi olarak Ulusal Güvenlik Teşkilatı (NSA)kuruldu. Ayrıca bilgi toplamak için internet, telefon görüşmeleri ve e-postaları da izlerler. Dünyadaki en büyük telefon görüşmeleri arşivine bu teşkilat sahiptir. İllegal olarak sivillerin telefon görüşmelerini kaydettikleri (ellerinde görüşmeleri kaydetmek için hiç bir yasal yetki, mahkeme emri olmaksızın) ve telekomünikasyon şirketlerinden telefon kayıtlarını istedikleri ortaya çıkmıştır.

1970 - Horst Feistel (IBM) DES’in temelini oluşturan Lucifer algoritmasını geliştirdi.

1976 - DES (Data Encryption Standard), ABD tarafından FIPS 46(Federal Information Processing Standard) standardı olarak açıklandı.

1976 - Whitfield Diffie ve Martin Hellman Açık Anahtar sistemini anlattıkları makaleyi yayınladılar.

1978 - Ronald L. Rivest, Adi Shamir ve Leonard M. Adleman: RSA algoritmasını buldular.

1985 - Neal Koblitz ve Victor S.Miller ayrı yaptıkları çalışmalarda eliptik eğri kriptografik (ECC) sistemlerini tarif ettiler.

1990 - Xuejia Lai ve James Massey: IDEA algoritmasını buldular.

1991 - Phil Zimmerman: PGP sistemini geliştirdi ve yayınladı1995 SHA-1 (Secure Hash Algorithm) özet algortiması NIST tarafından standart olarak yayınlandı.


1997 - ABD’nin NIST (National Institute of Standards and Technology) kurumu DES’in yerini alacak bir simetrik algoritma için yarışma açtı.

2001 - NIST’in yarışmasını kazanan Belçikalı Joan Daemen ve Vincent Rijmen’e ait Rijndael algoritması, AES (Advanced Encryption Standard) adıyla standart haline getirildi.

2005 - Çin’li bir ekip tarafından SHA-1 algoritmasının kırıldığı duyurulmuştu. Buna göre 2^80 gücündeki algoritma, 2^63′e kadar indirilmişti. Bunun üzerine Amerikan Hükümeti ve Microsoft, Sun gibi birçok büyük firma artık kullanmayacaklarını açıklamıştı.

2007 - Artık her programcı algoritma geliştirebiliyor. Ve bu algoritmayı programlayabiliyor ve kırılması zor diyor lakin her seferin de kırılıyor.

2009 - Kriptografi konusunda dünyanın ilk olimpiyatları Belçika’nın Katholieke Üniversitesinde 25-28 Şubat tarihleri arasında yapılacak olan ön eleme ile başladı. Amaç SH1 lerin kırılmasından sonra yeni bir güvenli algoritma oluşturmak.

Bu süreç özetle bu kadardır. Fakat geleceğe şimdiden gelişimi için yer ayırttığı şüphesiz. Kriptolojinin geçmişten günümüze kadar olan serüvenini inceledikten sonra sırada ona neden ihtiyaç duyulduğu ve ne amaçlara hizmet ettiği...