Şifreleme algoritmaları bilişim dünyasında bir nevi güvenlik demek. Günümüzün şifreleme teknikleri çok üst düzeyde tabiki. Bu yazıda ilk şifreleme tekniği olarak kabul edilen şifreleme tekniği olan Sezar Şifreleme Algoritmasına bakacağız.
Sezar savaş döneminde önemli bilgileri bu şifreleme tekniği ile yollarmış.
Bu şifreleme tekniği şöyle istemekte. Sizin şifrelenmesini istediğiniz bir kelime ya da veri mevcut diyelim. Bizim bir anahtar değer belirlememiz gerekmekte. Bu anahtar değeri bir rakam olmalı. Bu anahtar değeri kadar verilen kelimedeki harfleri öteliyoruz.
BURAK kelimesini şifreleyelim. Anahtar değeri 3 olsun. O halde her harfi 3 harf sonrasına gelen değer şeklinde yazacağız ve şifrelenmiş olacak. Kısaca şöyle;

Bu şifreleme tekniği günümüz için çok basit bir tekniktir ancak günümüzün şifreleme tekniklerinin başlangıç noktasını oluşturan bu algoritmayı defterime not etmek istedim. Şimdi Java kodları ile bu algoritmayı yapalım.
Program Senaryosu:
- Kullanıcı bir kelime girecek
- Anahtar değerini girecek
- Şifrelenmiş metin kullanıcıya gösterilecek.
Bu basit bir şifrelemedir, ancak şifreleme mantığı açısından önemlidir. Yapacağımız program ASCII değerlerine karşılık gelen numaranın 3 sonraki karakteri yazdırmasını sağlayacağız.
package sezaralgorit; /** * * @author Burak KUTBAY */ public class Sezaralgorit { /** * @param args the command line arguments */ public static void main(String[] args) { String sifrelenecekmesaj = "burak"; System.out.print("Şifreli Mesaj: "); for (int i = 0; i < sifrelenecekmesaj.length(); i++) System.out.print(sifrele(sifrelenecekmesaj.charAt(i))); System.out.println(); } private static char sifrele(char ch) { if (!Character.isLetter(ch)) return ch; if (Character.isUpperCase(ch)) return (char) (((ch - 'A') + 13) % 26 + 'A'); return (char) (((ch - 'a') + 13) % 26 + 'a'); } }
yakın zamanda RSA şifrelemeye dayalı bir Java uygulamasıyla uğraşmıştım. ilgimi çekmişti.Sezar şifreleme algoritmasından daha karmaşık bir şifreleme .