Şifrelemeye giriş


Şifrelemenin amacı "gizli mesaj" elde etmektir. Gizli mesaj elde etmenin gerekliliği ise artan saldırılar karşısında bilgi korumayı mümkün hale getirmek ve güvenliğin temel unsurlarından biri olan gizliliği sağlamaktır. 

Şifrelemenin geçmişi milattan önce 2000li yıllara kadar dayanır. İlk dönem veya manuel çağ diyebileceğimiz bu dönemde şifreleme kalem ve kağıt ile yerine getirilmiştir. Sezar, Vigenere, Scytale ve Atbash bu dönemin örnekleri arasında yer alır. Özellikle askeri haberleşme ve savunma amaçlı kullanılan ilk dönem şifrelemede en bilinen örnek Sezar şifreleme olup alfabenin belli bir adım ilerletilmesi şifreleme ve belli bir adım geri alınması ile şifre çözme yapılabilmiştir. 

Şifrelemede ikinci dönem şifre makinelerinin (cipher machines) kullanıldığı çağı ifade eder. Bu konuda en bilinen örnek Almanlar tarafından geliştirilen Enigma isimli makinedir. Enigma güvenli haberleşme amacıyla kullanılmıştır. 

Modern çağa veya son döneme geldiğimizde şifrelemede bilgisayarlar etkin rol oynamaya başlamıştır. Lucifier, Rijndael, RSA, ElGamal bu dönemin başlarında ortaya çıkan ve yoğun şekilde kullanılan algoritmalar olmuştur. 

Şifrelemeyi anlayabilmek için bazı terimlere aşina olmaya ihtiyaç vardır. Bu terimlerden ilki "düz metin" (plaintext) terimidir. Açıkça okunabilir metin anlamına gelip saldırganlar tarafından rahatça ele geçirilebilir ve değiştirilebilir metinleri açıklamak için kullanılır. "Şifreli metin" (ciphertext) alıcısı haricinde kalan kişilerin anlamaması için düz metnin belli bir dönüşümden geçirilmiş halidir. Anahtar (key) şifreleme algoritmasının kullanacağı en önemli parametredir. Şifreleme fonksiyonuna lazım olan ana unsurdur. Anahtar uzayı (keyspace) şifreleme yapabilmek için kullanabileceğimiz anahtarların bir uzayıdır. Şifreleme sistemi (cryptosystem) ise şifreleme işlemlerini yerine getirmek için kullanılan algoritma, anahtar ve anahtar yönetim fonksiyonlarının bir kombinasyonudur. 

Şifrelemenin çeşitli türleri bulunmaktadır. Bunlardan birisi akış tabanlı (stream based) şifreleme olarak bilinir. Her seferinde farklı şifrelerin oluşturulmasını destekler. Akış ile düz metin karıştırılarak gizlilik sağlanmaya çalışılır. Özellikle gerçek zamanlı hizmetler için uygundur. Blok şifreler ise değiştirme ve aktarım yöntemlerinin özelliklerini birleştirir. Değiştirme yöntemleri şifrelenecek metindeki her bir harfin yerini koruyarak değerinin değiştirilmesini ifade eder. Sezar şifreleme bu yönteme göre çalışır. Aktarım yöntemlerinde ise şifrelenecek metindeki harflerin değeri sabit tutulur ama yeri değiştirilir. Scytale şifreleme bu yöntemi kullanır. Sezar şifrelemesinin genişletilmesi ile Vigenere algoritması elde edilmiştir. Vigenere algoritması çoklu alfabe kullanır. Anahtar değer yerine anahtar kelime kullanılır. Sezar şifrelemede anahtar 7 gibi bir rakam olabiliyorken Vigenere şifrelemede 1234 olabilir. Mesela altıf harflik bir metin için bu anahtar 123412 şeklinde uygulanır. Her bir harf kendisine denk gelen anahtar değeri kadar ötelenir. Vigenere algoritmasının daha geliştirilmesi ile de Akan anahtar şifreleme (Running Key Cipher) yöntemi geliştirilmiştir. Bir kelime boyutunda bir anahtar yerine biz gazete yazısı gibi daha uzun anahtarlar kullanılmaktadır. Tek kullanımlık şifre (One-time pads) yönteminde şifrelenecek metin ile anahtar aynı uzunluktadır. Anahtar her seferinde rastgele üretilir. Burada önemli olan anahtarların gizliliğidir. 

Steganografi gizlilik sağlamada farklı bir yöntemdir. Şişfreleme ile aynı amaca hizmet eder. Gizli olarak iletilmesi istenen mesaj diğer bir medya içerisinde gizlenir. Genellikle bir resim ya da video içerisinde bir metin gizlenir. Önemli olan mesajın medyanın görünürlüğünü bozmamasıdır. 

Şu ana kadar daha çok klasik şifreleme yöntemleri anlatılmış olup bir de modern yöntemler bulunmaktadır. Bunlar kendi içerisinde simetrik ve asimetrik şifreleme şeklinde ikiye ayrılır. Simetrik şifrelemede şifreleme için de şifre çözme için de aynı anahtar değeri kullanılır. Sistemde tek bir anahtar vardır ve sistemin anahtar dağıtım problemi vardır. Asimetrik şifrelemede ise şifreleme için kullanılan (açık anahtar) ve şifre çözme için kullanılan (gizli anahtar) arasında matematiksel olarak bir ilişki bulunur. Her iki yöntemin de dezavantajları olması nedeniyle melez yöntemler ortaya çıkmıştır. Melez yöntemler her iki yöntemin de avantajlı taraflarını ele alırlar. Asimetrik yöntem ile anahtar dağıtımı, simetrik yöntem ile de şifreleme yaparlar. SSL teknolojisi melez yöntem kullanır. 

Bazı simetrik algoritmalar şunlardır:

DES, 3DES, AES, IDEA, Blowfish, RC4, RC5, CAST, SAFER ve Twofish. 

Asimetrik algoritmalar için örnekler ise şöyledir:

Diffie-Hellman, RSA, El Gamal, Elliptic Curve Cryptography (ECC)

Şifreleme algoritmalarına ek olarak veri gizliliği ve bütünlüğü konusunda hizmet veren Hash algoritmaları da bulunmaktadır. Bir mesajın karşı tarafa bir bütün olarak ve değiştirilmeden gittiğini garanti eden çok sayıda algoritma vardır. Hash algoritmaları geri dönüşümsüz fonksiyonlarla yerine getirilir ve mesaj özetleme amacıyla kullanılırlar. 

128 bit hash değeri üreten MD5 algoritması, 160 bit hash değeri üreten SHA-1, 128-256 bit arasında hash değeri kullanan HAVAL ve RIPEMD-160 algoritmaları bu alanın örnekleridir. Kimi zaman hash değerleriyle ilgili sorunlar olabilir. Örneğin iki mesajın aynı hash değeri üretmesi birthday paradox olarak bilinir. Hash algoritmaları çarpışmaları ortadan kaldıracak şekilde olmalıdır. 

Sayısal imzalar gizli anahtar ile şifrelenmiş mesajın hash değeridir. DSA/RSA/ECD-SA plus SHA gibi standartları vardır. Sayısal imzalar gönderici kimlik doğrulama, mesaj bütünlüğü ve inkar edememe gibi özellikleri sağlar. 

Şifreleme işlemlerinin yönetimi de önemli bir ihtiyaçtır. Anahtar güvenliğine dayalı şifrelemede anahtarların merkezi bir otorite tarafından dağıtımına ihtiyaç vardır. Bu nedenle Anahtar dağıtım merkezleri şifreleme yönetiminde kullanılır. Kerberos anahtar dağıtımında kullanılır. Ayrıca finans merkezleri tarafından kullanılan ANSI X9.17 bu konuda bir örnektir. 

Şifreleme sistemlerinin ne kadar güvenli olduğu kripto analistler tarafından çalışılır. Şifreleme sistemlerinin güvenliği onlara uygulanacak saldırılar konusundaki davranışı ile ilişkilidir. Şifreleme sistemlerine ya da şifrelere saldırılar da aşağıdaki şekillerde olabilmektedir. 

Kaba kuvvet (brute-force) saldırılarında anahtar uzayındaki olası bütün anahtar değerleri ile çalışma yapılır. Bir telefonun pin bilgisini bulmak için bütün dört basamaklı sayıları denemek gibi görülebilir. Sıklık analizi (frequency analysis) karakterlerin tekrar sayılarına dayalı olarak anahtar tespiti yapılır. Bu kullanım dil modelleri ile ilişkilidir. Sözlük saldırıları (dictionary attack) sık kullanılan kelimeleri deneyerek şifre tahmin etmekle ilgilidir. Replay attack, daha önceden bilinen şifrelerin yeniden denenmesiyle yapılır. Factoring attacks asal çarpanlara ayırma ile anahtar bulmaya dayalıdır. Sosyal mühendislik yine şifreleri elde etmek için bir yöntem olabilir. Kişilerin zayıflıkları ve bilgisizliklerinden yararlanarak şifre bulunabilir. RNG attack bir algoritma kullanarak şifreyi bulmakla ilgili bir saldırıdır. Geçici dosyalar (Temporary Files) kontrol edilerek şifreler düz metin şeklinde ele geçirilebilir. 

Elektronik postaların gizliliği de bu konuyla ilişkilidir. Elektronik posta iletişimlerinde de Pretty Good Privacy (PGP) ve S/MIME gibi protokoller yardımıyla daha gizli iletişimler kurmak mümkündür. 

Ağların gizliliği için ise link şifreleme ve uçtan uca şifreleme yapılabilir. Link şifrelemede trafik başlıkları ve veri şifrelenir. Uçtan uca şifrelemede sadece uygulama katmanındaki veriler şifrelenir. Whatsapp tarafından verilen "uçtan uca şifreleme" mesajları bu kullanımla ilişkilidir. Ayrıca SSL/TLS ile kimlik doğrulama, IPSec ile VPN ortamında gizlilik sağlanabilir. 

Bilgi güvenliliğinin en önemli unsurlarından biri olan gizlilik başta şifreleme olmak üzere çeşitli algoritma ve protokollerle desteklenmektedir. Teknoloji bu konuda elinden geleni yapmaktadır. Kullanıcılar ise kendileri için gerekli önlemleri almalı ve bu konuda alan uzmanlarından destek almalıdır. 

Saygılarımla,

Prof. Dr. Hidayet Takcı

Sivas, 2025

Yorumlar

Bu blogdaki popüler yayınlar

VERİ BİLİMİ

YAPAY ZEKÂ FIRSAT MI TEHDİT Mİ?