Mustaqil ish Kiber Huquq va Kiber Etika fani Musaqulov Farrux guruh: 070-20 Mavzu: Dasturlarni ishonchliligini va butunligini ta’minlash kiriptografik vositalari. Reja; 1. Kiriptografiya (kiriptografik vositalar) 2. Ma’lumot , dastur butunligini ta’minlashda xesh lash 3. Kiriptografik vositalar va usullari 4. xulosa Dasturlarni ishonchliligini va butunligini ta’minlash kriptografik vositalar Kriptografiya - bu uchinchi shaxslar ishtirokida xavfsiz muloqot qilish usullarini amaliyot va o'rganish. Bundan tashqari, u ikki tizim o'rtasida xavfsiz ulanishni o'rnatish uchun ishlatiladi. Kriptografiya ma'lum sharoitlarda xabarlar uchun maxfiylik, yaxlitlik va haqiqiylikni ta'minlash uchun matematikadan (birinchi navbatda arifmetika va raqamlar nazariyasidan) foydalanadi. U ruxsatsiz shaxslar ushlashi va o'qishi mumkin bo'lgan tranzit paytida ma'lumotlarni o'qish yoki buzish mumkin emasligini ta'minlash orqali maxfiylikni o'z ichiga oladi. Kriptografiya haqida bilishingiz kerak bo'lgan birinchi narsa - xabaringizni shifrlashning yagona universal usuli yo'qligi. Buni qilishning ko'plab usullari mavjud, ularning har biri o'zining afzalliklari va kamchiliklariga ega. Bugungi kunda eng keng tarqalgan shifrlash usullari ochiq va simmetrik kalit kriptografiyasidir. Ko'pgina kriptografik algoritmlar tabiiy ravishda boshqa kontekstlarda, masalan, raqamli imzo sxemalari yoki Internet kabi xavfsiz tarmoqlar orqali xavfsiz elektron tijorat uchun shifrlash usullaridan foydalanish natijasida paydo bo'ladi. Masalan, RSA kriptotizimlari dastlab butun son faktorizatsiyasini hal qilish uchun ishlab chiqilgan. Kriptografiya ba'zan jinoyatchilar tomonidan aniqlanmaslik va noqonuniy xabarlarni to'xtatmasdan uzatilishiga imkon berish uchun ishlatiladi. Bundan tashqari, xavfsizlik protokollarida keng qo'llaniladigan RSA kabi ochiq kalitli kriptotizimlar tomonidan qo'llaniladi. Shifrlash algoritmlari Kriptografiya algoritmi oddiy matnni shifrlangan matnga va yana qaytadan aylantirish uchun matematik formuladan foydalanadigan shifrlash va shifrni ochish usulidir. Kriptografiyani shifrlash algoritmi kompyuter tizimida ma'lumotlarning maxfiyligi va yaxlitligi uchun foydalaniladigan shifr turidir. U ochiq matnni shifrlangan matnga aylantirish uchun shifrlash kalitidan foydalanadi, keyin u Internet kabi tarmoq orqali qabul qiluvchi uni shifrini hal qiladigan manzilga yuboriladi. Kriptografiya shifrlash algoritmlari odatda tijorat elektron tijorat, onlayn-banking va maxfiylik muhim bo'lgan boshqa ilovalarda qo'llaniladi. Ushbu shifrlash algoritmlariga Data Encryption Standard (DES), Triple DES, Blowfish va CAST-256 kiradi. Shifrlash algoritmlarining bir necha turlari mavjud; bularga blokli shifrlar va oqimli shifrlar kiradi. Blok shifr oddiy matn bloklarini shifrlaydi va ularni birma-bir shifrlaydi. Oqimli shifr bitta operatsiyada fayldagi bir nechta belgilar yoki belgilarni kodlaydi. Kriptografik uslublardan (shifrmatnga va dastlabki matnga oʻgirish, elektron raqamli imzoni shakllantirish va tekshirish, xesh-funksiya shakllantirish va tekshirish) foydalanishga asoslangan axborotni oʻzgartirish jarayoni. Axborotni shifrlash uni begonalar tomonidan oʻrganish yoki oʻzgartirish imkoniyatini yoʻqqa chiqaradi. Shuningdek, maʼlumotlarga va dasturlarga, ulardan noqonuniy foydalanish maqsadida, ruxsatsiz raqamli imzo tizimiga kirishning oldini olishni taʼminlaydi. Shifrlashning ikki usuli mavjud: simmetrik va asimmetrik. Simmetrik shifrlashda, kodlash va kodni ochish uchun birgina kalitning oʻzidan foydalaniladi. Asimmetrik shifrlashda ikkita kalitdan foydalaniladi. Ulardan biri (ochiq kalit) dastlabki matnni shifrmatnga oʻgirishni, ikkinchisi esa (yopiq kalit) dastlabki matnga oʻgirishni taʼminlaydi. Xesh funksiya Xesh funksiyalar – ixtiyoriy uzunlikdagi kirish ma’lumotini chiqishda belgilangan uzunlikdagi xesh qiymatga aylantirib beruvchi bir tomonlama funksiyalarga aytiladi. Xesh funksiyalar kriptografiya va zamonaviy axborot xavfsizligi sohasida ma’lumotlarni to’laligini tekshirishda foydalaniladi. Elektron to’lov tizimlari protokollarida ham istemolchi kartasi ma’lumotlarini bank-emitentga to’liq yetkazish uchun foydalaniladi. Xesh funksiya- ixtiyoriy uzunlikdagi M-ma’lumotni fiksirlangan uzunlikga siqish yoki ikkilik sanoq sistemasi ifodalangan ma’lumotlarni fiksirlangan uzunlikdagi bitlar ko‘rinishidagi qandaydir konbinatsiyasi (svertkasi) deb ataluvchi funksiya. Ta’rif. Xesh-funksiya deb, har qanday h: XY oson hisoblanuvchi va M –ma’lumot uchun h(M) = H fiksirlangan uzunlikga ega bo‘lgan funksiyaga aytiladi. Berilgan M-ma’lumotning h(M) –xesh qiymatini topish uchun avvalo ma’lumot biror «m» -uzunlikdagi bloklarga ajratilib chiqiladi. Agar M-ma’lumot uzunligi «m» -ga karrali bo‘lmasa, u holda oxirgi to‘lmay qolgan blok «m»- uzunlikga olindan kelishib olingan maxsus usulda biror simvol yoki belgi (masalan “0” yoki “1”) bilan to‘ldirilib chiqiladi. Natijada hosil qilingan M-ma’lumot bloklariga: M= { M1, M2 ,.......Mn) quyidagicha siqishni (svertkani) hisoblash protsedurasi qo‘llaniladi: H0 = , Hi = f ( Mi , Hi-1) , i =1,2,......n h(M)= Hn ; bu yerda -qandaydir fiksirlangan boshlang‘ich vektor. Misol sifatida quyidagi keng tarqalgan: f ( Mi , Hi-1) = E k( Mi Hi-1) i =1,2,......n xesh-funksiyani keltirib o‘tish mumkin. Bu yerda E-simmetrik shifrlash algoritmi (masalan DES, GOST 28147-87, AES –FIPS 197 va hakoza), k- esa shifrlash algoritmi maxfiy kaliti, H0 = 0, - XOR (mod 2 bo‘yicha mos bitlarni qo‘shish) amali. Xesh funksiyalar turlari Oddiy xesh funksiyalar: Adler-32, CRC, FNV, Murmur2, PJW-32, TTH, Jenkins hash. Kriptografik xesh funksiyalar: CubeHash, BLAKE, BMW, ECHO, FSB, Fugue, Grøstl, JH, Hamsi, HAVAL, Keccak (SHA-3), Kupyna, LM-хеш, Luffa, MD2, MD4, MD5, MD6, NHash, RIPEMD-128, RIPEMD-160, RIPEMD-256, RIPEMD-320, SHA-1, SHA-2, SHABAL, SHAvite-3, SIMD, Skein, Snefru, SWIFFT, Tiger, Whirlpool, ГОСТ Р 34.11-94, ГОСТ Р 34.11-2012. Kalit hosil qiluvchi xesh funksiyalar: bcrypt, PBKDF2, scrypt. Kriptografik xesh funksiyalarning esa quyidagi turlari mavjud: kalitli xesh funksiya; 2) kalitsiz xesh funksiya. Kalitli xesh funksiyalar simmetrik shifrlash algoritmi tizimlarida qo‘llaniladi. Kalitli xesh funksiyalar berilgan ma’lumot autentifikatsiyasi kodi (message authentication code(MAC)) deb ham yuritiladi. Ushbu kod bir-biriga ishonchi mavjud foydalanuvchilarga berilgan ma’lumotining haqiqiyligi va to‘laligini kafolatini qo‘shimcha vositalarsiz ta’minlash imkoniyatini tug‘diradi. 1-rasm. MAC tizimlari Kalitsiz xesh funksiyalar xatolarni topish kodi (modification detection code(MDC) yoki manipulation detection code, massage integrrity code(MIC) deb ataladi. Ushbu kod qo‘shimcha vositalar (masalan: himoyalangan aloqa tarmog‘i, shifrlash yoki ERI algoritmlari) yordamida berilgan ma’lumot to‘laligini kafolatlaydi. Bu turdagi xesh funksiyalardan bir-biriga ishonch bildiruvchi va ishonchi bo‘lmagan tomonlar foydalanishlari mumkin. Odatda kalitsiz xesh funksiyalardan quyidagi xossalarni qanoatlantirishi talab qilinadi: 1) bir tomonlilik; 2) kolliziyaga bardoshlilik; 3) xesh qiymatlari teng bo‘lgan ikkita ma’lumotni topishga bardoshlilik. Birinchi shart bajarilganda, berilgan xesh qiymatga ega bo‘lgan ma’lumotni topishning murakkab ekanligini, ikkinchi shart bajarilganda bir xil xesh qiymatga ega bo‘lgan ma’lumotlar juftini topishning murakkab ekanligini, uchinchi shart xesh qiymati ma’lum bo‘lgan berilgan ma’lumot uchun xesh qiymati shunga teng bo‘lgan ikkinchi ma’lumotni topishning murakkab ekanligini bildiradi. Masalan, nazorat yig‘indini topuvchi SRC xesh funksiyasi chiziqli akslantirish bo‘ladi va shuning uchun ham bu uchta shartdan birontasini ham qanoatlantirmaydi. Ma’lumotlarni uzatishda yoki saqlashda ularning to‘laligini nazoratlashda har bir ma’lumotning xesh qiymati (bu xesh qiymat ma’lumotni autentifikatsiya qilish kodi yoki “imitoqo‘yish”-ma’lumot bloklari bilan bog‘liq bo‘lgan qo‘shimcha kiritilgan belgi deyiladi) hisoblaniladi va bu qiymat ma’lumot bilan birga saqlaniladi yoki uzatiladi. Ma’lumotni qabul qilgan foydalanuvchi ma’lumotning xesh qiymatini hisoblaydi va uning xesh qiymati bilan solishtiradi. Agar taqqoslashda bu qiymatlar mos kelmasa, ma’lumot butunligi buzilganligini anglatadi. “Imitoqo‘yish”lar hosil qilish uchun foydalaniladigan xesh funksiyalar nazorat yig‘indisidan farqli ravishda ma’lumotni saqlash va uzatishda ro‘y beradigan tasodifiy xatolarni aniqlabgina qolmasdan, raqib tomonidan qilingan aktiv hujumlar to‘g‘risida ham ogohlantiradi. Buzg‘unchi xesh qiymatni osonlik bilan o‘zi hisoblab topa olmasligi va muvaffaqiyatli imitatsiya qilishi yoki ma’lumotni o‘zgartira olmasligi uchun xesh funksiya 70 buzg‘unchiga ma’lum bo‘lmagan maxfiy kalitga ega bo‘lishi kerak. Bu maxfiy kalit faqatgina ma’lumotni uzatuvchi va qabul qiluvchi tomonlarga ma’lum bo‘lishi kerak. Bunday xususiyatga ega xesh funksiyalarga kalitli xesh funksiyalar deyiladi. Kalitli xesh funksiyalar yordamida hosil qilinadigan “imitoqo‘yish”lar imitatsiya (impersonation) turidagi hujumlarda qalbaki ma’lumotlarni hosil qilishga (fabrication) va “o‘zgartirish” (substitution) turidagi hujumlarda uzatiladigan ma’lumotni modifikatsiya (modification) qilishga yo‘l qo‘ymaslikda foydalaniladi. Ma’lumot manbaining autentifikatsiyalash masalasi axborotkommunikatsiya tizimlarining bir-biriga ishonmaydigan ikki tomoni orasida ma’lumot almashinuvida yuzaga keladi. Bu masalani hal qilishda ikkala tomon ham biladigan maxfiy kalitdan foydalanib bo‘lmaydi. Bu holatda ma’lumotning manbaini autentifikatsiya qilishga imkon beradigan elektron raqamli imzo sxemasi qo‘llaniladi. Bunda odatda foydalanuvchining maxfiy kalitiga asoslangan imzo qo‘yishdan oldin xatolik kodini aniqlovchi xesh funksiya yordamida ma’lumot siqiladi. Bu holda xesh funksiya maxfiy kalitga ega bo‘lmaydi hamda u fiksirlangan bo‘lishi va hammaga ma’lum bo‘lishi mumkin. Unga qo‘yilgan asosiy talab imzolangan hujjatni o‘zgartirish hamda bir xil xesh qiymatga ega bo‘lgan ikkita har xil ma’lumotni tanlash imkoniyati yo‘qligining kafolatidir. Agar bir xil xesh qiymatga ega bo‘lgan ikkita har xil ma’lumot mavjud bo‘lsa, bu ma’lumotlar jufti kolliziya hosil qiladi deyiladi. Xesh funksiyalarda kolliziya – ikkita har xil ma’lumotdan bir xil xesh qiymat hosil bo’lib qolishi. Kolliziyaning oldini olish yo’llaridan biri bu xesh jadval hisoblanadi. Xeshlash algoritmlarining bardoshliligi xa xavfsizliligi kolliziyaga chidamliligi bilan aniqlanadi. Xesh funksiyalar qo’llanilishi va axborot xavfsizligidagi o’rni Xeshlash algoritmlarining zamonaviy kriptografiyadagi tutgan o’rni juda muhimdir va undan hozirda keng ko’lamda foydalaniladi. Yangi xesh algoritmlar xam yaratilmoqda. Yangi xesh algoritmlar kolliziyaga bardoshli, xesh qiymatning tez hisob-kitob qila olishi va.h.k xususiyatlarga ega bo’ladi. 1. Simmetrik kriptotizimlar. Simmetrik kriptotizimlarda shifrlash va deshifrlash uchun bitta kalitdan foydalaniladi. (Shifrlash – ochiq matn deb ataluvchi dastlabki matnni shifrlangan matn holatiga o‘tkazish. Deshifrlash – shifrlashga teskari bo‘lgan jarayon yani kalit yordamida shifrlangan matnni dastlabki matn holatiga yetkazish). Demak, shifrlash kalitidan foydalanish huqukiga ega bo‘lgan odamgina axborotni deshifrlashi mumkin. Shu sababli, simmetrik kriptotizimlar mahfiy kalitli kriptotizimlar deb yuritiladi. Ya’ni shifrlash kalitidan faqat axborot atalgan odamgina foydalana olishi mumkin. 2. Asimmetrik kriptotizimlar. Assimetrik kriptotizimlarda bir-biriga matematik usullar bilan bog‘langan ochiq va maxfiy kalitlardan foydalaniladi. Axborot ochiq kalit yordamida shifrlanadi, ochiq kalit barchaga oshkor qilingan bo‘ladi, shifrni ochish esa faqat maxfiy kalit yordamida amalga oshiriladi, maxfiy kalit faqat qabul qiluvchigagina ma’lum va uni ruhsatsiz foydalanishdan ishonchli himoyalashi zarur. Asimmetrik kriptotizimda axborotni himoyalash axborot qabul qiluvchi kalitining mahfiyligiga asoslangan. Kriptografik metodlardan foydalanishning asosiy yo‘nalishlari – aloqa kanallari orqali maxfiy axborotni uzatish (masalan, elektron pochta), uzatiladigan xabarlarni aslligini o‘rnatish, ma’lumotlarni (hujjatlar, ma’lumotlar bazalari) ko‘chma tashuvchi xotiralarda shifrlangan shaklda saqlash. orqali amalga oshirilmoqda. Bu esa o‘z navbatida, ushbu ma’lumotlarni boshqa begona shaxslar tomonidan noqonuniy tarzda ko‘rish, o‘zgartirish va qayta yuborishga bo‘lgan xatti-harakatlarni oldini olish va axborot xavfsizligini ta’minlashga bo‘lgan ehtiyojni yanada ortishiga olib keldi. xulosa shuki ma’lumotlarni butunligini ta’minlash juda zarur va biz buni turli xil usullar bilan ta’inlashni ko’rib chiqdik . xesh lash orqali biz ma’lumot uzatganimizda uni 3shaxs tomonidan o’zgartirilib qo’yilmasligi uchun foydalanish bizga qancha qulaylik olip kelishini ham bilip oldik.