İlk öncelikle selamın aleyküm, size bu konuda kriptografinin en karmaşık ve bana göre en güvenli şifreleme yöntemlerinden biri olan RSA alogritmasını inceleyeceğiz . Aşağıdaki adımları izleyerek sizde elinizdeki metini RSA algoritması ile şifreleyebilirsiniz.
Adımlar :
Metinimiz bu örnekte THT olsun.
Bu metini ASCII olarak çevirmemiz lazım.
Bu yüzden : ASCIImetin = 84 72 84 .
ASCIImetin değişkeni 3 parçadan oluşup bunlar decimalde bir harfi veya işareti temsil edecektir.
p ve q olmak üzere iki tane asal sayı seçiyoruz.
p = 2, q = 7 olarak kabul edelim (Normalde bu sayılar büyük sayı olarak seçilir fakat ben örneklemek amacıyla küçük seçtim.)
x = p.q
x = 2.7
x = 14'dür
φ(x) = (p-1) . (q-1)
φ(x) = (2-1) . (7-1)
φ(x) = 6'dır (Bu değişken normalde n olarak alınır fakat forumdan kaynaklı x olarak kabul ediyoruz)
Bir açık anahtar seçilir (e) = 1'den büyük φ(x) den küçük bir asal sayı
e değişkenini 5 olarak alalım
Değişkenler Hazır Olduğuna Göre Şifrelemeye Geçelim :
Şifrelenmiş metin = (ASCIImetin)^e(mod n)
Şifrelenmiş metin = (ASCIImetin)^5(mod 14)
Eğer anlamadıysanız şöyle açıklayayım, metinimizin ASCII versiyonundaki her parçayı taban olarak alıp değişkenimiz olan e'yi üs olarak alıyoruz
Örn : ( 84^5 mod 14 ) ( 72^5 mod 14 ) ( 84^5 mod 14 )
Birinci Harf İkinci Harf Üçüncü Harf
Verdiğim örnekte şifrelenmiş metin : 9 8 9
Şifrelenmiş Metini Çözmek (Deşifleri Metine Ulaşmak) :
Şifrelenmiş metni çözmek için özel anahtar (x) gereklidir. Özel anahtar d, e*d ≡ 1 (mod φ(x)) olacak şekilde hesaplanır.
d'yi hesaplamak: e * d ≡ 1 (mod φ(x)) denklemini çözerek d'yi buluyoruz. Burada d = 5 olacaktır çünkü (5 * 5) mod 6 = 1.
Deşifreli metin = (Şifrelenmiş karakter^d) mod x
Deşifreli metin = (Şifrelenmiş karakter^5) mod 14
Örn:
Birinci şifreli karakter (9^5) mod 14 = 4
İkinci şifreli karakter (8^5) mod 14 = 10
Üçüncü şifreli karakter (9^5) mod 14 = 4
Orijinal metin ASCII değerleri: 84 72 84
ASCII değerlerini metne çevir: "THT"
Bu konu için yaklaşık 1 saatlik bir araştırma yaptım inşallah size yardımı dokunmuştur, ihtyacınız olabilecek araçlar ve dosyalar aşağıdadır.
Sayılar büyük olabileceğinden dolayı size yardım olarak birkaç tool bıraktım
Üs Hesaplama : Üslü Sayı Hesaplama - HESAPLAMA.NET
Mod Hesaplama : Mod Alma Hesaplama
Eğer anlatımım yetersiz gelmişse şu dosyaya bakabilirsiniz
Adımlar :
Metinimiz bu örnekte THT olsun.
Bu metini ASCII olarak çevirmemiz lazım.
Bu yüzden : ASCIImetin = 84 72 84 .
ASCIImetin değişkeni 3 parçadan oluşup bunlar decimalde bir harfi veya işareti temsil edecektir.
p ve q olmak üzere iki tane asal sayı seçiyoruz.
p = 2, q = 7 olarak kabul edelim (Normalde bu sayılar büyük sayı olarak seçilir fakat ben örneklemek amacıyla küçük seçtim.)
x = p.q
x = 2.7
x = 14'dür
φ(x) = (p-1) . (q-1)
φ(x) = (2-1) . (7-1)
φ(x) = 6'dır (Bu değişken normalde n olarak alınır fakat forumdan kaynaklı x olarak kabul ediyoruz)
Bir açık anahtar seçilir (e) = 1'den büyük φ(x) den küçük bir asal sayı
e değişkenini 5 olarak alalım
Değişkenler Hazır Olduğuna Göre Şifrelemeye Geçelim :
Şifrelenmiş metin = (ASCIImetin)^e(mod n)
Şifrelenmiş metin = (ASCIImetin)^5(mod 14)
Eğer anlamadıysanız şöyle açıklayayım, metinimizin ASCII versiyonundaki her parçayı taban olarak alıp değişkenimiz olan e'yi üs olarak alıyoruz
Örn : ( 84^5 mod 14 ) ( 72^5 mod 14 ) ( 84^5 mod 14 )
Birinci Harf İkinci Harf Üçüncü Harf
Verdiğim örnekte şifrelenmiş metin : 9 8 9
Şifrelenmiş Metini Çözmek (Deşifleri Metine Ulaşmak) :
Şifrelenmiş metni çözmek için özel anahtar (x) gereklidir. Özel anahtar d, e*d ≡ 1 (mod φ(x)) olacak şekilde hesaplanır.
d'yi hesaplamak: e * d ≡ 1 (mod φ(x)) denklemini çözerek d'yi buluyoruz. Burada d = 5 olacaktır çünkü (5 * 5) mod 6 = 1.
Deşifreli metin = (Şifrelenmiş karakter^d) mod x
Deşifreli metin = (Şifrelenmiş karakter^5) mod 14
Örn:
Birinci şifreli karakter (9^5) mod 14 = 4
İkinci şifreli karakter (8^5) mod 14 = 10
Üçüncü şifreli karakter (9^5) mod 14 = 4
Orijinal metin ASCII değerleri: 84 72 84
ASCII değerlerini metne çevir: "THT"
Bu konu için yaklaşık 1 saatlik bir araştırma yaptım inşallah size yardımı dokunmuştur, ihtyacınız olabilecek araçlar ve dosyalar aşağıdadır.
Sayılar büyük olabileceğinden dolayı size yardım olarak birkaç tool bıraktım
Üs Hesaplama : Üslü Sayı Hesaplama - HESAPLAMA.NET
Mod Hesaplama : Mod Alma Hesaplama
Eğer anlatımım yetersiz gelmişse şu dosyaya bakabilirsiniz
Son düzenleme: