Kontent qismiga oʻtish

Kriptografik protokol

ZiyoSfera, erkin ensiklopediya

Kriptografik protokol — aloqa qiluvchi ikki yoki undan ortiq tomon o‘rtasida ma’lumotlarni himoyalangan almashish uchun mo‘ljallangan qoidalar, xabarlar ketma-ketligi va kriptografik amallar majmui.

Kriptografik protokol ma’lumotlarni shifrlash, xabar yaxlitligini tekshirish, muloqot tomonlarini autentifikatsiya qilish, umumiy maxfiy kalitlarni hosil qilish hamda qayta yuborish hujumlariga qarshi himoya kabi vazifalarni bajarishi mumkin.

NIST ta’rifiga ko‘ra, protokol aloqa qiluvchi tomonlar o‘rtasida uzatiladigan ma’lumotlarning tuzilishi va xabarlar tartibini belgilovchi qoidalar to‘plamidir. Xavfsizlik protokoli esa xavfsizlikka oid funksiyalarni bajaruvchi mavhum yoki amaliy protokol hisoblanadi.[1][2]

Tavsifi

Kriptografik protokol alohida kriptografik algoritmdan farq qiladi. Algoritm, masalan, shifrlash, xeshlash yoki raqamli imzo yaratish funksiyasini bajaradi. Protokol esa bir yoki bir nechta algoritmni qaysi tartibda, qaysi kalitlar bilan va qaysi turdagi xabarlar orqali qo‘llashni belgilaydi.

Masalan, simmetrik shifrlash algoritmi ma’lumotni shifrlashi mumkin. Biroq xavfsiz aloqa uchun tomonlar qanday qilib umumiy kalitga ega bo‘lishi, kim bilan muloqot qilinayotgani qanday tekshirilishi, xabar qayta yuborilganini aniqlash va sessiya tugagandan so‘ng kalitlarni qanday almashtirish masalalari kriptografik protokol doirasida hal qilinadi.

Kriptografiya maxfiy ma’lumotlardan ruxsatsiz foydalanishning oldini olish va ma’lumotni tekshirish imkonini beruvchi algoritmlar, protokollar hamda metodologiyalarni o‘z ichiga oladi.[3]

Asosiy maqsadlari

Kriptografik protokolning vazifalari uning qo‘llanilish sohasiga bog‘liq. Biroq ko‘plab protokollarda quyidagi maqsadlar uchraydi:

Maxfiylik — ma’lumot mazmunini ruxsatsiz shaxslar o‘qiy olmasligini ta’minlash. Yaxlitlik — xabar uzatilish jarayonida o‘zgartirilmaganini tekshirish. Autentifikatsiya — muloqot qilayotgan tomonning shaxsini yoki tizimga tegishliligini tekshirish. Kalitlarni kelishish — tomonlar o‘rtasida umumiy maxfiy kalit hosil qilish. Qayta yuborishdan himoya — oldin yuborilgan xabarni takroran yuborish orqali amalga oshiriladigan hujumlarni aniqlash. Oldinga yo‘naltirilgan maxfiylik — kelajakda uzoq muddatli kalitlar oshkor bo‘lgan taqdirda avvalgi sessiyalar ma’lumotlarini himoyalash. Kalitlarni yangilash — uzoq davom etadigan sessiyalarda yangi kalitlardan foydalanishga o‘tish.

Autentifikatsiyalangan shifrlash mexanizmlari ma’lumotning maxfiyligi va yaxlitligini birgalikda ta’minlash uchun ishlatiladi. AEAD deb ataladigan bunday mexanizmlar shifrlangan ma’lumot bilan birga qo‘shimcha bog‘langan ma’lumotlarning yaxlitligini ham tekshirishi mumkin.[4]

Tarkibiy qismlari

Kriptografik protokol odatda bir nechta tarkibiy qismdan iborat bo‘ladi.

Ishtirokchilar

Protokolda ikki yoki undan ortiq aloqa tomoni qatnashadi. Ular foydalanuvchilar, serverlar, dasturiy mijozlar, qurilmalar yoki boshqa axborot tizimlari bo‘lishi mumkin.

Ba’zi protokollarda ishtirokchilar bevosita muloqot qiladi. Boshqa holatlarda esa ular xabarlarni yetkazib beruvchi server, sertifikat markazi yoki identifikatsiya xizmati orqali aloqa o‘rnatadi.

Xabarlar va holatlar

Kriptografik protokol ishtirokchilar orasida uzatiladigan xabarlarning formatini va ketma-ketligini belgilaydi.

Xabar tarkibida quyidagi ma’lumotlar bo‘lishi mumkin:

protokol versiyasi; ishtirokchi yoki sessiya identifikatori; ochiq kalit; raqamli imzo; shifrlangan ma’lumot; xabar tartib raqami; vaqt belgisi; tasodifiy qiymat; autentifikatsiya kodi.

Ko‘plab protokollar sessiya holatini yuritadi. Sessiya holati qaysi kalitlardan foydalanilayotgani, xabarlarning qaysi bosqichda ekani va oldingi amallar natijasini saqlashi mumkin.

Kriptografik kalitlar

Kriptografik kalit — shifrlash, deshifrlash, raqamli imzo yaratish yoki imzoni tekshirish kabi amallarni boshqaruvchi qiymatdir.[5]

Protokolda quyidagi kalitlar ishlatilishi mumkin:

simmetrik shifrlash kaliti; ochiq va yopiq kalit jufti; sessiya kaliti; identifikatsiya kaliti; raqamli imzo kaliti; kalitlarni hosil qilish uchun ishlatiladigan boshlang‘ich maxfiy qiymat.

Sessiya kaliti odatda ma’lum bir muloqot davri uchun yaratiladi. Uzoq muddatli kalitlar esa foydalanuvchi yoki tizimni aniqlash uchun ishlatilishi mumkin.

Tasodifiy qiymatlar

Ko‘plab protokollarda tasodifiy yoki oldindan bashorat qilib bo‘lmaydigan qiymatlardan foydalaniladi. Bunday qiymatlar xabarlarning takrorlanishini aniqlash, yangi sessiyalarni farqlash va kalitlar hosil qilish uchun ishlatiladi.

Tasodifiy qiymatlar noto‘g‘ri yaratilsa yoki qayta ishlatilsa, protokolning xavfsizligi kamayishi mumkin.

Kriptografik mexanizmlar

Kriptografik protokollar turli mexanizmlarni birlashtirishi mumkin.

Simmetrik shifrlash

Simmetrik shifrlashda ma’lumotni shifrlash va ochish uchun bir xil maxfiy kalit yoki o‘zaro bog‘langan kalitlardan foydalaniladi.

Bunday shifrlash usuli odatda katta hajmdagi ma’lumotlarni tez qayta ishlash uchun qo‘llaniladi. Sessiya tashkil etilgandan so‘ng asosiy ma’lumot almashinuvi ko‘pincha simmetrik shifrlash orqali amalga oshiriladi.

Ochiq kalitli kriptografiya

Ochiq kalitli kriptografiyada ochiq va yopiq kalitlardan foydalaniladi. Ochiq kalit boshqa tomonlarga berilishi mumkin, yopiq kalit esa uning egasi tomonidan maxfiy saqlanadi.

Ushbu yondashuv raqamli imzo yaratish, kalitlarni kelishish va ayrim holatlarda ma’lumotni shifrlash uchun ishlatiladi.

Xesh funksiyalari

Xesh funksiyasi ma’lumotdan belgilangan uzunlikdagi qiymat hosil qiladi. Xesh qiymati ma’lumot yaxlitligini tekshirish, raqamli imzo yaratish va kalit hosil qilish jarayonlarida ishlatilishi mumkin.

Xabarni autentifikatsiya qilish kodi

Xabarni autentifikatsiya qilish kodi maxfiy kalit yordamida hisoblanadigan qiymatdir. U xabar mazmuni o‘zgartirilmaganini va xabar kalitga ega bo‘lgan tomon tomonidan yaratilganini tekshirish uchun ishlatiladi.

Kalitlarni kelishish

Kalitlarni kelishish protokollari ikki yoki undan ortiq tomonga umumiy maxfiy kalit hosil qilish imkonini beradi.

Diffie–Hellman kalit almashinuvi ushbu turdagi yondashuvlarning eng mashhur namunalaridan biridir. NIST SP 800-56A tavsiyasida chekli maydonlar va elliptik egri chiziqlar asosidagi bir nechta Diffie–Hellman hamda MQV kalitlarni kelishish sxemalari tavsiflangan.[6]

Ishlash bosqichlari

Kriptografik protokollarning aniq tuzilishi turlicha bo‘lsa-da, ko‘plab protokollarda quyidagi bosqichlar uchraydi.

Boshlang‘ich tayyorgarlik

Ushbu bosqichda tomonlar protokol versiyasini, qo‘llaniladigan algoritmlarni va kriptografik parametrlarni tanlashi mumkin.

Ba’zi tizimlarda foydalanuvchi yoki server oldindan sertifikat, ochiq kalit, identifikatsiya ma’lumoti yoki boshqa ishonch ma’lumotlarini oladi.

Autentifikatsiya

