4 Ağustos 2013 Pazar

kriptoloji

tarihte ilk olarak sezarın faydalandığı bilim dalı. sezar mesajlarını gönderirken her harfi alfabedeki 3 harf sonrasına kaydırarak gönderirmiş. alan kişi de tabi ki mesajı okumak için 3 harf geri alırmış.

sifrelenmis hali: 8,14,22,12 22,18,3,15,24,14 yani: hnvl vrcoxn

simdi her birini 3 harf geriye getirin ve sihirli sozcugu bulun.

not: tabi ki ingiliz alfabesine gore yapin.

---------------

ben birine arka arkaya üç mesaj yollayayım:

''bakkala gidilsin''

''ekmek alınsın''

''ya yoğurt da alınsın''

aahhh ah...yollayayım, ama;

metindeki ilk a harfi: yn, ikincisi: mi, üçüncüsü: er;

metindeki ilk b harfi: kö, ikincisi: çs, üçüncüsü: sn;

metindeki ilk c harfi: ul, ikincisi: vm, üçüncüsü: ru;

metindeki ilk ç harfi: da, ikincisi: öf, üçüncüsü: yi;

metindeki ilk d harfi: hı, ikincisi: in, üçüncüsü: üh;

metindeki ilk e harfi: jb, ikincisi: to, üçüncüsü: kt;

metindeki ilk f harfi: sk, ikincisi: sa, üçüncüsü: ri;

metindeki ilk g harfi: vr, ikincisi: hb, üçüncüsü: ay;

metindeki ilk ğ harfi: om, ikincisi: iv, üçüncüsü: hn;

metindeki ilk h harfi: fş, ikincisi: be, üçüncüsü: it;

metindeki ilk ı harfi: yp, ikincisi: gn, üçüncüsü: rü;

metindeki ilk i harfi: am, ikincisi: ck, üçüncüsü: hş;

metindeki ilk j harfi: ns, ikincisi: yo, üçüncüsü: oy;

metindeki ilk k harfi: zg, ikincisi: ba, üçüncüsü: bm;

metindeki ilk l harfi: çe, ikincisi: mf, üçüncüsü: rş;

metindeki ilk m harfi: od, ikincisi: ya, üçüncüsü: bö;

metindeki ilk n harfi: lb, ikincisi: ks, üçüncüsü: dr;

metindeki ilk o harfi: ğk, ikincisi: vi, üçüncüsü: cl;

metindeki ilk ö harfi: ac, ikincisi: ro, üçüncüsü: ip;

metindeki ilk p harfi: ze, ikincisi: ın, üçüncüsü: kv;

metindeki ilk r harfi: ga, ikincisi: um, üçüncüsü: ab;

metindeki ilk s harfi: ds, ikincisi: gz, üçüncüsü: de;

metindeki ilk ş harfi: ni, ikincisi: fö, üçüncüsü: rp;

metindeki ilk t harfi: im, ikincisi: an, üçüncüsü: su;

metindeki ilk u harfi: yg, ikincisi: zo, üçüncüsü: cı;

metindeki ilk ü harfi: bh, ikincisi: üs, üçüncüsü: il;

metindeki ilk v harfi: nb, ikincisi: ır, üçüncüsü: md;

metindeki ilk y harfi: va, ikincisi: ke, üçüncüsü: sö;

metindeki ilk z harfi: tk, ikincisi: bl, üçüncüsü: or

metindeki ilk boşluk: ra, ikincisi: ed, üçüncüsü: mu

olsun diyipte yollayayım, korsanlama aradan dalanlarca sırasıyla şöyle görülsün mesajlar:

''köynzgbamiçeerravramhıckmfdshşlb''

''jbzgodtobaraynçeyplbdsgnks''

''vaynrakeğkomyggaimedhımimuerçeyplbdsgnks''

