Yazan: Berna Kılıç

Michael Rabin tarafından 1979 yılında keşfedilmiş bir kriptosistemidir. Public key kripto sistem olarak addedilmesine rağmen RSA’in bir versiyonudur. Bir asimetrik kriptografi tekniğidir. Bu tekniğin güvenliği RSA’de olduğu gibi faktorizasyonun zorluğundan ileri gelmektedir. Rabin’in dezavantajı 4 tane çıktı içinden hanisinin doğru girdi olduğunu bulma zorluğu. Her ne kadar redundancy (ekleme) metoduyla doğru çıktı seçilmeye çalışılsa da bu bir dezavantaj.

Rabin’in kriptosisteminin güvenliği tıpkı RSA’de olduğu gibi büyük sayıların faktorizasyonunun zorluğundan kaynaklanıyor.

Rabin Public-Key için anahtar üretimi

Yaklaşık olarak aynı boyutta iki büyük rasgele p ve q asal sayıları oluşturulur.

n = p.q hesaplanır.

A’nın umumi anahtarı n; A’nın hususi anahtarı (p,q).

Rabin Public-Key encryption

Umumi anahtar n’yi elde etmek

Mesajı (m) uzunluğu n’den az olmayacak şekilde ikili sayı (binary) olarak oluşturmak

C = m2 mod n

Şifrelenmiş mesajı (C) A’ya gönder.

Rabin Public-Key decryption

Uzatılmış öklit algoritmasını kullanarak denklemi oluşturan a ve b sayıları bulunur.

a.p + b.q = 1

r = C(p+1)/4 mod p sayısı hesaplanır.

s = C(q+1)/4 mod q sayısı hesaplanır.

x = (a.p.s + b.q.r) mod n sayısı hesaplanır.

y = (a.p.s + b.q.r) mod n sayısı hesaplanır.

c sayısının mod n’de dört kare kökü:

m1 = x m2 = -x mod n

m3 = y m4 = -y

Örnek

Anahtar üretimi

A kişisi p = 277, q = 331 asal sayılarını seçer.

n = p.q = 91687 sayısı hesaplanır.

A’nın umumi anahtarı n = 91687, hususi anahtarı p = 277, q = 331.

Şifreleme İşlemi

Farz edelim ki orijinal mesajın son 6 biti tekrar edilecek.

10 bitlik mesajı şifrelemek için m = 1001111001.

B m‘nin son 6 bitini tekrarlayarak 16 bitlik mesajı elde eder m = 1001111001111001.

Ondalık gösterimle m = 40569.

B m mesajını şifreler .

c = m2 mod n = 405692 mod 91687 = 62111 değerini hesaplar.

Şifrenin açılması

A şifreli metin c’yi açmak için, c’nin mod n’e göre dört kare kökünü hesaplar.

m1 = 69654, m2 = 22033, m3 = 40569, m4 = 51118

2’li sayı olarak

m1 = 10001000000010110, m2 = 101011000010001,

m3 = 1001111001111001, m3 = 11000111101011110

Sadece m3 istenen tekrara sahip.

A şifreli metin c’yi açarak m3’ü elde edip, tekrarları atarak orijinal mesajı elde eder.

m = 1001111001.

Redundancy (ekleme)

Rabin public-key şemasının olumsuz tarafı, alıcının dört olasılık arasından doğru plain text i bulma zorluğuyla karşılaşmasıdır. Decripşındaki bu belirsizlik encripşından önce plain text e önceden belirlenmiş tekrar oranının eklenmesi ile pratikte kolayca üstesinden gelinebilir

Bu sorundan kurtulabilmek için encryptiondan önce plain text e tekrarlanan bir parça ilave edilir. Örneğin mesajın son 64 biti mesaja eklenir. Böylece mesajın bir kısmı mesaj içinde yinelenmiş olur. Decription sonunda elde edilen dört karekök olan m1, m2,m3, m4 den biri yüksek olasılıkla tekrarlanan parçaya sahip olan doğru cipher text tir.

Etkililiği

Şifrenin açılması işlemi bir doğru sonucun yanında üç yanlış sonuç üretmektedir. Ve doğru olan seçenek tahmin edilmek durumundadır. Bu durum da rabin’in dezavantajı olarak yaygın olarak kullanılmasını engellemektedir.

Şifrelenecek olan mesaj bir text mesajı olarak uygulansaydı tahmin etmek zor olmazdı. Bununla birlikte şifrelenecek mesaj sayısal bir değerse “disambiguation scheme” gibi bir çeşit probleme dönüşür. Bu durumda doğru mesajı seçmek özel metodlarla ya da ekleme yöntemiyle problemi çözebilir.

Güvenlik

Rabin kriptosisteminin en önemli avantajı n umumi anahtarının faktorizasyonu. Bu durum güvenliğin yüksek bir seviyesidir.

Rabin kriptosistemini şifresini açmak tamsayı faktorizasyonu problemine eşdeğerdir. Fakat RSA’den daha farklıdır. Bu nedenle RSA’den daha güvenlidir.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir