300 likes | 906 Views
KRİPTOLOJİ-1. Hakan KUTUCU. Kriptoloji (Şifreleme). Kriptoloji : H aberleş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.
E N D
KRİPTOLOJİ-1 Hakan KUTUCU
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:Kriptografisistemleri tarafından ortaya konan bir şifreleme sistemini inceleyerek zayıf ve kuvvetli yönlerini ortaya koymayı amaçlayan bilim dalıdır.
Şifrelemenin Temel Elemanları • Bir kriptosistemin 5 elemanı vardır. • P=Plaintext: Şifrelenecek olan düz metin • K=Key(Anahtar): Şifrelemede kullanıcak olan anahtar • E=Encryption: Şifreleme • C=Ciphertext: Düz metinin şifrelenmiş hali. • D=Decryption: Şifre çözümü. NOT: Güvenlik anahtarın gizliliğine bağlıdır, algoritmanın gizliliğine değil.
EK (P) C DK (C) P Geleneksel Şifrelemenin Basit Modeli
Geniş Kapsamlı Anahtar Arama İçin Gereken Ortalama Zaman
Kriptoloji Ne Sağlar? • Gizlilik(Confidentiality):Başkaları mesajı göremez • MesajBü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
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)
Simetrik (Gizli Anahtarlı) Şifreleme • Simetrikşifrelemealgoritmaları, şifrelemeveaçmaişlemleriiçinaynıanahtarıkullanır. • Gizliverialışverişiyapacakkişiveyauygulamalarsimetrikanahtarıkendiaralarında, emniyetlibirşekilde, değiştirmelidir. • Simetrikşifrelemealgoritmasıylaşifrelenmişbirveriningüvenliği, şifrelemeişlemindekullanılmışolananahtarıngizliliğiiledoğrudanilişkilidir.
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 • Sayısal imza desteği yok.
Asimetrik (Açık Anahtarlı) Şifreleme • Asimetrikşifrelemede, özel(private) veaçık(public) olmaküzerebiranahtarçiftivardır. Kişikendiözelanahtarınıgizlitutarken, açıkanahtarınışifreliiletişimkuracağıkişilereiletir. • Bu anahtarlarbirbirinematematikselbirilişkiylebağlanmıştırfakat; anahtarlardanbirinikullanarakdiğerinieldeetmekçokzorhattaimkansızdır. • Anahtarlardanaçıkolanıylaşifrelenenbirveriancakbuaçıkanahtarakarşılıkgelenözelanahtarlaaçılabilir.
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 algoritmalarına göre ~1500 kat!)
Simetrik Şifreleme Algoritmaları • Shift Cipher – Caesar Cipher • Affine Cipher • Vigenere Cipher • Hill Cipher • DES • IDEA • Blowfish • RC5 • RC2
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.
Caesar Cipher(Şifreleme) K=3 Dış Taraf=plaintext İç Taraf=ciphertext
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)
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
Substitution Cipher(Şifreleme) Anahtar: Alfadeki karakterlerin rastgele permütasyonudur. Mümkün olan toplam permütasyonların sayısı=26!=4x1026 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ı?
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.
Karakter Frekansı (İstatiksel Saldırı) • Arka arkaya gelen 2 harfli diziye digramüç harfli diziyetrigramdenir. 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, …
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.
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=(k1, k2, k3, ..., km) için C=EK(x1,x2,...xm)=(x1+k1,x2+k2,..., xm+km ) (mod 26) P=DK(y1,y2,...ym)=(y1- k1,y2- k2,..., ym- km ) (mod 26) (x,y Є26)
Vigenere Cipher (Örnek) Anahtar(Keyword):CIPHER (2, 8, 15, 7, 4, 17) Düzmetin(Plaintext):thiscryptosystemisnotsecure Ciphertext: VPXZGIAXIVWPUBTTMJPWIZITWZT
Transposition(Permutation) Cipher Düzmetin(Plaintext) anahtar uzunluğunda yatay olarak parçalanır. Şifrelimetin(Ciphertext) sütun sütun okunur.
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.
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.