SEZAR ŞİFRELEME YÖNTEMİ (CAESAR CİPHER)

SEZAR ŞİFRELEME (CAESAR CİPHER)
Sezar şifreleme yöntemi, açık metin olarak verilen bir mesajın harflerinin belli bir anahtar (shift/offset) sayısı kadar kaydırılarak şifrelenmesi işlemidir. Bu yöntem, Julius Sezar tarafından MÖ 1. yüzyılda kullanılmıştır.
Örneğin, anahtar olarak 3 seçilirse, her harf alfabedeki 3 harf ileriye kaydırılır.Bu şekilde, "merhaba dünya" metni "öğtjçdçcgzpxç" şeklinde şifrelenir.
Python programlama dili kullanılarak
Sezar şifreleme algoritması şu şekilde yazılabilir:
alfabe = ["a","b","c","ç","d","e","f","g","ğ","h",
"ı","i","j","k","l","m","n","o","ö","p","r","s",
"ş","t","u","ü","v","y","z","w","x","q"," "]
sifrelenecek_mesaj = '' # şifrelenecek mesajı tutacak değişken
islem = int(input("1-Şifreleme 2-Çözme :")) # kullanıcıdan şifreleme veya çözme işlemi seçmesini istiyoruz
if(islem == 1): # eğer kullanıcı 1 seçerse şifreleme işlemi yapılacak
mesaj = input("Şifrelemek istediğiniz mesaj: ") # kullanıcıdan şifrelenecek mesajı istiyoruz
for i in mesaj: # mesajın her bir harfini alfabe listesinde arıyoruz
sifrelenecek_mesaj += alfabe[(alfabe.index(i)+3)%len(alfabe)]
# şifreleme işlemi
print("Şifrelenmiş mesaj: ", sifrelenecek_mesaj) # şifrelenmiş mesajı ekrana yazdırıyoruz
elif(islem == 2): # eğer kullanıcı 2 seçerse çözme işlemi yapılacak
mesaj = input("Şifresi çözülecek mesaj: ") # kullanıcıdan çözülecek mesajı istiyoruz
for i in mesaj: # mesajın her bir harfini alfabe listesinde arıyoruz
sifrelenecek_mesaj += alfabe[(alfabe.index(i)-3)%len(alfabe)]
# çözme işlemi
print("Çözülmüş mesaj: ", sifrelenecek_mesaj) # çözülmüş mesajı ekrana yazdırıyoruz
else: # eğer kullanıcı 1 veya 2 seçmezse geçersiz işlem uyarısı veriyoruz
print("Geçersiz işlem!") # geçersiz işlem uyarısı
sifrelenecek_mesaj += alfabe[(alfabe.index(i)+3)%len(alfabe)]
Buradaki kodun işlevi, kullanıcıdan "sifrelenecek_mesaj" değişkeni ile aldığımızı karakterleri, "alfabe" listesindeki indexlerinden 3 sonraki indexine atamamızı sağlıyor. "%len(alfabe)" komutu ise eğer alfabenin sonundaki karakteri girersek, alfabenin uzunluğuna bölüp kanal karakter kadar öteliyor.
Bu tarz şifreleme yöntemleri whatsapp gibi uygulamalarda mesajlar iletilirken kullanılmaktan tutunda 2. dünya savaşında haberleşmede bilgilerin düşmana geçmemesi için bile kullanılmaktadır.
Bu tarz örnekler için bizi takip etmeyi unutmayınız.