RSA Algoritması

ωσитαѕ

Kıdemli Üye
1 Eki 2017
3,874
483
6
RSA Şifreleme Algoritmaları

FC6E227E-AB94-4BD6-9F1E-80B2B968F575f0ee5d0edd612df2.jpg


Yazılım sistemlerinin güvenliği ele alınarak geliştirilen algoritmalar bu yönde sistem güvenliklerini de maksimum seviyeye taşımaktadır. Buna göre RSA şifreleme algoritmaları da yine bu anlamda en önemli algoritmalardan biri olup yazılım sistem güvenlikçilerinin de tercih ettiği algoritmalardan biridir.

A9F36CE4-5C85-49D0-B72C-4B1CF733D4C5a142960c7d4eaa1e.png


RSA şifreleme algoritması, çok büyük sayılar ile işlem yapmasından kaynaklı olarak zorluğu yüksek olan asimetrik (açık anahtarlı) kripto algoritmasıdır. Asimetrik çalışılmasından dolayı RSA algoritmaları herkese açık (public) ve gizli (private) olmak üzere iki anahtar kullanmaktadır. Kullanılan bu iki farklı anahtar ise asal sayılara arasından seçilmektedir.

A9F36CE4-5C85-49D0-B72C-4B1CF733D4C5a142960c7d4eaa1e.png


Bir RSA kullanıcısı asal sayılar arasından seçilen iki büyük asal sayının çarpımını üretmekte ve seçtiği başka değerdeki ortak anahtar olarak da ilan edilmektedir. Seçilen asal çarpanları ise saklamaktadır. Ortak anahtarı kullanmakta olan kişi mesajı çok kolay biçimde şifrelemektedir. Ancak eğer ortak anahtarın değeri çok büyükse sadece asal çarpanları bilen kişi bu mesajı, şifreyi çözebilir. Ele alınacak olan asal sayıların büyük değerlerde olması gerekmektedir. Nitekim sayı ne kadar büyük olursa çarpanlara ayırma işlemleri de bir o kadar zorlaşacaktır.

A9F36CE4-5C85-49D0-B72C-4B1CF733D4C5a142960c7d4eaa1e.png


Örnek vermek gerekirse kırk basamağa sahip iki sayının çarpılması çok kısa sürede gerçekleştirilirken kırk basamaklı bir sayının çarpanlara ayrılması daha uzun sürmektedir. Saldırgan kişilerin şifreyi çözmeleri için anahtar olarak verilen değeri çarpanlarına ayırıp denemeler yapması gerekeceğinden dolayı çok fazla efor sarf etmesi ve süre harcaması da gerekmektedir.

A9F36CE4-5C85-49D0-B72C-4B1CF733D4C5a142960c7d4eaa1e.png


RSA algoritmasının genel çalışma mantığı ele alınırsa;

• İki adet asal sayı seçilir. Bu sayıların büyük olması güvenlik anlamında önemlidir. Bu iki sayıya p ve q dersek;

• Anahtarlar kapsamınca base değerinin hesaplanması gerekiyor. Base değeri "n" olursa; n=p*q olacak biçimde bu değer hesaplanabilir.

• n değeri için totient fonksiyon değeri hesaplanır. Çarpanların ikisi de asal sayı olduğundan dolayı n değerinin totient fonksiyonu: φ(n) = (p-1)(q-1) şeklinde hesaplanır.

• Public key değeri "e" olarak ele alınırsa e'yi bulmak için 1< e <φ(n) aralığında bir asal sayı seçilmelidir. e değeri artık public key değeridir.

• Private key değerine d denilirse, d*e = 1 mod (n) olarak d değeri hesaplanır.

 
Son düzenleme:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.