ben derim ki bu üç şifreli mesajın göreni türk olsun, kafir olsun; en büyük uzmanı olsun; yine çözemez, gene çözemez işi; çözemez benim 'çözülme' diye efsunladığım o küçük güzel mesajları. kulağınızı verin, bakın, ortaya aynı harfi en fazla üç kere içereninden üç metin koydum; mütevazi, anlatacağımız şeye uygun/yeter bir şekilde de şifreledim; yazıyı boşa şişirmeye gerek yok...diyorum ki böyle şifre işlerine kafa yoran en baba kurumlar güç birliği yapsa, yeter ki ellerinde bu üç (şifrelenmiş) metin dışında bilgi olmasın, çözemezler. kolaylık olsun diye ikisini çeyplbdsgnks' la bitirdim bir de, avans da veriyorum. ca-cık-ol-maz. ve işte, işte bunun farkına varmaktır biraz kriptoloji, ılık bir yaz akşamı; bence. yanlışsam yanlış deyin ve doğrusunu gösterin.

-----------
vigenere cipher : https://eksisozluk.com/vigenere-cipher--121207
en basitinden soyle bisey:

bana bak füzenin pin kodu altıyüz altmış altı ona göre
coze mez sinkico zem ezsi nkicoz emezsi nkic oze mezs

harfler alfabede kaçıncı sayıya eşleniyorsa ona göre sayı şekline getirilir. her harf altındaki ile toplanır. eger alfabedeki harf sayisini geciyor ise basa dönülür.
 -
bir alfabede sıkça kullanılan bağlaç, ilgeç, götürgeç gibi şeyler şifremizi kısa sürede ele verir. hiç tekrar etmeyen bir şifre kullanıldığında gerçekten kırması kasan bir şifre elde etmiş oluruz.

bir metni vigenere yöntemiyle şifrelemek için javascript ile yapılmış bu sayfadan yararlanılabilir.
http://sharkysoft.com/misc/vigenere/

normalde bir şekilde kırılması mümkün olan bir şifre de olsa frekans analizi tahminleriyle kırılması gerektiği ve bilgisayar kullanarak kolayca bin kelimelik metin iki yüz kelimelik paragrafla şifrelenebileceğinden dolayı oldukça kastırıcı olabilen bir şifredir. kendisini çözülmesi imkansıza yakın hale getirmek için tek gereken metinle aynı boydaki bir şifre anahtarıdır, o zaman frekans analizi için gereken şifre uzunluğu hesabı yalan, vigenere şifresi de bela olur.

bu tarz şifre anahtarları tek kullanımlık anahtarlar olarak anılırlar ve hacimli ve yazılı olma zorunluluğuna sahip doğalarından ötürü şifrelemede kullanımları ekonomik değildir.
-
https://eksisozluk.com/vigenere-cipher--121207?p=2
16.yüzyıldan kalma güzide bir şifreleme yöntemidir.

basit örneklerle (ve ingiliz alfabesi üzerinden) açıklamak istersek öncelikle bir şifre anahtarımız olmalı. bu anahtara "crypto" diyelim. daha sonrada tabi ki şifreleyecek bir metnimiz olmalı. bu metin de "what a nice day today" olsun. daha sonra metnimizden boşlukları, noktalama işaretlerini vs. çıkararak şu hale getirelim: "whatanicedaytoday"

şimdi alt satıra metnimizi, üst satıra anahtarımızı yazalım. bunu yaparken de anahtarımızı gerektiği kadar peş peşe tekrar edelim ve metindeki her harfi bu anahtarda uygun düşen harfle eşleştirelim (aralardaki "-" işaretlerinin harfleri gösterimde aynı hizzaya getirebilmek dışında hiçbir anlamı yoktur):

c--r--y-p-t--o-c--r--y--p-t-o-c-r--y-p--t
w-h-a-t--a-n--i--c--e-d-a-y-t-o-d-a--y

