Sezar Şifreleme Nedir? Nasıl Yapılır?
Sezar Şifreleme Nedir?
Jul Sezar, gönderildiği mesajların düşmanlar tarafından ele geçirilmesi tehlikesine karşın mesajlarında düşmanların anlayamayacağı bir şifreleme tekniği kullanmıştır. Zaman içerisinde bu yöntem, Sezar Şifreleme Yöntemi olarak anılmıştır. Günümüz de ise Sezar Şifreleme Yöntemi pek sık tercih edilmemektedir. Çünkü zamanında güvenli olsa bile şuan şifrenin çözülebilme olasılığı 1/25’dir.
Tabi şifreleme türü bilinmiyor ise şifrenin kırılma olasılığı düşecektir. Ancak biliniyor ise en fazla 25 denemenin ardından şifreyi çözmek mümkündür. Şuan sadece Sezar Şifreleme Yöntemi değil herhangi bir şifreleme yöntemi de çözülemez değildir. Bazı şifreler kısa sürede çözülebilir. Bazılarınınki ise 100 yıllık bir süreci kapsayabilir. Sonuç olarak zaman uzasa da her şifre zaman içerisinde mutlaka çözülebilir.
Önerilen Yazı » Kriptoloji Nedir? Ne İşe Yarar?
Sezar Şifreleme Nasıl Yapılır?
Sezar Şifreleme Yöntemi’nin aslında algoritması oldukça basittir. Ana mesajda bulunan her bir harfi mesajda belirtilen anahtar sayı kadar ileri götürerek şifreli mesaj oluşturulabilir. Şifreli mesajı okumak için ise mesajda bulunan her harfi anahtar sayısı kadar geriye götürmek gerekir.
Örnek olarak gönderilmek istenen mesaj “kalem” olarak ele alınırsa ve anahtar kelime de 3 olursa mesajda bulunan her harfi 3 harf ileri kaydırmanız gerekir. Bu işlemi yaptığınızda da şifreli mesajınız “ndohp” olacaktır. Gönderdiğiniz kişinin şifreli mesajı okuyabilmesi için ise mesajda bulunan harfleri 3 harf geri götürmesi gerekir. Bu sayede “kalem” kelimesine ulaşabilir.
Görselde 3 harf ileri gidildiğinde veya 3 harf geri gidildiğinde hangi harfle karşılaşacağınız verilmiştir. Dilerseniz tabloyu kullanarak kendi şifreli mesajınızı oluşturabilirsiniz.
Sezar Şifreleme Yöntemi İle Kodlama
Sezar Şifreleme Yöntemi ile kodlama yaparken, kodların ana yapısında bulunan harflerin ASCII Sayı Tablosu’nda karşılığının olmasına dikkat edilmelidir. Alfabe 26 karakterden oluştuğu için Türkçe karakterleri kapsamamaktadır.
Önerilen Yazı » Bitcoin Nedir? Nasıl Üretilir? Ne İşe Yarar?
Anahtar kelime uzunluğunun en fazla alfabe uzunluğu kadar olabilir. İlk adım olarak kullanıcının mesajı şifrelemek mi yoksa mesajı çözmek mi istediğini öğrenmek için bir fonksiyon oluşturmak gerekir.
Yukarıda bulunan fonksiyonda şifre çözme mi yoksa şifreleme işlemi mi yapmak istenildiği sorusu yer alıyor. Ardından da girmiş olduğunuz değeri lower() fonksiyonu sayesinde küçük harfe dönüştürerek mode değişkenine atıyor. İf dögüsü ile de mode içine atılmış olan input değerinde “encrypt e decrypt d” bulunup bulunmadığının kontrolünü yapıyor. Eğer “encrypt e decrypt d” bulunuyorsa return işlemini gerçekleştiriyor. Bulunmaması durumunda da tekrar soruyor.
Bu işlemlerin ardından aşağıda bulunan kodları sırasıyla yazmak gerekiyor.
Önerilen Yazı » Alan Turing Kimdir? Hayatı ve İcatları Nelerdir?
Bu işlemlerin ardından ilk etapta yazmış olduğunuz 3 fonksiyondan gelen değerleri farklı değişkenlere atmanız gerekiyor.
Son adım olarak ise print fonksiyonu içerisinde yer alan fonksiyonunuza, diğer fonksiyonlardan gelen değerleri göndererek sonucunuzu almanız mümkündür. Bu adımların tümünü eksiksiz bir şekilde tamamladığınızda Sezar Şifreleme Yöntemi ile şifrelenmiş mesajlar oluşturabilirsiniz ya da bu yöntem ile şifrelenmiş bir mesajı okuyabilirsiniz.