Autentifikatsiya bosqichida tomonlar bir-birining shaxsini yoki tizimga tegishliligini tekshiradi.

Bu raqamli sertifikat, parol, raqamli imzo, oldindan ulashilgan kalit yoki boshqa mexanizmlar orqali amalga oshirilishi mumkin.

Kalitlarni hosil qilish

Tomonlar umumiy maxfiy kalitni hosil qiladi yoki uzatadi. Keyinchalik ushbu kalit sessiya kalitlarini hosil qilish uchun ishlatilishi mumkin.

Himoyalangan ma’lumot almashinuvi

Sessiya kalitlari tayyor bo‘lgach, tomonlar ma’lumotlarni shifrlangan va autentifikatsiyalangan shaklda uzatadi.

Xabarlar tarkibida tartib raqami, vaqt belgisi yoki boshqa himoya ma’lumotlari bo‘lishi mumkin. Bu qayta yuborish hujumlarini aniqlashga yordam beradi.

Sessiyani yangilash yoki tugatish

Uzoq davom etadigan aloqalarda kalitlar yangilanishi mumkin. Sessiya yakunlangach, vaqtinchalik kalitlar va maxfiy ma’lumotlar xavfsiz tarzda o‘chirilishi lozim.

Turlari

Kriptografik protokollar vazifasiga qarab bir nechta guruhlarga bo‘linadi.

Transport qatlami protokollari

Transport qatlami xavfsizligi protokollari tarmoq orqali uzatiladigan ma’lumotlarni himoyalash uchun ishlatiladi.

TLS protokoli mijoz va server ilovalariga internet orqali ma’lumotlarni himoyalangan tarzda almashish imkonini beradi. TLS 1.3 versiyasi RFC 8446 hujjatida tavsiflangan.[7]

Kalitlarni kelishish protokollari

Kalitlarni kelishish protokollari umumiy maxfiy kalit hosil qilish uchun ishlatiladi.

Bunday protokollarga quyidagilar kiradi:

Diffie–Hellman kalit almashinuvi; X3DH; PQXDH; elliptik egri chiziqli Diffie–Hellman asosidagi protokollar.

Himoyalangan xabar almashish protokollari

Himoyalangan xabar almashish protokollari foydalanuvchilar o‘rtasidagi xabarlarni uchdan uchgacha shifrlash, sessiya kalitlarini yangilash va qurilmalar bo‘yicha muloqotni boshqarish uchun qo‘llaniladi.

Signal protokoli dastlabki sessiya kalitini hosil qilish, xabar kalitlarini yangilash va asinxron xabar almashish uchun mo‘ljallangan bir nechta mexanizmlarni o‘z ichiga oladi.

Autentifikatsiya protokollari

Autentifikatsiya protokollari foydalanuvchi, qurilma yoki serverning haqiqiyligini tekshirish uchun ishlatiladi.

Ular parol, sertifikat, raqamli imzo, bir martalik parol yoki boshqa identifikatsiya ma’lumotlariga asoslanishi mumkin.

Guruhli aloqa protokollari

Guruhli aloqa protokollari bir nechta ishtirokchi o‘rtasida himoyalangan ma’lumot almashish uchun mo‘ljallangan.

Bunday protokollarda guruh a’zolarini qo‘shish va chiqarish, guruh kalitlarini yangilash, xabarlarni tasdiqlash hamda guruh holatini sinxronlashtirish masalalari yuzaga keladi.

Xavfsizlik xususiyatlari

Maxfiylik

Maxfiylik ma’lumot mazmunini faqat ruxsat etilgan tomonlar o‘qiy olishini anglatadi.

Bu xususiyat shifrlash algoritmlari va maxfiy kalitlarni ishonchli boshqarish orqali ta’minlanadi.

Yaxlitlik

Yaxlitlik xabar uzatilish jarayonida o‘zgartirilmaganini tekshirish imkoniyatini beradi.

Xesh funksiyalari, xabarni autentifikatsiya qilish kodi va raqamli imzolar ushbu maqsadda ishlatilishi mumkin.

Autentifikatsiya

Autentifikatsiya muloqot qilayotgan tomonning haqiqiyligini tekshirishga yordam beradi.

Bu himoya o‘rtadagi vositachi hujumi xavfini kamaytirishi mumkin. Biroq bu xususiyatning samaradorligi foydalanuvchi identifikatsiya ma’lumotlarini qanday tekshirishi va ishonch zanjiri qanday boshqarilishiga bog‘liq.

Qayta yuborishdan himoya

Qayta yuborish hujumi oldin yuborilgan xabar yoki autentifikatsiya ma’lumotini takroran yuborishga asoslanadi.