bilindiği gibi ingiliz alfabesinde 26 harf bulunmakta. bu nedenle kendimize mod 26'yı kaydırma oranı olarak alıyoruz. yani diyelim ki anahtardaki ilk "c" harfi metinde "w" harfine denk geliyor. bu durumda "c" ve "w"nun alfabedeki sıralarını sayısal olarak topluyor, mod26'ya göre kalanını alıyor, bu degere karşılık gelen sıradaki harfi de şifrelenmiş metnimize yazıyoruz ki bu örnekte bahsettiğimiz harf "z" olacaktır.

işin içine mod girdiği için asıl metindeki her harf şifreli metinde tek bir harfe karşılık gelmeyeceği gibi şifreli metindeki aynı iki harf de asıl metinde farklı harflere denk gelebilecektir. örneğimiz üzerinden devam edersek "whatanicedaytoday" metni şifrelendiğinde "zzzjucludtunwgcqs" halini alacaktır.

*********************************************

uzun süre bu yöntemle oluşturulan şifreli metinlerin anahtar bilinmeden okunamayacağı (kırılamayacağı) düşünüldü. ancak olasılık hesapları işin içine girdiğinde bunun hiç de öyle olmadığı anlaşılabildi. burada en önemli etken ingilizce'de "e" harfinin yaygın kullanımıydı.

şimdi diyelim ki anahtarımızın uzunluğunu biliyoruz fakat kendisini bilmiyoruz ve elimizde şifreli bir metin var. bu durumda metnimizi anahtarımız uzunluğunda parçalara bölmeye başlıyoruz. yine örneğimiz üzerinden gidersek elimizde şu şekilde gruplar olacaktır:

zzzjuc ludtun wgcqs

bu durumda örneğin her grubun ilk harfinin (z, l, w) anahtarın ilk harfi ile şifrelendiğini biliyoruz ancak şifrelenen gerçek harfleri bilmiyoruz. elimizdeki şifreli metinin uzunluğu anahtar uzunluğuna kıyasla yeterince büyükse istatistik veri toplamaya elverişli bir kümeye sahibiz demektir. (ki bu metin şimdiye kadar ki örneğimizde yer alan "what a nice day today" cümlesinden çok daha uzun olmalıdır. sadece 5 kelimelik bir metin pek de yeterli bir küme oluşturmaz) hal böyle iken yapmamız gereken bu ilk harfleri listelemek ve içlerinde en sık kullanılanı bulmaktır. ingiliz alfabesinde en sık kullanılan harf "e" olduğu için bizim listemizde de en sık geçen harf büyük ihtimalle "e" harfinin şifrelenmiş hali olacaktır.

bu noktada tersine mühendislik ile şifreleme işleminin tersini gerçekleştirebiliriz. diyelim ki "e" harfine karşılık anahtarın ilk harfi ile şifrelenen harfler arasında en yaygın harfimiz "h" olsun. bu durumda ("h" - "e") işlemi bize örneğimizde "c" harfini verecektir.

evet, artık anahtarımızın ilk harfini biliyoruz. şimdi aynı işlemi sırayla anahtarın her harfi için gerçekleştirebilir ve önce anahtarımızı bulabilir, sonra da bu anahtarı kullanarak metnimizi çözebiliriz.

*********************************************

eğer anahtar uzunluğuna dair bir fikrimiz yok ise yapmamız gereken önce anahtarı tek harften oluşuyor gibi kabul etmek ve yukarıdaki işlemi gerçekleştirmektir, daha sonra elimizde anlamlı bir metin oluşana kadar bu uzunluğunu artırarak tekrar tekrar denemeye devam ederiz.

bazı kaynaklarda "a" harfi 0 degerini alırken bazı kaynaklarda 1 degerini aldığı kabul edilmiştir. sonuç olarak hangi değeri alırsa alsın yöntem ana hatlarıyla aynı kalmaktadır.

wikipedia linki

Hiç yorum yok:

Yorum Gönder