Toshkent axborot texnologiyalari universiteti ganiev salim karimovich karimov madjit malikovich tashev komil axmatovich axborot xavfsizligi




Download 2,72 Mb.
Pdf ko'rish
bet126/191
Sana13.01.2024
Hajmi2,72 Mb.
#136339
1   ...   122   123   124   125   126   127   128   129   ...   191
Bog'liq
61b762c5e6d666.07483815

ILOVALAR 
 
1 - ilova 
RSA shifrlash algoritmining dasturiy amalga oshirilishi
Algoritm modul arifmetikasining darajaga ko‘tarish amalidan foydalanishga 
asoslangan. Algoritmni quyidagi qadamlar ketma-ketligi ko‘rinishida ifodalash 
mumkin. 
1-qadam. Ikkita 200dan katta bo‘lgan tub son p va q tanlanadi. 
2-qadam. Kalitning ochiq tashkil etuvchisi n hosil qilinadi 
n=p*q
3-qadam. Quyidagi formula bo‘yicha Eyler funksiyasi hisoblanadi:
f(p,q)=(p-1)(q-1)
Listing (S++ dasturlash tilida).
printf("Ikkitatubsonnikiriting\t: "); 
scanf("%d%d",&p,&q); 
n = p*q; 
phi=(p-1)*(q-1); 
printf("\n\tF(n)\t= %d",phi); 
do 

printf("\n\nKiritishe\t: "); 
scanf("%d",&e); 
Eyler funksiyasi n bilan o‘zaro tub, 1 dan n gacha bo‘lgan butun musbat 
sonlar sonini ko‘rsatadi. O‘zaro tub sonlar deganda 1 dan boshqa birorta umumiy 
bo‘luvchisiga ega bo‘lmagan sonlar tushuniladi. 
4-qadam.f(p,q) qiymati bilan o‘zaro tub bo‘lgan katta tub son d tanlab 
olinadi. 
5-qadam. Quyidagi shartni qanoatlantiruvchi e soni aniqlanadi 


274 
d
e

=1(modf(p,q))
Bu shartga binoan 
d
e

ko‘paytmaning f(p,q) funksiyaga bo‘lishdan qolgan 
qoldiq 1ga teng. e soni ochiq kalitning ikkinchi tashkil etuvchisi sifatida qabul 
qilinadi. Maxfiy kalit sifatida d va n sonlari ishlatiladi. 
Listing (S++ dasturlash tilida).
while(FLAG==1); 
d = 1; 
do 

s = (d*e)%phi; 
d++; 
}while(s!=1); 
d = d-1; 
6-qadam. Dastlabki axborotuning fizik tabiatidan qat’iy nazar raqamli ikkili 
ko‘rinishda ifodalanadi. Bitlar ketma-ketligi bit uzunlikdagi bloklarga ajratiladi, 
bu erda LL

log
2
(n+1) shartini qanoatlantiruvchi eng kichik butun son. Har bir 
blok [0, n-1] oraliqka taalluqli butun musbat son kabi ko‘riladi. Shunday qilib
dastlabki axborot X(i), i=
I
,
1
sonlarning ketma-ketligi orqali ifodalanadi. I ning 
qiymati shifrlanuvchi ketma-ketlikning uzunligi orqali aniqlanadi. 
7-qadam. Shifrlangan axborot quyidagi formula bo‘yicha aniqlanuvchi Y(i
sonlarning ketma-ketligi ko‘rinishida olinadi: 
).
(mod
))
(
(
)
(
n
i
X
i
Y
e

Listing (S++ dasturlash tilida).
voidencrypt() 

inti; 
C = 1; 
for(i=0;i
C=C*M%n; 
C = C%n; 


275 
printf("\n\tShifrlanganso’z: %d",C); 

Axborotni rasshifrovka qilishda quyidagi munosabatdan foydalaniladi: 
).
(mod
))
(
(
)
(
n
i
Y
i
X
d

Listing (S++ dasturlash tilida).
voiddecrypt() 

inti; 
M = 1; 
for(i=0;i
M=M*C%n; 
M = M%n; 
printf("\n\tDeshifrlanganso’z : %d",M); 

 

Download 2,72 Mb.
1   ...   122   123   124   125   126   127   128   129   ...   191




Download 2,72 Mb.
Pdf ko'rish

Bosh sahifa
Aloqalar

    Bosh sahifa



Toshkent axborot texnologiyalari universiteti ganiev salim karimovich karimov madjit malikovich tashev komil axmatovich axborot xavfsizligi

Download 2,72 Mb.
Pdf ko'rish