Texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xorazmiy nomidagi toshkent



Yüklə 5,01 Kb.
Pdf görüntüsü
səhifə36/133
tarix07.01.2024
ölçüsü5,01 Kb.
#211443
1   ...   32   33   34   35   36   37   38   39   ...   133
Kiberxavfsizlik asoslari (21.04.2021)

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 

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 =

𝑚𝑜𝑑
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.

Yüklə 5,01 Kb.

Dostları ilə paylaş:
1   ...   32   33   34   35   36   37   38   39   ...   133




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin