Tarihteki ilk şifreleme tekniklerinden olan Sezar Şifrelemesi en basit şifreleme yollarından biridir. Şifrelenmesi istenen metindeki harfler yer değiştirilerek ya da başka harflerle değiştirilerek şifrelenir. Sezar Şifrelemesinde harfler 3 harf sonraki harfle değiştirilerek şifrelenir.. Örnek olarak Sezar Şifrelemesinde " deneme " yerine " ghqhph " kullanılır.
Basit bir şifreleme yöntemi olduğundan kırılması da haliyle kolaydır. ,
- Brute-force saldırılarında çok kolayca çözülür.
- Ayrıca bir dilde en çok kullanılan harfler ile şifrelenmiş metinde en çok kullanılan harfler karşılaştırılarak ne kadar harf atlama yapıldığı hakkında bilgi edinilip şifrelemeyi kolayca çözebilirsiniz..
[size=4]C Programlama Dilinde Kodları[/size]
#include
#include
#include
char alf[]="abcdefghijklmnopqrstuvwxyz";
int metinSayisi = 0;
char sifrele(char metin[],int kaydirma){
int a=0,b=0;
for(a=0; a < metinSayisi;a++){
int indis=-1;
for(b=0; b < 26; b++){
if(metin[a]==alf){
indis = b;
break;
}
}
if(indis+kaydirma <= 25)
metin[a]=alf[indis+kaydirma];
else{
int yeniIndis = indis-26;
metin[a]=alf[yeniIndis+kaydirma];
}
}
printf("%s",metin);
}
char sifrecoz(char metin[],int kaydirma){
int a=0,b=0;
for(a=0; a < metinSayisi;a++){
int indis=-1;
for(b=0; b < 26; b++){
if(metin[a]==alf[b]){
indis = b;
break;
}
}
if(indis-kaydirma >= 0)
metin[a]=alf[indis-kaydirma];
else{
int yeniIndis = indis-kaydirma;
metin[a]=alf[yeniIndis+26];
}
}
printf("%s",metin);
}
int main(int argc, char *argv[])
{
char metin[]="deneme";
metinSayisi = strlen(metin);
sifrele(metin,3);
printf("\n\n");
char yeniMetin[]="ghqhph";
metinSayisi = strlen(yeniMetin);
sifrecoz(yeniMetin,3);
printf("\n\n");
system("PAUSE");
return 0;
}
[B]Kaynak : http://webdetay.com/programlama-dilleri/c-programlama-dili/3-sezar-sifrelemesi-ornek-c-kodlari.html