Texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent




Download 3,33 Mb.
Pdf ko'rish
bet33/128
Sana19.12.2023
Hajmi3,33 Mb.
#123541
1   ...   29   30   31   32   33   34   35   36   ...   128
Bog'liq
A9k4uhxO3YwZ1v7e4Zqkca5zrFHjWA2dl3HCizPL

RSA algoritmi. 
RSA nomi algoritmni yaratuvchilari 
familiyalarining birinchi harflaridan olingan (Rivest, Shamir va 
Adleman). RSA algoritmi modul arifmetikasining darajaga ko‘tarish 
amalidan foydalanishga asoslangan. 
RSA algoritmida ochiq va shaxsiy kalitlar juftini generatsiyalash 
uchun ikkita katta uzunlikdagi 
𝑝 va 𝑞 sonlari tanlanadi va ularning 
ko‘paytmasi hisoblanadi: 
𝑁 = 𝑝 ∗ 𝑞. Shundan so‘ng 𝜑(𝑁) = (𝑝 − 1) ∗
(𝑞 − 1) bilan o‘zaro tub bo‘lgan, 𝑒 soni tanlanadi (𝜑(𝑁) funksiya 
ma’nosi quyida keltirilgan). Shundan so‘ng 
𝜑(𝑁) modulda 𝑒 sonining 
teskarisi hisoblanadi va u 
𝑑 ga teng bo‘ladi. Shundan so‘ng, ikkita tub 
sonning (
𝑝 𝑣𝑎 𝑞) ko‘paytmasi 𝑁 va 𝑒𝑑 = 1 𝑚𝑜𝑑 𝜑(𝑁) shartni 


65 
qanoatlantiruvchi 
𝑒 va 𝑑 sonlari mavjud. Shundan so‘ng, 𝑝 𝑣𝑎 𝑞 lar 
esdan chiqariladi (o‘chirib tashlanadi). 
Bu yerda, 
𝑁 modul hisoblanib, (𝑁, 𝑒) ochiq kalit juftini va 𝑑 
maxfiy kalitni tashkil etadi. RSA algoritmida shifrlash va 
rasshifrovkalash modul bo‘yicha darajaga oshirish asosida bajariladi. 
RSA algoritmida shifrlash uchun 
𝑀 xabarni son ko‘rinishida ifodalash 
talab etiladi va 
𝑁 modul bo‘yicha 𝑒 darajaga ko‘tariladi, ya’ni 
𝐶 = 𝑀
𝑒
𝑚𝑜𝑑 𝑁
 
𝐶 ni rasshifrovkalash uchun uni 𝑁 modul bo‘yicha shaxsiy kalit 𝑑 
darajaga ko‘tarish talab etiladi: 
𝑀 = 𝐶
𝑑
𝑚𝑜𝑑 𝑁. 
Boshqacha aytganda, RSA algoritmida xabar ochiq kalit bilan 
shifrlansa va shaxsiy kalit bilan rasshifrovkalansa, 
𝑀 = 𝐶
𝑑
𝑚𝑜𝑑 𝑁 =
𝑀
𝑒𝑑
𝑚𝑜𝑑 𝑁 tenglikning to‘g‘riligini isbotlash zarur. 
Aytaylik, RSA algoritmida ma’lumotni shifrlash va 
rasshifrovkalash amallari tanlab olingan (
𝑝 = 11 𝑣𝑎 𝑞 = 3) “katta” 
sonlar ustida amalga oshirish talab qilinsin. Mazkur holda modul
𝑁 = 𝑝 ∗ 𝑞 = 33 ga teng bo‘ladi va 𝜑(𝑁) = (𝑝 − 1)(𝑞 − 1) = 20 ga 
teng bo‘ladi. U holda shifrlash uchun zarur bo‘lgan daraja e ni (
3) ga 
teng deb olish mumkin. Sababi, 3 soni 
𝜑(𝑁) = 20 bilan o‘zaro tubdir. 
Shundan so‘ng, Evklidning kengaytirilgan algoritmi asosida 
rasshifrovkalash kaliti 
𝑑 = 7 aniqlanadi. Ya’ni, 𝑒𝑑 = 3 ∗ 7 =
1 𝑚𝑜𝑑 20. U holda A tomonning ochiq kalit jufti 𝑁, 𝑒 = 33, 3 va 
shaxsiy kaliti 
𝑑 esa 7 ga teng bo‘ladi.
Shundan so‘ng, A tomon o‘zining ochiq kalitini barchaga uzatadi. 
Biroq, shaxsiy kalitini maxfiy saqlaydi.
Faraz qilaylik, B tomon A tomonga 
𝑀 = 15 ma’lumotni shifrlab 
yubormoqchi. Buning uchun B tomon A tomonning ochiq kaliti juftini 
𝑁, 𝑒 = 33,3 oladi va shifrmatnni quyidagicha hisoblaydi: 
𝐶 = 𝑀
𝑒
𝑚𝑜𝑑 𝑁 = 15
3
= 3375 = 9 𝑚𝑜𝑑 33 
va uni A tomonga yuboradi.


66 
A tomon 
𝐶 = 9 shifrmatnni rasshifrovkalash uchun shaxsiy kalit 
𝑑 = 7 dan foydalanadi: 
𝑀 = 𝐶
𝑑
𝑚𝑜𝑑 𝑁 = 9
7
= 4782969 = 144938 ∗ 33 + 15 = 15 𝑚𝑜𝑑 33 
Agar RSA algoritmida kichik tub sonlardan (
𝑝 𝑣𝑎 𝑞 𝑢𝑐ℎ𝑢𝑛) 
foydalanilgan taqdirda, hujumchi ochiq bo‘lgan 
𝑁 ni osonlik bilan ikkita 
tub sonning ko‘paytmasi ko‘rinishida yozishi mumkin. Shundan so‘ng, 
ochiq kalitning ikkinchi qism 
𝑒 dan foydalangan holda, shaxsiy kalit 𝑑 
ni hisoblay oladi. Shuning uchun RSA algoritmidan amalda foydalanish 
uchun tanlanuvchi tub sonlar uzunligi kamida 2048 bit bo‘lishi talab 
etiladi. Bundan tashqari, RSA algoritmini buzish faqat faktorlash 
muammosiga bog‘liqligi isbotlanmagan.

Download 3,33 Mb.
1   ...   29   30   31   32   33   34   35   36   ...   128




Download 3,33 Mb.
Pdf ko'rish

Bosh sahifa
Aloqalar

    Bosh sahifa



Texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent

Download 3,33 Mb.
Pdf ko'rish