Skip to content

Sezar Şifreleme (Caesar Cipher)

Klasik kriptografinin en bilinen ve tarihsel olarak en eski algoritmalarından biri olan Sezar Şifrelemesi, adını onu generalleriyle gizli mesajlaşmak için kullanan Roma İmparatoru Julius Sezar'dan alır. Orijinal kullanımında Sezar, alfabedeki her harfi daima 3 harf ileri kaydırarak mesajlarını gizlemiştir.

[Image of Caesar cipher wheel]

Günümüzde "Sezar Şifresi" terimi, sadece 3 birimlik kaydırmayı değil, harflerin alfabe üzerinde belirli ve sabit bir sayı kadar ileri veya geri kaydırıldığı Genelleştirilmiş Kaydırma Şifrelerini (Shift Ciphers) ifade etmek için kullanılır.

Sistemin Formal Tanımı

Tanım: Sezar Şifrelemesinin Matematiksel Modeli

Bir önceki bölümde tanımladığımız 5 bileşenli kriptosistem anatomisini (P,C,K,E,D), İngilizce alfabe kullanarak mod 26 üzerinde Sezar algoritmasına uyarlarsak şu matematiksel yapıyı elde ederiz:

  • Açık Metin (P): Z26={0,1,2,,25}
  • Şifreli Metin (C): Z26={0,1,2,,25}
  • Anahtar Uzayı (K): Z26 (Kullanılabilecek kaydırma miktarları)
  • Şifreleme Fonksiyonu (E): kK ve xP için şifreleme; açık metin karakterine anahtar değerinin eklenmesiyle yapılır:ek(x)x+k(mod26)
  • Deşifreleme Fonksiyonu (D): yC için açma işlemi; şifreli karakterden anahtar değerinin çıkarılmasıyla yapılır:dk(y)yk(mod26)

🔑 Anahtar Uzayının Boyutu ve Güvenlik Zaafiyeti

Sezar şifrelemesinde anahtar uzayının büyüklüğü, doğrudan seçilen alfabenin boyutuna (Mod 26) bağlıdır. Şifreleme uzayımız 26 harfli İngilizce alfabe ile sınırlandırıldığı için, harfleri kaydırabileceğimiz maksimum miktar da 26'dır.

📌 Toplam Anahtar Uzayı

İngilizce alfabe (m=26) için Sezar şifrelemesinin anahtar uzayı:

|K|=26

(Ancak k=0 durumu metni değiştirmeyeceği için, etkili şifreleme yapan anahtar sayısı 25'tir.)

Bu neden kritik bir sorundur? Kerckhoffs Prensibi'ni hatırlayalım: Düşman şifreleme algoritmasını (her harfe x+k(mod26) yapıldığını) biliyor kabul edilir. Sistemin güvenliği sadece k anahtarının gizliliğine dayanmalıdır. Ancak olası sadece 25 anahtar olduğu için, düşman şifreli bir metni ele geçirdiğinde hiçbir zekice matematiğe başvurmadan Kaba Kuvvet Saldırısı (Brute Force Attack) yaparak tüm ihtimalleri deneyebilir. Bir insan bile kağıt kalemle birkaç dakikada tüm 25 kaydırmayı test edip anlamlı kelimeyi bulabilir.

Modern kriptografide güvenli kabul edilen sistemlerin anahtar uzayı (örn: AES-256) 2256 gibi astronomik seviyelerdedir. Sezar'ın alfabeye bağımlı 25'lik anahtar uzayı ise modern standartlarda "yok" hükmündedir.

📝 Çözümlü Uygulamalar

Aşağıdaki örneklerde, bir önceki bölümün sonundaki Harf - Sayı Dönüşüm Tablosunu referans alacağız. Lütfen çözümlere bakmadan önce tabloyu kullanarak denklemleri kendiniz kurunuz.

Örnek: Açık metni "MATH" olan bir mesajı, k=7 anahtarını kullanarak Sezar şifrelemesi ile şifreleyiniz.

💡 Çözümü Göster / Gizle

Çözüm: Algoritmamız: e7(x)x+7(mod26)

Her bir harfi sırayla tablodan sayısal karşılığına çevirip denklemde yerine koyalım:

  1. M 1212+7=19T
  2. A 00+7=7H
  3. T 1919+7=260(mod26)A (Modüler döngü burada devreye girdi)
  4. H 77+7=14O

Sonuç: MATH kelimesi, k=7 anahtarıyla THAO olarak şifrelenir.

Örnek: k=5 anahtarı ile şifrelenmiş olan "GTD" kapalı metnini deşifre ediniz.

💡 Çözümü Göster / Gizle

Çözüm: Algoritmamız: d5(y)y5(mod26)

  1. G 665=1B
  2. T 19195=14O
  3. D 335=2Eksi bir sonuç bulduğumuzda, pozitif denklik bulana kadar modül (26) ekleriz:22+2624(mod26)Y

Sonuç: Şifreli GTD metninin açık hali BOY kelimesidir.

Örnek: Düşman haberleşme hattından "WKLV" şifreli metnini ele geçirdiniz. Bunun aslında İngilizce "THIS" kelimesi olduğu bilindiğine göre, kullanılan Sezar anahtarını (k) cebirsel olarak bulunuz.

💡 Çözümü Göster / Gizle

Çözüm: Şifreleme kuralının ek(x)y(mod26) olduğunu biliyoruz. İlk harf olan T (Açık metin) ile W (Şifreli metin) arasındaki denklemi kurarak doğrudan çözüme ulaşabiliriz.

Tabloya göre:

  • T 19 (Açık metin, x)
  • W 22 (Şifreli metin, y)

Denklemi kuralım:

19+k22(mod26)k2219(mod26)k3(mod26)

Doğrulama: Bulduğumuz k=3 anahtarının diğer harfler için de çalışıp çalışmadığını test edelim:

  • H (7) + 3 = 10 (K)
  • I (8) + 3 = 11 (L)
  • S (18) + 3 = 21 (V)

Sonuç: Düşmanın kullandığı anahtar k=3'tür (Orijinal Julius Sezar anahtarı).

🕹️ İnteraktif Sezar Hesaplayıcı

Yukarıda öğrendiğimiz matematiksel şifreleme ve deşifreleme fonksiyonlarının (x±k(mod26)) gerçek zamanlı olarak nasıl çalıştığını görmek için aşağıdaki aracı kullanabilirsiniz.

Farklı mesajlar yazıp anahtar (k) değerini kaydırarak, metnin şifreli uzayda nasıl evrildiğini bizzat test edin!

🧮 Canlı Sezar Hesaplayıcı

Sonuç
PDWK

Akademik amaçlarla tasarlanmış açık kaynaklı eğitim arşivi. Bu sitedeki tüm ders notları ve içerikler CC BY-NC-SA 4.0 Lisansı ile korunmaktadır.