Sezar algoritması nedir, Sezar şifreleme yöntemi, bilgisayar dünyasında bir tür güvenlik anlamına gelir. Modern şifreleme yöntemlerine göre Sezar Algoritmasında güvenlik elbette çok çok daha yüksektedir.
Bu yazımızda ilk şifreleme yöntemi olarak kullanılan Sezar şifreleme algoritmasına göz atacağız. Sezar algoritması nedir? Sezar algoritması nasıl yapılır? İşte detaylar…
Sezar Algoritması Nedir?
Sezar algoritması nedir sorusuna yanıt vererek başlayalım. Jul Caesar, düşman tarafından ele geçirilme tehlikesine rağmen düşmanın anlayamadığı bilgileri şifrelemek için bir teknik kullanır. Zamanla bu yönteme Sezar şifreleme yöntemi denir. Sezar’ın şifreleme yöntemi günümüzde nadiren de olsa kullanılmaktadır. Çünkü geçmişte ne kadar güvenli olsa bile, şimdi her şeyin şifresi daha kolay çözülebilir.
Elbette şifreleme türü bilinmiyorsa şifrenin kırılma olasılığı azalacaktır. Ancak, biliyorsanız, 25 denemeye kadar şifresini çözebilirsiniz. Günümüzde sadece Sezar’ın şifreleme yöntemi değil, her şifreleme yöntemi deşifre edilememektedir. Bazı şifreler anında kırılabilir. Bu kırılma 100 yıla kadar da yayılabilir. Ancak daha uzun sürse bile her şifrenin zamanında kırılabileceği anlamına gelir. Aslında bu algoritma en basit şifreleme olarak kabul edilir.
Günümüzde Sezar algoritması için çok güvenli olmadığına dair söylentiler de dolaşıyor. Sezar şifresini çözmek için, şifreli mesajdaki anahtar sayısı ve karakter başına anahtar sayısı, ana mesajın kademeli olarak dönüştürülmesi olan anahtar sayısı ile değiştiriliyor. Dilerseniz daha Sezar Algoritması nedir ve nasıl yapılır sorusunu daha yakından inceleyelim..
1- Sezar Algoritması Nasıl Yapılır?
İsterseniz Sezar algoritması nasıl yapılır sorusuna geçelim. Sezar şifreleme yönteminin algoritması çok basittir. Mesajda belirtilen anahtar numarasına kadar ana mesajın her harfi takip edilerek şifreli mesaj oluşturulabilir. Şifreli mesajları okumak için mesajdaki her harfi tuş sayısı kadar ters çevirmeniz gerekir. Anahtar kelime 3 ise, mesajdaki her harfi 3 harf ileriye taşımanız gerekir.
Örnek vermek gerekirse, ”kalem” olarak ele aldığımız mesajda anahtar ”3” olursa mesajdaki her harfi 3 harf ileri kaydırmanız gerekiyor. Bu işlem yapıldıktan sonra Sezar şifreli mesajınız ”ndohp” olacaktır. Gönderdiğiniz Sezar algoritmalı mesajı karşı tarafın okuması için ise yapması gereken şey harfleri 3 harf geri kaydırmak. Bu şekilde mesajınıza başarılı şekilde ulaşabilir.
2- Sezar Algoritması ile Kodlama Nasıl Yapılır?
Sezar algoritması yazma yöntemini kullanmak kullanırken lütfen kodun temel yapısındaki harflerin ASCII sayı tablosundaki harflere karşılık geldiğinden emin olun. Alfabe 26 karakter uzunluğunda olduğu için içinde Türkçe karakter bulunmamaktadır. Anahtar kelimenin uzunluğu alfabeye karşılık gelebilir. Çözmek isteyip istemediğinizi bilmek için bir işlev oluşturmalısınız.
Ardından, giriş değerini küçük harfe dönüştürmek için alt() işlevini kullanın ve onu değişken moduna atayın. Giriş değerinin “şifrele ve şifresini çöz” modunda olup olmadığını kontrol etmek için bir if döngüsü kullanır. “d şifreleme ve şifre çözme” ise, iade işlemini gerçekleştirin. Değilse, tekrar sorun. Bu işlemler için aşağıdaki kodları sırayla yazmanız gerekiyor.
Bu işlemlerden sonra ilk yazdığınız üç fonksiyonun değerlerini farklı değişkenlere atamanız gerekiyor. Son adım olarak print fonksiyonunda diğer fonksiyonların değerlerini fonksiyonunuza göndererek sonucu alabilirsiniz. Tüm bu adımları tamamladıktan sonra Sezar şifreleme yöntemi kullanılarak şifrelenmiş mesajlar oluşturabilir veya okuyabilirsiniz.
3- Kriptoloji Nedir?
Mesajları ve metinleri alıcılara güvenli bir şekilde ulaştırmak için iletişim alanında yöntemleri araştıran ve geliştiren bilim dalına Kriptografi denir. Yapay zeka kadar kullanılan kriptografi bir matematik bilimi olarak adlandırılabilir. Çünkü genellikle sayılar teorisine dayanır.
Bu bilim, İkinci Dünya Savaşı’ndan itibaren çeşitli yöntemlerle benimsenmiş ve İkinci Dünya Savaşı sırasında popüler olmuştur. Kriptografi iki farklı alana ayrılır: kriptografi ve kriptoanaliz. Yunanca “Gizli” anlamına gelen “Kryptos” ve harfler anlamına gelen “Grafi” kelimelerinden oluşur. Kriptografi bilgi güvenliği ile ilgilenir. Öte yandan, kriptoanaliz, korunan bilgileri yok etme sürecini içerir, böylece kriptografi ve kriptoanaliz birbirine karşıt olur.
4- Sezar Algoritması Tarihçesi Nedir?
Bu kodun adı Julius Caesar’dır ve Suetonius’a (Roma’nın en ünlü tarihçisi ve biyografi yazarı) göre, onu önemli askeri öneme sahip bilgileri korumak için üçüncü katmanda kullanmıştır. Sezar bu şemayı kullanan ilk kayıt olmasına rağmen, benzer bir şifre türü Sezar’ın yeğeni Augustus’tur ve bu şifreyi de kullanır, ancak Sezar’dan farklı olarak üç yerine bir kez kullanır.
Sezar şifresinin geçerliliği o zamanlar bilinmemekle birlikte, Sezar’ın düşmanlarının çoğu okuma yazma bilmiyordu ve diğerleri bilginin kaynağını bilmiyorlardı. Yabancı bir dilde yazılmışsa, yeterince güvenli olabilir. 19. yüzyılda, gazetelerin kişisel sınıflandırma bilgileri bölümü bazen basit şifreleme şemaları kullanarak şifreli mesajların değiş tokuşu için kullanılıyordu.
Sezar şifresi 1915 yılına kadar kullanıldı. Günümüzde gizli kod çözücü halkası olarak adlandırılan halkada bebekler oyuncak olarak kullanılmaktadır. Ayrıca Usenet üzerinde Rot13 algoritmasını kullanır. Yaygın olarak kullanılmaktadır ancak ciddi bir şifreleme yöntemi olarak kullanılmamaktadır.
5- Sezar Algoritması ile Şifrelenen Harfin Alfabedeki Sıra Numarası Nasıl Öğrenilir?
Programı yazarken matematiksel işlemler yaptığımız için harflerin alfabedeki sırasını da bilmemiz gerekiyor. Alfabedeki şifreli harflerin sıralamasını belirlemek için aşağıdaki formül kullanılır:
Şifreli harflerin alfabedeki sırası = (Şifreli harflerin alfabetik sırası + anahtar numarası)
Mod 26 “mod” ise modulo işlemi anlamına gelir. Başka bir deyişle, bir sayıyı diğerine bölmenin kalanıdır. Programlamada “%” karakteri bir modül gibidir.
6- Sezar Algoritması C# Nasıl Kullanılır?
Sezar algoritması C nasıl kullanılır konusuna gelecek olursak. Caesar’ın şifreleme algoritması sadece alfabetik sırayı değiştirir ve bu yüzden öncelikle programda alfabetik sıradaki değişim derecesini belirleyin. Bu işlem için anahtar numarasını en baştan belirlemeniz faydalı olacaktır. Ancak anahtarınız varsa bu kilidi açabilirsiniz.
Diyelim ki 3 numaralı bir anahtarımız var ve bir mektup yazdıktan sonraki 3 harfi bizim şifreli mektubumuz. Örneğin, B harfinden sonraki üçüncü harf E harfidir (B-C-D-E). Şifreli metinde B yerine E yazıyoruz. Alfabe bittiğinde ne yapacağımı merak ediyor olabilirsiniz. Cevap basit. Alfabenin başına dönersiniz. Z (Z-A-B-C) harfine 3 eklersek, C harfini alırız gibi…
Elbette şifrelemeyi daha zor hale getirmek size kalmış. Örneğin şifrenin zorluğunu arttırmak için alfabeye özel karakterler de ekleyebilirsiniz. Veya iki harfle şifreleyebilirsiniz. Boşlukları silebilir veya boşlukları temsil etmek için simgeler kullanabilirsiniz. Kısacası, hepsi hayal gücünüze bağlıdır.
7- Bonus! Sezar Şifreleme Uygulaması Nasıl Kullanılır Daha Detaylı Öğrenmek İster misiniz?
Sizler için Sezar algoritması nedir sorusuna cevap verirken, Sezar Şifreleme Yönteminin tarihine ve günümüzde nerelerde kullanıldığına da değindik. Bir sonraki içeriğimizde görüşmek dileğiyle…