Toshkent axborot texnalogiyalar unversiteti farg`ona filiali kompyuter injeneringi fakulteti kompyuter injeneringi yo`nalishi 611-20 guruh talabasi FAYZIYEV SAMANDARNING Kiberxavsizligi fanidan bajargan.
8-AMALIY MASHG‘ULOT
Mavzu: Asimmetrik shifrlar
Ishdan maqsad: talabalarda axborotlarni kriptografik himoyalash usulini o‘rganish, ko‘nikmalarini shakllantirish va asimmetrik kriptotizimlarda axborotni shifrlash va deshifrlash haqida ma’lumotga ega bo’lish.
Nazariy qism
Ochiq kalitli shifrlash sistemalarida ikkita kalit ishlatiladi. Axborot ochiq kalit yordamida shifrlansa, maxfiy kalit yordamida rasshifrovka qilinadi. Ochiq kalitli sistemalarini qo‘llash asosida qaytarilmas yoki bir tomonli funksiyalardan foydalanish yotadi. Bunday funksiyalar quyidagi xususiyatlarga ega. Ma’lumki ma’lum bo‘lsa y=f( ) funksiyani aniqlash oson. Ammo uning ma’lum qiymati bo‘yicha x ni aniqlash amaliy jixatdan mumkin emas. Kriptografiyada yashirin deb ataluvchi yo‘lga ega bo‘lgan bir tomonli funksiyalar ishlatiladi. parametrli bunday funksiyalar quyidagi xususiyatlarga ega. Ma’lum uchun Ez va Dz algoritmlarini aniqlash mumkin. Ez algoritmi yordamida aniqlik sohasidagi barcha x uchun fz ( ) funksiyani osongina olish mumkin. Xuddi shu tariqa Dz algoritmi yordamida joiz qiymatlar sohasidagi barcha uchun teskari funksiya x=f-1( ) ham osongina aniqlanadi. Ayni vaqtda joiz qiymatlar sohasidagi barcha va deyarli barcha, uchun xatto Ez ma’lum bo‘lganida ham f-1( )ni hisoblashlar yordamida topib bo‘lmaydi. Ochiq kalit sifatida ishlatilsa, maxfiy kalit sifatida x ishlatiladi.
Ochiq kalitni ishlatib shifrlash amalga oshirilganda o‘zaro muloqatda bo‘lgan subyektlar o‘rtasida maxfiy kalitni almashish zaruriyati yo‘qoladi. Bu esa o‘z navbatida uzatiluvchi axborotning kriptohimoyasini soddalashtiradi.
Ochiq kalitli kriptosistemalari bir tomonli funksiyalar ko‘rinishi bo‘yicha farqlash mumkin. Bularning ichida RSA, El-Gamal va Mak-Elis sistemalarini aloxida tilga olish o‘rinli. Hozirda eng samarali va keng tarqalgan ochiq kalitli shifrlash algoritmi sifatida RSA algoritmini ko‘rsatish mumkin. RSA nomi algoritmni yaratuvchilari familiyalarining birinchi xarfidan olingan (Rivest, Shamir va Adleman).
Algoritm modul arifmetikasining darajaga ko‘tarish amalidan foydalanishga asoslangan. Algoritmni quyidagi qadamlar ketma-ketligi ko‘rinishida ifodalash mumkin.
1-qadam. Ikkita 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). 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 e tanlab olinadi.
5-qadam. Quyidagi shartni qanoatlantiruvchi ed soni aniqlanadi
ed=1(modf(p,q)) . Bu shartga binoan ko‘paytmaning f(p,q) funksiyaga bo‘lishdan qolgan qoldiq 1ga teng. ed soni ochiq kalitning ikkinchi tashkil etuvchisi sifatida qabul qilinadi. Maxfiy kalit sifatida d va n sonlari ishlatiladi.
6-qadam. Dastlabki axborot uning fizik tabiatidan qat’iy nazar raqamli ikkili ko‘rinishda ifodalanadi. Bitlar ketma-ketligi L bit uzunlikdagi bloklarga ajratiladi, bu yerda L - L log2(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= 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:
Axborotni rasshifrovka qilishda quyidagi munosabatdan foydalaniladi:
X(i)=(Y(i))d (modn).