KRPTOLOJ1 Hakan KUTUCU 1 Kriptoloji ifreleme Kriptoloji Haberleen
KRİPTOLOJİ-1 Hakan KUTUCU 1
Kriptoloji (Şifreleme) Kriptoloji: Haberleşen iki veya daha fazla tarafın bilgi alışverişini emniyetli olarak yapmasını sağlayan, temeli matematiksel zor problemlere dayanan tekniklerin ve uygulamaların bütünüdür. Kriptografi: Bilginin şifrelenmesi ve şifrenin çözülmesi için kullanılan yöntemlere verilen addır. . Kriptoanaliz: Kriptografi sistemleri tarafından ortaya konan bir şifreleme sistemini inceleyerek zayıf ve kuvvetli yönlerini ortaya koymayı amaçlayan bilim dalıdır. 2
Şifrelemenin Temel Elemanları Bir kriptosistemin 5 elemanı vardır. 1. P=Plaintext: Şifrelenecek olan düz metin 2. K=Key(Anahtar): Şifrelemede kullanıcak olan anahtar 3. E=Encryption: Şifreleme 4. C=Ciphertext: Düz metinin şifrelenmiş hali. 5. D=Decryption: Şifre çözümü. NOT: Güvenlik anahtarın gizliliğine bağlıdır, 3 algoritmanın gizliliğine değil.
EK (P) C DK (C) P Geleneksel Şifrelemenin Basit Modeli 4
Geniş Kapsamlı Anahtar Arama İçin Gereken Ortalama Zaman Anahtar Alternatif Anahtar 106 Decryption/µs Uzunluğu (bit) sayısı Hızında gereken zaman 32 232 = 4. 3 x 109 2. 15 mili saniye 56 256 = 7. 2 x 1016 10 saat 128 2128 = 3. 4 x 1038 5. 4 x 1018 yıl 168 2168 = 3. 7 x 1050 5. 9 x 1030 yıl 5
Kriptoloji Ne Sağlar? • Gizlilik(Confidentiality): Başkaları mesajı göremez • Mesaj. Bütünlüğü(Integrity): Başkaları mesajı değiştiremez. • Gönderici Kimliğini Doğrulama (Authentication): Gönderen ve alıcı, birbirlerinin kimliklerini doğrulayabilirler. • İnkâr Edememezlik(Non-repudiation): Bilgiyi oluşturan ya da gönderen, daha sonra bilgiyi kendisinin oluşturduğunu veya gönderdiğini inkar edememeli 6
Kriptoloji Algoritmaları Şifreleme algoritmaları anahtar kullanma yöntemlerine göre genel olarak iki kategoriye ayrılmaktadır. Bu yöntemler: • Simetrik (Gizli Anahtarlı) Şifreleme Algoritmaları (Geleneksel kriptolama sistemleri) • Asimetrik (Açık Anahtarlı) Şifreleme Algoritmaları (Açık anahtar kriptolama sistemleri) 7
Simetrik (Gizli Anahtarlı) Şifreleme • Simetrik şifreleme algoritmaları, şifreleme ve açma işlemleri için aynı anahtarı kullanır. • Gizli veri alışverişi yapacak kişi veya uygulamalar simetrik anahtarı kendi aralarında, emniyetli birşekilde, değiştirmelidir. • Simetrik şifreleme algoritmasıyla şifrelenmiş bir verinin güvenliği, şifreleme işleminde kullanılmış olan anahtarın gizliliği ile doğrudan ilişkilidir. 8
Simetrik (Gizli Anahtarlı) Şifreleme 9
10
Simetrik Şifrelemenin Artıları ve Eksileri Artılar: • Algoritmalar hızlıdır • Algoritmaların donanımla gerçeklenmesi kolaydır. • “Gizlilik” güvenlik hizmetini yerine getirir. Eksiler: • Ölçeklenebilir değil. • Emniyetli anahtar dağıtımı zor. • “Bütünlük” ve “Kimlik Doğrulama” güvenlik hizmetlerini gerçeklemek zor 11 • Sayısal imza desteği yok.
Asimetrik (Açık Anahtarlı) Şifreleme • Asimetrik şifrelemede, özel(private) ve açık(public) olmak üzere bir anahtar çifti vardır. Kişi kendi özel anahtarını gizli tutarken, açık anahtarını şifreli iletişim kuracağı kişilere iletir. • Bu anahtarlar birbirine matematiksel bir ilişkiyle bağlanmıştır fakat; anahtarlardan birini kullanarak diğerini elde etmek çok zor hatta imkansızdır. • Anahtarlardan açık olanıyla şifrelenen bir veri ancak bu açık anahtara karşılık gelen özel anahtarla açılabilir. 12
Asimetrik (Açık Anahtarlı) Şifreleme 13
Asimetrik Şifrelemenin Artıları ve Eksileri Artılar: • Anahtar yönetimi ölçeklenebilir. 10, 000 kullanıcı = 10, 000 anahtar çifti Kripto-analize karşı dirençli (Kırılması zor). • Bütünlük, Kimlik Doğrulama ve İnkâr Edememezlik güvenlik hizmetleri sağlanabilir. • Sayısal imza desteği. Eksiler: • Algoritmalar genel olarak yavaş (Simetrik kriptografi 14 algoritmalarına göre ~1500 kat!)
Simetrik Şifreleme Algoritmaları • Shift Cipher – Caesar Cipher • Affine Cipher • Vigenere Cipher • Hill Cipher • DES • IDEA • Blowfish • RC 5 • RC 2 15
Caesar Cipher(Şifreleme) • Caesar cipher en eski yerine koyma (substitution) şifreleme yöntemlerinden biridir. Julius Caesar tarafından sunulmuştur. • İşlemin Temel Prensibi: Alfabedeki her harf sabit bir sayıda ötelenir. • Ötelenen bu sayı şifreleme ve şifre çözmede kullanılan anahtardır. 16
Caesar Cipher(Şifreleme) K=3 Dış Taraf=plaintext İç Taraf=ciphertext 17
Caesar Cipher(Şifreleme) P=C=K= 26 0 ≤K≤ 25 için C=EK(x)=x+K (mod 26) P=DK(y)=y-K (mod 26) (x, y Є 26) 18
Caesar Cipher(Şifreleme) Örnek: K=3 olsun P(plaintext)=meet me after the toga party A B C D E F G H I J K L M N O P. . 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 12(m)+3 (mod 26)=15(P) 4(e)+3 (mod 26)=7(H) C(ciphertext)=PHHW PH DIWHU WKH WRJD SDUWB 19
Substitution Cipher(Şifreleme) Anahtar: Alfadeki karakterlerin rastgele permütasyonudur. Mümkün olan toplam permütasyonların sayısı=26!=4 x 1026 Saniyede 3 milyar permütasyon deneyebilen 3 GHz hıza sahip bir PC 4263 yılda şifreyi çözer. Daha iyi bir kırma algoritması var mı? 20
Karakter Frekansı (İstatiksel Saldırı) Bir çok dilde bazı harfler daha sık kullanılırlar. İngilizcede e ve t harfleri daha fazla kullanılmaktadır. Yandaki Tablo İngiliz alfabesindeki harflerin bir metinde bulunma ihtimallerini vermektedir. letter A B C D E F G H I J K L M probability. 082. 015. 028. 043. 127. 022. 020. 061. 070. 002. 008. 040. 024 letter N O P Q R S T U V W X Y Z probability. 067. 075. 019. 001. 060. 063. 091. 028. 010. 023. 001. 020. 001 21
Karakter Frekansı (İstatiksel Saldırı) • Arka arkaya gelen 2 harfli diziye digram üç harfli diziye trigram denir. Bunların da frekanslarına bakmak gerekir. • En genel digramlar (azalan sırada): TH, HE, IN, ER, AN, RE, ED, ON, ES, ST, EN, AT, TO, NT, HA, ND, OU, EA, NG, AS, OR, … • En genel trigramlar (azalan sırada): THE, ING, AND, HER, ERE, ENT, THA, NTH, WAS, … 22
Poly-Alphabetic Substitution Cipher Caesar ve substitution şifrelemede önce bir anahtar seçilir ve her karakter tek bir karaktere eşlenir. Monoalphabetic • Küçük anahtar uzayı (O(n) Caesar cipher) • İstatiksel saldırıya karşı zayıf(Substitution cipher) Alternatif: Polyalphabetic Substitution Cipher Büyük anahtar uzayı ve istatiksel saldırıyca güçlü bir yöntem istiyoruz. Yaklaşım: Farklı yerlerde aynı harf başka bir harfle yer değiştirmeli. 23
Vigenere Cipher • Poly-alphabetic substitution şifrelemedir. • Anahtar dizisi bittiğinde tekrar baştan şifrelemeye başlanır. • Anahtarın uzunluğu şifrelemenin periyodu olarak adlandırılır. P=C=K= 26 0 ≤K≤ 25 ve K=(k 1, k 2, k 3, . . . , km) için C=EK(x 1, x 2, . . . xm)=(x 1+k 1, x 2+k 2, . . . , xm+km ) (mod 26) P=DK(y 1, y 2, . . . ym)=(y 1 - k 1, y 2 - k 2, . . . , ym- km ) (mod 26) (x, y Є 26) 24
Vigenere Cipher (Örnek) Anahtar(Keyword): CIPHER (2, 8, 15, 7, 4, 17) Düzmetin(Plaintext): thiscryptosystemisnotsecure Ciphertext: VPXZGIAXIVWPUBTTMJPWIZITWZT 25
Transposition(Permutation) Cipher Düzmetin(Plaintext) anahtar uzunluğunda yatay olarak parçalanır. Şifrelimetin(Ciphertext) sütun okunur. 26
Kriptoanaliz Tipleri Sadece Şifreli Metin Saldırısı(Ciphertext-only attack) Kriptanalist aynı şifreleme algoritması ve aynı anahtar kullanılarak şifrelenmiş birçok şifreli metine sahiptir. Fakat düz metine sahip değildir. Bilinen Açık Metin Saldırısı (Known-plaintext attack) Kriptanalist sadece çeşitli düz metinlerin şifrelenmiş haline değil, bu mesajların açık metinlerine de erişebilmektedir. Yani aynı anahtarla şifrenlenmiş bir kaç ciphertext/plaintext çiftlerine sahiptir. 27
Kriptoanaliz Tipleri Seçilmiş Açık Metin Saldırısı (Chosen-plaintext attack) Bu atak bilinen açık metin saldırısından daha güçlü bir ataktır. Çünkü kriptanalist anahtar hakkında daha fazla bilgi verecek düz metinin belirli bloklarını seçebilmektedir ve şifrelenmiş haline bakabilmektedir. 28
- Slides: 28