Asimetrik şifreleme nasıl yapılır ?


Genel & Off Topic    Konu Dışı , Eğlence-Muhabbet , Tanışma , Yarışma & Etkinlik Bölümü

Yazar: borancesu    0 Yorum    104 Görüntüleme
  • 0 Oy - 0 Yüzde

Paylaşım Tarihi: 02.07.2016, 08:51:39 #1
borancesu Delikanlı
Onaylı Uye
Status: Çevrimdışı Yorum Sayısı:75 Konu Sayısı:11 Üyelik Tarihi:16.06.2016 Rep Puanı: 3

Öncelikle bakalım asimetrik şifreleme nedir ?

Önceleri simetrik şifreleme yöntemi vardı. Bu yolda hem şifreleyen hemde şifreyi çözen anahtarlar aynı olduğu için anahtarın şifreleme yapacak olan kullanıcaya göndermek çok riskli idi. Ama asimetrik şifrelemede şifreleme yaptığınız anahtarla şifreyi çözdüğünüz anahtarın bir alakası olmadığı için güvenlik önemli derecede arttırılıyor. Bu yöntemda 2 anahtar var. 1. si şifreleme yapılan ve herkese açık olan publickey 2. si şifreyi çözen ve iyi saklanması gereken privatekey. Siz publickeyinizi şifreleme yapacak kişiye veriyorsunuz. O sizin publickeyinizle yazıyı vs. şifreleyip size gönderiyor ve sizde size özel private keyinizle şifreniyi çözüyorsunuz. Bu kadar açıklama yeter sanırım birde örnek yapalım.

Önce 2 asal sayı seçilir. a ve b

a = 3 
b = 11


Daha sonra bir adet bu iki sayının çarpımından oluşan N sayısı oluşturulur.

N = (a * b)
N = (3 * 11)
N = 33

N sayısı publickey ve privatekey in bir parçası olur

Dasa sonra bir x sayısı oluşturulur. Bu sayı a ve b nin 1 eksiklerinin çarpımıdır

a = (a -1 ) * (b -1)
a = (3 -1 ) * (11 – 1)
a = 2 * 10
a = 20

Daha sonra bir e sayısı oluşturulur ve bu e sayısı a ile herhangi bir ortak böleni olmayan bir sayı olmalıdır.

e = 7 (denebilir)

Bu oluşturulan e ve N sayılar publickeydir

Daha sonra bir adet d sayısı üretilir ve bu d sayısı e sayısı ile çarpılıp a sayısı ile mod landığında kalanı 1 verecek şekilde bir sayı olmalıdır. Bunun matematiksel yazımı şöyledir. 

d * e = 1 (mod x), yani
d * 7 = 1 (mod 20)
d = 3 olabilir.

Çünkü 3 . 7 = 21 (mod 20) de 1 sonucunu verir.

Oluşturulan bu d sayısı ile N sayısı da privatekeydir


Public key : e = 7 ve N = 33 
Private key : d = 3 ve N = 33
Bu durumda biz privatekeyimizi çok iyi biçimde saklıyoruz ve publickeyimizi karşı tarafa yolluyoruz.

Şimdi bir örnek yapalım

A harfini şifreleyip karşı tarafa yollıyalım

A harfinin sayısal değerini 16 olarak seçelim. 16 sayısını publickey de bulunan e sayısı ile üs alınır ve N sayısı ile de çıkan sonucun modu alınır. Yani

Şifreli Metin = 16^7 (mod 33)
Şifreli Metin = 268435456 (mod 33)
Şifreli Metin = 25

Şimdide 25 sayısını private keyimizle çözelim. Bunun için 25 sayısını d ile üs alıp n ile modlayacağız.

Çözülmüş Metin = 25^3 (mod 33)
Çözülmüş Metin = 15625 (mod 33)
Çözülmüş Metin = 16 (yani A)

Amaaaaaaaaaaaaaaaaaa saldırgan şifreyi çözmek için gerekli olan d sayısını herkese açık olan N sayısında öğrenebilir. Tek yapması gereken asal çarpanlarına ayırmak. 33 ü asal çarpanlarına ayırırsak

33 = 3*11

Privatekeyimizi çok kolay bir şekilde bulduk. Bunu önlemek için 128 bit vb şifreleme yüntemlerinde çok büyük asal sayılar kullanılır. Ortalama 45 haneli iki asal sayının çarpımı 90 haneye yakın bir sayı çıkar. Bu sayının büyüklüğünü şöyle ifade edeyimki evrendeki atomların sayısını yazmak için yaklaşık 70 haneli bir sayı gereklidir. Dolayısıyla bu tip bir sayıyı asal çarpanlarına ayırmak çok kolay değildir.

128bit lik bir şifrenin çözülmesi için ihtimal sayısı 2 üzeri 128 dir. Ve bu kadar ihtimal normal bir bilgisayar ile ortalama 2 trilyon yılda çözülür. (Saniyete 1 trilyon işlem yapabilen 1 milyon dolarlık süper bilgisayarlarla bu süre 1190 yıl dır) 


Japonyada 64bit bir şifre yaklaşık 100.000 (yüzbin) bilgisayarın paralel bağlanarak ortak çalışması sonucunda yaklaşık 3,5 yılda çözülmüştür. 

Bügün internet üzerinde SSL ile kurulu sayfalarda 128bit lik şifreleme kullanılır. (sizin kredi kartı bilgilerinizin korunması için) ve her zaman şifrelemede verinin geçerlilik süresi çözülme süresinden az ise güvendesiniz demektir. 

Yani SSL kullanılan bir sayfada şifrelenerek yollanan kredi kartı bilgileriniz 1190 yıldan fazla süre yürürlükte kalmayacağı için 1190 yıl sonra çözülmüş olmasının bir mahzuru yoktur. Özel şifreleme programları ile 4096 bitlik (linkleri görmek için giriş yapmanız. Yada üye olmanız gerekir. ) şifreleme yapılabilir bu şekilde gerçekleştirilmiş bir şifrenin çözülme ihtimali 2 üzeri 4096 yani yaklaşık olarak 10 üzeri 500 dür. 



Kolay gelsin...

Alıntıdır.

Kullanıcı İmzası
Türkler bir gün ansızın delirecektir... O zaman Tanrı Türk'ü değil , sizi korusun..

İmage







Aradığınızı Bulamadınız Mı ?

Konuyu görüntüleyenler:
1 Misafir