Bunday hujumlarga qarshi xabar tartib raqami, vaqt belgisi, tasodifiy qiymat yoki sessiya identifikatori ishlatilishi mumkin.

Oldinga yo‘naltirilgan maxfiylik

Oldinga yo‘naltirilgan maxfiylik uzoq muddatli kalit keyinchalik oshkor bo‘lgan holatda avvalgi sessiyalar ma’lumotlarini himoyalashga qaratilgan xususiyatdir.

Bu odatda vaqtinchalik kalitlar, yangi Diffie–Hellman hisoblashlari va sessiya kalitlarini muntazam yangilash orqali ta’minlanadi.

Tahdidlar va cheklovlar

Kriptografik protokolning xavfsizligi faqat matematik algoritmlarga emas, balki uning amalga oshirilishi va foydalanish sharoitiga ham bog‘liq.

Quyidagi holatlar protokol himoyasiga salbiy ta’sir qilishi mumkin:

yopiq kalitlarning oshkor bo‘lishi; zaif yoki qayta ishlatilgan parollar; tasodifiy sonlar generatorining past sifati; eskirgan yoki zaif algoritmlardan foydalanish; sertifikatlarni noto‘g‘ri tekshirish; xabar tartib raqamlarini noto‘g‘ri yuritish; qayta yuborish hujumlari; dasturiy ta’minotdagi xatolar; foydalanuvchi qurilmasining zararlanishi; xizmat ko‘rsatishni rad etish hujumlari.

Kriptografik protokol xabar mazmunini himoya qilishi mumkin, biroq u barcha metadata ma’lumotlarini avtomatik tarzda yashirmaydi. Masalan, tarmoq manzili, xabar yuborilgan vaqt yoki aloqaning mavjudligi haqidagi ayrim ma’lumotlar qo‘shimcha himoya vositalarini talab qilishi mumkin.

Standartlashtirish va tekshirish

Ko‘plab kriptografik protokollar xalqaro standartlashtirish tashkilotlari, ilmiy hamjamiyat va texnologik tashkilotlar tomonidan ishlab chiqiladi yoki tavsiflanadi.

IETF internet protokollari uchun RFC hujjatlarini e’lon qiladi. NIST esa kriptografik standartlar, tavsiyalar va qo‘llanmalarni nashr etadi.

Kriptografik protokol ishlab chiqilganda yoki joriy etilganda quyidagi yo‘nalishlar muhim hisoblanadi:

algoritmlarning zamonaviy xavfsizlik talablariga mosligi; kalit uzunligi va kriptografik parametrlarning tanlanishi; protokolning formal tahlili; mustaqil xavfsizlik auditi; dasturiy amalga oshirishni tekshirish; xatolar yuzaga kelganda xavfsiz ishlash; kalitlarni yangilash va bekor qilish tartibi.

Qo‘llanilishi

Kriptografik protokollar turli sohalarda qo‘llaniladi:

veb-saytlar va veb-xizmatlar; elektron pochta; virtual xususiy tarmoqlar; mobil va ish stoli dasturlari; elektron to‘lov tizimlari; davlat va korporativ axborot tizimlari; bulutli xizmatlar; himoyalangan xabar almashish tizimlari; elektron imzo tizimlari; sanoat va muhim axborot infratuzilmasi tarmoqlari.

Shuningdek qarang

Kriptografiya Simmetrik shifrlash Ochiq kalitli kriptografiya Raqamli imzo Xesh funksiyasi Kalitlarni kelishish protokoli Diffie–Hellman kalit almashinuvi TLS Signal protokoli Uchdan uchgacha shifrlash Axborot xavfsizligi

Manbalar

  1. ↑ NIST. Protocol. Computer Security Resource Center.
  2. ↑ NIST. Security protocol. Computer Security Resource Center.
  3. ↑ NIST. Cryptography. Computer Security Resource Center.
  4. ↑ McGrew, David. RFC 5116: An Interface and Algorithms for Authenticated Encryption. IETF, 2008-yil.
  5. ↑ NIST. Cryptographic key. Computer Security Resource Center.
  6. ↑ Barker, Elaine; Chen, Lily; Roginsky, Allen va boshqalar. SP 800-56A Rev. 3: Recommendation for Pair-Wise Key-Establishment Schemes Using Discrete Logarithm Cryptography. NIST, 2018-yil.
  7. ↑ Rescorla, Eric. RFC 8446: The Transport Layer Security Protocol Version 1.3. IETF, 2018-yil.

Tashqi havolalar

NIST Computer Security Resource Center lug‘ati NIST kriptografik standartlari va qo‘llanmalari RFC Editor Internet Engineering Task Force

Turkum Turkum protokollar Turkum xavfsizligi Turkum protokollari