|
udo
|
 |
|
|
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.
Bilgi Güvenliği Kavramları
Bir bilginin güvenli olarak iletileceğinden ya da elde edilmiş bir bilginin güvenli bir şekilde elde edilmiş olduğundan bahsedilebilmesi için, kullanılan iletişim sistemlerinin sahip olması beklenebilecek bazı güvenlik kavramları vardır:
Gizlilik (privacy/confidentiality): Bilgiyi görme yetkisi olanlar dışındaki herkesten gizli tutmak. Kimlik Denetimi (authentication/identification): İletimi gerçekleştirilen bir mesajın göndericisinin gerçekten gönderen kişi olduğu garantisi. Bütünlük (integrity): Bütünlük bir bağlantının tamamı ya da tek bir veri parçası için, mesajın gönderildiği gibi olduğuna, üzerinde hiçbir değişiklik, ekleme, yeniden düzenleme yapılmadığı garantisi. Reddedilmezlik (non-repudation): Alıcının veya göndericinin iletilen mesajı inkar edememesi (böylece bir mesaj gönderildiğinde alıcı göndericinin mesajı gönderdiğini, benzeri biçimde gönderici de, alıcının mesajı aldığını ispatlayabilir). Erişim Kontrolü (access control): İzinsiz kişi ya da uygulamaların erişmemeleri gereken kaynaklara erişemeyecekleri garantisi (ağ güvenliği bağlamında, erişim kontrolü, ana bilgisayar sistemlerine erişimleri kontrol etme ve limitlendirme yetisidir. Bu kontrolü başarmak için, erişimi kazanmaya çalışan her varlık ilk olarak tanımlanmalı veya doğrulanmalıdır. Erişim kontrolü servisleri kimlik denetimi yapılmış varlıkların kaynaklara ancak kendilerine izin verilen şekilde erişebilecekleri garantisini vermekle yükümlüdür). Bu temel kavramlar dışında zaman bilgisi, tanıklık, anonymity, sahiplik, sertifikalandırma, imzalama gibi kavramlardan da bahsedilebilir
Kriptografik Sistemlerin Esasları
Esas kelimesi ile bir kriptografik sistem içerisinde kullanılan temel işlevlerden bahsedilmektedir. Bir kriptografik sistem, bilgi güvenliğini sağlamak için bir araya getirilmiş birçok küçük yöntemler bütünlüğü olarak görülebilir. Bu yöntemler yapıları itibarı ile üç ana grupta incelenebilirler:
Anahtarsız şifreleme
Anahtar kullanmayan kriptografik algoritmalar, veya diğer adlarıyla Veri Bütünlüğü ve Özet Fonksiyonları, veri bütünlüğünü garanti etmek için kullanılan MD5, SHA-1, RIPEMD-160 gibi kriptografi algoritmalarının kullandığı yöntemlere verilen isimdir.
Bu özet fonksiyonu algoritmaları veriyi tek yönlü olarak işler ve algoritmanın özelliğine göre belirli bir genişlikte (örn: 128 bit, 512 bit) kriptografik özet çıkartır. Bir anlam bütünlüğü içermeyen ve rasgele seçilmiş sayılar görüntüsü yaratan bu çıktı o dosya veya bilgiye özeldir. Her işlem yapıldığında, hep aynı sonucu verir. Ancak dosya veya bilgide 1 bit değişiklik dahi gerçekleşmesi durumunda bu çıktı (özet çıktısı) tamamen değişir. Böylece iki kontrol arasında veri bütünlüğünde bir değişiklik olup olmadığı anlaşılır. Özet fonksiyonları tek yönlüdür. Terabaytlar boyutunda bir bilgi dahi olsa özeti algoritmanın ön tanımlı anahtar genişliğini geçemez. (örn: 128 bit) ve bu özet fonksiyonundan asıl veriye ulaşılması veya özet fonksiyondan asıl veri ile ilgili bilgi edinilmesi teorik olarak mümkün değildir. Özet fonksiyonlarının anahtar genişlikleri ne kadar fazla ise güvenilirlikleri de o kadar artar. Anahtarın genişliği gerek iki ayrı verinin özetinin istatistiksel çakışma olasılığını gerekse özet sonucunun değiştirilmiş bir veri ile taklit edilme olasılığını düşürür. Ayrıca algoritmanın yapısal durumu da güvenilirlik ile ilgili karara varılırken mutlaka dikkate alınmalıdır.
Gizli anahtarlı şifreleme Kriptografik yöntemlerden, hem şifreleme hem de deşifreleme işlemi için aynı anahtarı kullanan kriptosistemlere verilen isimdir. Simetrik şifreleme olarak da anılabilmektedir.
DES, 3DES, RC5, Blowfish, IDEA, SAFER gibi algoritmalar gizli anahtarlı şifreleme algoritmalarına örnek olarak verilebilir.
Açık anahtarlı şifrelemede ise şifreleme ve deşifreleme işlemlerinde birbiri ile arasında matematiksel bir ilişki olan iki farklı anahtardan faydalanılır.
Açık anahtarlı şifreleme
Açık anahtarlı şifreleme (veya asimetrik şifreleme), şifre ve deşifre işlemleri için farklı anahtarların kullanıldığı bir şifreleme sistemidir.
Avantajları Açık anahtarlı şifreleme yönteminde, veriyi şifreleme ve şifrelenmiş veriyi çözmek için iki değişik anahtar vardır. Dolayısıyla:
Kendisine şifreli mesajlar yollanmasını isteyen birisi, sadece şifreleme anahtarını isterse tüm Dünya ile paylaşabilir Şifre açma anahtarını ise kullanıcı hiç kimse ile paylaşmaz Bankalar işlem güvenliğini bu sistemi kullanarak sağlamaktadırlar.
Anahtar üretimi RSA algoritması 1977'de Ron Rivest, Adi Shamir ve Len Adleman tarafından yaratılmıştır ve RSA da bu üç kişinin soy isimlerinin ilk harflerinin bir araya getirilmesi ile oluşturulmuştur. Anahtarlar şu şekilde üretilir:
İki adet birbirinden değişik asal sayı seçin, bunların adını da ve koyalım. Bu sayılar ne kadar büyük olursa şifreyi kırması o kadar zor olacaktır. hesaplayın. Bu sayıların totientı olan hesaplayın. Bir tam sayı üretin ve adını da koyun. Bu sayı, koşuluna uygun olmalı ve ile en büyük ortak böleni 1 olmalıdır (başka bir deyişle ve kendi aralarında asal olmalıdır). olacak şekilde bir üretin. Göreceğiniz üzere, , , ve sayılarının sadece içinde olabileceği bir aralık önceden bilinebilir. Bu dört sayının hangileri olacağı anahtar üreticisi (yazılım) tarafından anahtar üretimi sırasında rastgele seçilir.
Şifreleme için olan anahtar, yani ortak anahtar şu verileri içerir:
, yani modulus , yani ortak üs (bazen şifreleme üssü de denir) Şifreyi çözmek için olan anahtar, yani özel anahtar şu verileri içerir:
, yani modulus , yani özel üs (bazen şifre çözme üssü veya deşifre üssü de denir) Öte yandan, pratikte hesapları kolaylaştırmak için başka bir özel anahtar saklanır:
ve , yani anahtar üretiminde kullanılmış asal sayılar ve (genelde dmp1 ve dmq1 olarak adlandırılır) (genelde iqmp olarak adlandırılır) Ş=== Örnek ===
Anahtarın parçaları olarak şu sayıları seçelim:
p = 61 — ilk asal sayı (gizli) q = 53 — ikinci asal sayı (gizli) n = pq = 3233 — modulus (paylaşılabilir) e = 17 — ortak üs (paylaşılabilir) d = 2753 — özel üs (gizli)
Bu durumda ortak anahtar (e, n), gizli anahtar ise (d, n) dir.
Bu durumda şifreleme fonksiyonu şudur:
şifrele(veri) = verie mod n = veri17 mod 3233 Ve çözme fonksiyonu ise:
çöz(şifre) = şifred mod n = şifre2753 mod 3233 Şimdi, 123'ü şifrelelim:
şifrele(123) = 12317 mod 3233 = 855 Dolayısıyla 123'ün bu anahtarlar ile şifrelenmiş hali 855'tir. Şimdi, 855'i deşifre edelim:
çöz(855) = 8552753 mod 3233 = 123
Potansiyel sorunlar [değiştir] 1993 yılında Peter Shor bir quantum bilgisayarının herhangi bir faktorizasyon tabanlı şifrelemeyi polinomsal zamanda çözebileceğini göstermiştir, ki bu da RSA ve benzeri algoritmaların çöpe gitmesi anlamına gelmektedir. Öte yandan, quantum bilgisayarlar henüz araştırma aşamasındadır dolayısıyla şimdilik RSA güvenilir bir şifreleme yöntemidir.
|