1.3.2 RSA algoritmi. Bu algoritm asimmetrik kriptotizim hisoblanadi va juda ko’p o’zligini tasdiqlash tizimlarda ishlatiladi. Bu tizimni ochiq kalitli kriptotizimlar ham deb atashadi. 1976 yilgi Diffi va Hellmanning maqolasi chiqqandan keyin kriptografika yo'nalshida juda katta o'zgarishlar kiritildi degan edik. Shu o'zgarishlar biri RSA algoritmidir. Massachusets texnalogiya universitetini olimlari bo'lgan Ronald Rives, Adi Shamir va Leo Adleman Diffi va Hellmanlarning e'lon qilgan maqolasini o'qib chiqib, o'zlarining algoritmlarini ishlab chiqmoqchi bo'lishadi. Bu ochiq kalitli tizimni ishlab chiqish jarayonida 40 tadan ortiq funksiyalar, tizimlar o'ylab chiqiladi. Ularning ichidan nihoyat bitta algoritm tanlashadi. Bu algoritm katta tub sonlarni juda oson topadi va ularni bir - biriga ko'paytiradi. Bu algoritmni RSA deb nomlashdi. RSA bu uning yaratuvchilarini sharafiga qo'yilgan ismlarning bosh harflaridir R - Rivest, S - Shamil, A – Adleman -> RSA. Keling bu algoritmni ishlash usulini qadamlarga bo'lib tatbiq qilsak:
1-Qadamda kalitni generatsiyalash deb yurutamiz:
ikkita xar hil tub sonlarni olamiz: p = 3557, q = 2579
ularni bir-biriga ko'paytmasini hisoblaymiz:n = p * q = 3557 * 25799173503
Yopiq eksponentani tanlaymiz: d = mod φ (n), d = 6111579
Ochiq kalitni e'lon qilamiz: {e, n} = {3,9173503}
Yopiq kalitni o'zimizga saqlab qo'yamiz: {d, n} = {6111579,9173503}
2-Qadam Matnni ochiq kalitlar orqali maxfiy xolatga keltirish:
Biror bir matnni tanlaymiz: m = 111111
Shifrlangan matn holatga keltirish uchun hisoblash jarayonini o'tkazamiz: c=E(m) = mod n = mod 9173503 = 4051753
3-Qadamda matnni yopiq kalitlar yordamida ochiq holatga keltirish:
m = D(c) = = = 111111
Ochiq kalit orqali shifrlab junatmoqda yopiq kaliti orqali deshifrlamoqda.