Açık anahtarlı şifreleme yöntemlerine bir örnek olan RSA, ilk olarak 1977 yılında Ron Rives, Adi Shamir ve Leonard Aldeman tarafından üretilmiştir. RSA şifreleme yönteminde, herkese açık (Public Key) ve gizli (Private Key) olmak üzere iki farklı anahtar kullanılır. Bu iki anahtar, asal sayılar seçilerek oluşturulur ve seçilen asal sayıların büyüklüğüyle, RSA şifreleme yönteminin güvenliği doğru orantılıdır. Yani ne kadar çok büyük asal sayı o kadar çok güvenlik.
Çalışma prensibi:
- Yukarıda bahsedildiği gibi, yeterince büyük iki farklı asal sayı seçilir. Bu sayılar p ve q olsun.
- Seçilen bu iki asal sayının birbiriyle çarpımı gizli ve açık şifrelerin tabanı olacaktır. Bu iki sayının çarpımı da n olsun. Yani n = p*q
- Ardından bu iki sayının totient fonksyionu hesaplanır. Φ(n) = (p-1)(q-1)
- Hesaplanan totient fonksyionundan küçük ve 1′ den büyük herhangi bir tam sayı seçilir. Seçilen bu tam sayı e olsun.
- Son olarak d*e ≡ 1 (d*e mod Φ(n) = 1) denklemini sağlayan bir d sayısı bulunur.
Örnek:
1. adımda öngörüldüğü gibi, iki farklı asal sayı seçilir. Günlük hayatta seçilen bu iki asal sayının yüzbinlerce hatta milyarlarca basamağı vardır. Ancak, hesaplamada bize kolaylık olması için biz iki küçük sayı seçeceğiz. p = 7 q = 13 olsun.
2. adımda p*q hesaplanır ve ardından totient fonksiyonunun değeri bulunur:
Mesaj şifreleme ve şifrelenmiş mesajı çözme:
Mesaj şifrlemede kullanılan formül:
Mesaj çözümlemede kullanılan formül:
Verilen şifreleme formülü ile m = 10 mesajını şifreleyelim(m <= n olması gerekmektedir!).