Ochiq kalitlarni taqsimlash tamoyilining tavsifi. Kalit boshqaruvi. Muammoni hal qilishning nazariy asoslari

Kriptotizimning o'zi qanchalik murakkab va ishonchli bo'lsa, u kalitlardan foydalanishga asoslangan. Agar ikkita foydalanuvchi o'rtasida ma'lumotlarning maxfiy almashinuvini ta'minlash uchun kalit almashinuv jarayoni ahamiyatsiz bo'lsa, u holda foydalanuvchilar soni o'nlab yoki yuzlab bo'lgan tizimda kalitlarni boshqarish jiddiy muammo hisoblanadi.

Asosiy ma'lumotlar tizimda ishlaydigan barcha kalitlarning yig'indisi sifatida tushuniladi. Agar asosiy ma'lumotlarning etarlicha ishonchli boshqaruvi ta'minlanmagan bo'lsa, tajovuzkor uni egallab olgan holda barcha ma'lumotlarga cheksiz kirish huquqiga ega bo'ladi.

Kalitlarni boshqarish - bu uchta elementni o'z ichiga olgan axborot jarayoni:

    kalitlarni yaratish;

    kalitlarning to'planishi;

    kalitlarni taqsimlash.

Kalit avlodi. Haqiqiy tizimlarda tasodifiy kalitlarni yaratish uchun maxsus apparat va dasturiy ta'minot usullari qo'llaniladi. Qoida tariqasida, tasodifiy sonli sensorlar ishlatiladi. Biroq, ularning avlodining tasodifiy darajasi ancha yuqori bo'lishi kerak. Ideal generatorlar "tabiiy" tasodifiy jarayonlarga asoslangan qurilmalardir. Masalan, oq radio shovqiniga asoslangan kalit avlod. Yana bir tasodifiy matematik ob'ekt - standart matematik usullar yordamida hisoblangan  yoki e kabi irratsional sonlarning o'nli kasrlari.

O'rtacha xavfsizlik talablari bo'lgan tizimlarda, joriy vaqt va (yoki) foydalanuvchi tomonidan kiritilgan raqamning murakkab funktsiyasi sifatida tasodifiy sonlarni hisoblaydigan dasturiy kalit generatorlari juda maqbuldir.

Kalitlarni to'plash. Kalitlarni to'plash deganda ularni saqlash, hisobga olish va yo'q qilishni tashkil etish tushuniladi.

Kalit tajovuzkor uchun maxfiy ma'lumotlarga yo'l ochadigan eng jozibali ob'ekt bo'lganligi sababli, kalitlarni to'plash masalalariga alohida e'tibor qaratish lozim.

Shaxsiy kalitlar hech qachon o'qilishi yoki ko'chirilishi mumkin bo'lgan ommaviy axborot vositalarida aniq yozilmasligi kerak.

Juda murakkab tizimda bitta foydalanuvchi katta hajmdagi asosiy ma'lumotlar bilan ishlashi mumkin va ba'zida hatto asosiy ma'lumotlar uchun mini-ma'lumotlar bazalarini tashkil qilish kerak bo'ladi. Bunday ma'lumotlar bazalari foydalanilgan kalitlarni qabul qilish, saqlash, yozib olish va o'chirish uchun javobgardir.

Amaldagi kalitlar haqidagi har bir ma'lumot shifrlangan holda saqlanishi kerak. Kalit ma'lumotlarini shifrlaydigan kalitlarga asosiy kalitlar deyiladi. Har bir foydalanuvchi asosiy kalitlarni yoddan bilishi va ularni hech qanday moddiy muhitda saqlamasligi ma'qul.

Axborot xavfsizligini ta'minlashning juda muhim sharti - tizimdagi asosiy ma'lumotlarning davriy yangilanishi. Bunday holda, oddiy kalitlarni ham, asosiy kalitlarni ham qayta tayinlash kerak. Muhim tizimlarda asosiy ma'lumotlar har kuni yangilanishi kerak.

Asosiy ma'lumotlarni yangilash masalasi, shuningdek, kalitlarni boshqarishning uchinchi elementi - kalitlarni taqsimlash bilan bog'liq.

Kalitlarni taqsimlash. Kalitlarni taqsimlash kalitlarni boshqarishdagi eng muhim jarayondir. Buning uchun ikkita talab mavjud:

    taqsimotning samaradorligi va aniqligi;

    taqsimlangan kalitlarning maxfiyligi.

So'nggi paytlarda ochiq kalitli kriptotizimlardan foydalanishga siljish kuzatildi, bunda kalitlarni taqsimlash muammosi bartaraf etildi. Shunga qaramay, tizimda asosiy ma'lumotlarni tarqatish yangi samarali echimlarni talab qiladi.

Kalitlarni foydalanuvchilar o'rtasida taqsimlash ikki xil usulda amalga oshiriladi:

1 Bir yoki bir nechta asosiy tarqatish markazlarini yaratish orqali. Ushbu yondashuvning nochorligi shundaki, tarqatish markazi kimga va qaysi kalitlar tayinlanganligini biladi va bu tizimda aylanib yuruvchi barcha xabarlarni o'qish imkonini beradi. Potentsial suiiste'mollik himoyaga sezilarli ta'sir qiladi.

2 Tizim foydalanuvchilari o'rtasida kalitlarni to'g'ridan-to'g'ri almashish. Bunday holda, vazifa sub'ektlarni ishonchli tarzda tasdiqlashdir.

Ikkala holatda ham aloqa seansining haqiqiyligi kafolatlanishi kerak. Bunga ikki yo'l bilan erishish mumkin:

1 So'rov-javob mexanizmi, bu quyidagicha. Agar A foydalanuvchisi B foydalanuvchidan olgan xabarlari yolg'on emasligiga ishonch hosil qilishni istasa, u B ga yuborilgan xabarga oldindan aytib bo'lmaydigan elementni (so'rovni) kiritadi. Javob berayotganda B foydalanuvchisi ushbu elementda ba'zi amallarni bajarishi kerak (masalan, 1 qo'shing). Buni oldindan qilish mumkin emas, chunki so'rovda qanday tasodifiy raqam kelishi noma'lum. Harakatlar natijalari bilan javob olgandan so'ng, foydalanuvchi A seansning haqiqiyligiga ishonch hosil qilishi mumkin. Ushbu usulning kamchiliklari so'rov va javob o'rtasida murakkab bo'lsa-da, naqshlarni o'rnatish qobiliyatidir.

2 Vaqtni belgilash mexanizmi. Bu har bir xabar uchun vaqt tamg'asini nazarda tutadi. Bunday holda, tizimning har bir foydalanuvchisi qabul qilingan xabar qanchalik "eski" ekanligini bilishi mumkin.

Ikkala holatda ham javob tajovuzkor tomonidan yuborilmasligi va vaqt tamg'asi o'zgarmasligini ta'minlash uchun shifrlashdan foydalanish kerak.

Vaqt belgilaridan foydalanish sessiyani autentifikatsiya qilish uchun qabul qilinadigan vaqt oralig'i muammosini keltirib chiqaradi. Axir, vaqt tamg'asi bo'lgan xabarni, qoida tariqasida, bir zumda uzatib bo'lmaydi. Bundan tashqari, qabul qiluvchi va jo'natuvchining kompyuter soatlarini mukammal sinxronlash mumkin emas.

Ochiq kalitli kriptotizimlar bir xil RSA algoritmi yordamida kalit almashinuvi uchun ishlatilishi mumkin.

Ammo Diffie-Hellman algoritmi juda samarali bo'lib chiqdi, bu ikki foydalanuvchiga kalitni vositachilarsiz almashish imkonini beradi, keyinchalik undan simmetrik shifrlash uchun foydalanish mumkin.

Diffie-Hellman algoritmi. Diffie va Hellman ochiq kalitli kriptografik tizimlarni yaratish uchun diskret eksponentsiya funksiyasini taklif qildilar.

Bu holda o'zgartirishning qaytarilmasligi p elementlardan tashkil topgan cheklangan Galois maydonida eksponensial funktsiyani hisoblash juda oson ekanligi bilan ta'minlanadi ( p- yoki tub son yoki istalgan darajada tub son). Bunday sohalarda logarifmlarni hisoblash ancha mashaqqatli operatsiya hisoblanadi.

Ma'lumot almashish uchun birinchi foydalanuvchi tasodifiy raqamni tanlaydi x 1 dan 1 gacha bo'lgan butun sonlarning 1 teng ehtimoli p- 1. U bu raqamni sir tutadi va raqamni boshqa foydalanuvchiga yuboradi y 1 =, bu erda a - Galua maydonining qo'zg'almas elementi Gf(p), bu p bilan birgalikda foydalanuvchilar o'rtasida oldindan taqsimlanadi.

Ikkinchi foydalanuvchi ham xuddi shunday qiladi, ishlab chiqaradi x 2 va hisoblash y 2, uni birinchi foydalanuvchiga yuborish. Natijada, ikkalasi ham umumiy maxfiy kalitni hisoblashlari mumkin. k 12 =
.

Hisoblash uchun k 12, birinchi foydalanuvchi o'rnatadi y 2 quvvatga x 1 va ga bo'lishning qolgan qismini topadi p... Ikkinchi foydalanuvchi ham xuddi shunday qiladi, faqat foydalanadi y 1 va x 2. Shunday qilib, ikkala foydalanuvchi ham umumiy kalitga ega k 12, bu ma'lumotni an'anaviy algoritmlar bilan shifrlash uchun ishlatilishi mumkin. RSA algoritmidan farqli o'laroq, bu algoritm ma'lumotni o'zi shifrlashga imkon bermaydi.

Bilmasdan x 1 va x 2, tajovuzkor hisoblashga harakat qilishi mumkin k 12 bilish faqat ushlab oldi y 1 va y 2. Ushbu muammoning diskret logarifmni hisoblash muammosiga ekvivalentligi ochiq kalit tizimlarida asosiy va ochiq savol hisoblanadi. Hozircha hech qanday oddiy yechim topilmadi. Shunday qilib, agar 1000 bitli tub sonlarni to'g'ridan-to'g'ri o'zgartirish uchun 2000 ta operatsiya kerak bo'lsa, teskari o'zgartirish uchun (Galua maydonida logarifmni hisoblash) taxminan 1030 ta operatsiya kerak bo'ladi.

Ko'rib turganingizdek, Diffie-Hellman algoritmining barcha soddaligi uchun uning RSA tizimiga nisbatan kamchiligi kalitni ochishning murakkabligi uchun kafolatlangan pastki chegaraning yo'qligi hisoblanadi.

Bundan tashqari, tavsiflangan algoritm yashirin kalitlarni uzatish muammosidan qochsa ham, autentifikatsiya zarurati saqlanib qolmoqda. Qo'shimcha mablag'larsiz foydalanuvchilardan biri o'ziga kerakli foydalanuvchi bilan kalit almashganiga ishonch hosil qila olmaydi.

Kalit tarqatish protokoli(kalitlarni o'rnatish protokoli) kriptografik protokol bo'lib, uning davomida umumiy sir ikki yoki undan ortiq tomonlarga keyinchalik kriptografik maqsadlarda foydalanish uchun taqdim etiladi.

Kalit tarqatish protokollari ikki sinfga bo'linadi:

    Asosiy transport protokollari;

    Kalit almashinuvi protokollari.

Asosiy transport protokollari(kalitlarni tashish) - bir ishtirokchi sirni yaratadigan yoki boshqa yo'l bilan oladigan va uni boshqa ishtirokchilarga xavfsiz tarzda uzatadigan kalitlarni tarqatish protokollari.

Kalit almashinuvi protokollari(asosiy kelishuv, kalit almashinuvi) - asosiy tarqatish protokollari bo'lib, ularda umumiy sir ikki yoki undan ortiq ishtirokchilar tomonidan ularning har biri (yoki ular bilan bog'liq) qo'shgan ma'lumotlarning funktsiyasi sifatida yaratiladi, shuning uchun (ideal holda) boshqa hech qanday tomon yo'q. ularning umumiy sirini oldindan belgilashi mumkin.

Kalit tarqatish protokollarining ikkita qo'shimcha shakli mavjud. Protokolning o'tgan sessiyalarida yaratilgan kalitlardan qat'i nazar, protokolda butunlay yangi kalit yaratilgan bo'lsa, protokol kalitni yangilashni amalga oshiradi. Agar kriptotizim ishtirokchilarining mavjud kalitlaridan yangi kalit “olinsa” protokol kalitni chiqarishni amalga oshiradi.

Kalitlarni tarqatish protokollarining asosiy xususiyatlariga kalit autentifikatsiyasi, kalitni tekshirish va aniq kalit autentifikatsiyasi kiradi.

(Bevosita) kalit autentifikatsiyasi(yashirin kalitni autentifikatsiya qilish) - bir protokol ishtirokchisi protokolda olingan maxfiy kalitlarga maxsus identifikatsiya qilingan ikkinchi protokol ishtirokchisidan (va, ehtimol, ishonch markazidan) boshqa hech bir tomon kira olmasligiga ishonch hosil qiladigan xususiyat. Ikkinchi ishtirokchi kalitga haqiqatda kirish huquqiga ega ekanligiga kafolat yo'q, lekin undan boshqa hech kim uni ololmadi. Yashirin kalit autentifikatsiyasi boshqa tomonning kalitga haqiqiy egaligidan mustaqil va boshqa tomondan hech qanday harakat talab etmaydi.

Kalitni tasdiqlash(kalitni tasdiqlash) - protokolning bir ishtirokchisi boshqa ishtirokchi (ehtimol noma'lum) protokolda olingan maxfiy kalitlarga haqiqatan ham ega ekanligiga ishonch hosil qiladigan xususiyatdir.

Aniq kalit autentifikatsiyasi(aniq kalitni autentifikatsiya qilish) - bu (yashirin) kalit autentifikatsiyasi va kalitni tekshirish bir vaqtning o'zida amalga oshirilganda bajariladigan xususiyat.

    1. Simmetrik kalitlar bo'yicha Needham-Schroeder protokoli

Ushbu protokol ishonchli organlardan foydalangan holda ko'plab kalitlarni tarqatish protokollariga asoslanadi. Ushbu protokolning ikki turi mavjud:

    Simmetrik kalitlar bo'yicha Needham-Schroeder protokoli;

    Asimmetrik kalitlar bo'yicha Needham-Schroeder protokoli.

Simmetrik kalit protokoli quyidagicha ishlaydi:

Dastlabki bosqich:

Kalit boshqaruvi

Muayyan IC uchun mos kriptografik tizimni tanlashdan tashqari, kalitlarni boshqarish muhim masaladir. Kriptotizimning o'zi qanchalik murakkab va ishonchli bo'lmasin, u kalitlardan foydalanishga asoslangan. Agar ikki foydalanuvchi o'rtasida maxfiy ma'lumotlar almashinuvini ta'minlash uchun kalit almashish jarayoni ahamiyatsiz bo'lsa, foydalanuvchilar soni o'nlab va yuzlab bo'lgan ISda kalitlarni boshqarish jiddiy muammo hisoblanadi.

ostida asosiy ma'lumotlar ISda ishlaydigan barcha kalitlar to'plami tushuniladi. Agar asosiy ma'lumotlarning etarlicha ishonchli nazorati ta'minlanmasa, tajovuzkor uni egallab olgan holda barcha ma'lumotlarga cheksiz kirish huquqiga ega bo'ladi.

Kalit boshqaruvi- uchta elementni o'z ichiga olgan axborot jarayoni:

* kalitlarni yaratish;

* kalitlarning to'planishi;

* kalitlarni taqsimlash.

Keling, ATda asosiy ma'lumotlar xavfsizligini ta'minlash uchun ularni qanday amalga oshirish kerakligini ko'rib chiqaylik.

Kalitlarni yaratish

Kriptografik usullar haqida suhbatning boshida, ularni eslab qolish oson bo'lishi uchun tasodifiy bo'lmagan kalitlardan foydalanmaslik kerakligi aytilgan edi. Seriyali IClar tasodifiy kalitlarni yaratish uchun maxsus apparat va dasturiy ta'minot usullaridan foydalanadi. Qoida tariqasida, PSC sensorlari ishlatiladi. Biroq, ularning avlodining tasodifiy darajasi etarlicha yuqori bo'lishi kerak. Ideal generatorlar "tabiiy" tasodifiy jarayonlarga asoslangan qurilmalardir. Misol uchun, asoslangan kalit avlod seriyali namunalari bor edi oq radio shovqini... Yana bir tasodifiy matematik ob'ekt o'nli kasrlar va ratsional sonlar, masalan yoki e standart matematik usullar yordamida hisoblab chiqiladi.

O'rtacha xavfsizlik talablari bo'lgan ISlarda PRNG ni joriy vaqt va (yoki) foydalanuvchi tomonidan kiritilgan raqamning murakkab funktsiyasi sifatida hisoblaydigan dasturiy ta'minot kalitlari generatorlari juda maqbuldir.

Kalitlarni to'plash

ostida kalitlarning to'planishi ularni saqlash, hisobga olish va utilizatsiya qilishni tashkil qilishni anglatadi.

Kalit tajovuzkor uchun maxfiy ma'lumotlarga yo'l ochadigan eng jozibali ob'ekt bo'lganligi sababli, kalitlarni to'plash masalalariga alohida e'tibor berish kerak.

Maxfiy kalitlar hech qachon o'qilishi yoki ko'chirilishi mumkin bo'lgan ommaviy axborot vositalarida aniq yozilmasligi kerak.

Juda murakkab ATda bitta foydalanuvchi katta hajmdagi asosiy ma'lumotlar bilan ishlashi mumkin va ba'zida hatto asosiy ma'lumotlar uchun mini-ma'lumotlar bazalarini tashkil qilish kerak bo'ladi. Bunday ma'lumotlar bazalari foydalanilgan kalitlarni qabul qilish, saqlash, yozib olish va o'chirish uchun javobgardir.

Shunday qilib, ishlatiladigan kalitlar haqidagi har bir ma'lumot shifrlangan shaklda saqlanishi kerak. Kalit ma'lumotlarini shifrlaydigan kalitlar deyiladi asosiy kalitlari... Har bir foydalanuvchi asosiy kalitlarni yoddan bilishi va ularni hech qanday moddiy muhitda saqlamasligi ma'qul.

Axborot xavfsizligini ta'minlashning juda muhim sharti ATdagi asosiy ma'lumotlarni davriy yangilashdir. Bunday holda, oddiy kalitlarni ham, asosiy kalitlarni ham qayta tayinlash kerak. Ayniqsa mas'uliyatli axborot tizimlarida asosiy ma'lumotlarni har kuni yangilab turish tavsiya etiladi.

Asosiy ma'lumotlarni yangilash masalasi, shuningdek, kalitlarni boshqarishning uchinchi elementi - kalitlarni taqsimlash bilan bog'liq.

Kalit taqsimoti

Kalitlarni taqsimlash kalitlarni boshqarishdagi eng muhim jarayondir. Uning ikkita talabi bor:
  1. Tarqatishning samaradorligi va aniqligi
  2. Umumiy kalitlarning maxfiyligi.
So'nggi paytlarda ochiq kalitli kriptotizimlardan foydalanishga sezilarli siljish kuzatildi, bunda kalitlarni taqsimlash muammosi yo'qoladi. Shunga qaramay, ATda asosiy ma'lumotlarni tarqatish yangi samarali echimlarni talab qiladi.

Kalitlarni foydalanuvchilar o'rtasida taqsimlash ikki xil usulda amalga oshiriladi:

  1. Bir yoki bir nechta asosiy tarqatish markazlarini yaratish orqali. Ushbu yondashuvning kamchiligi shundaki, tarqatish markazi kimga va qaysi kalitlar tayinlanganligini biladi va bu ISda aylanib yuradigan barcha xabarlarni o'qish imkonini beradi. Potentsial suiiste'mollik himoyaga sezilarli ta'sir qiladi.
  2. To'g'ridan-to'g'ri kalit almashinuvi axborot tizimi foydalanuvchilari o'rtasida.
Bunday holda, vazifa sub'ektlarni ishonchli tarzda autentifikatsiya qilishdir.

Ikkala holatda ham aloqa seansining haqiqiyligi kafolatlanishi kerak. Bunga ikki yo'l bilan erishish mumkin:

  1. So'rov-javob mexanizmi, bu quyidagicha. Agar A foydalanuvchisi B dan olgan xabarlari yolg'on emasligiga ishonch hosil qilishni istasa, u B ga yuborilgan xabarga oldindan aytib bo'lmaydigan elementni (so'rovni) kiritadi. Javob berayotganda B foydalanuvchisi ushbu elementda ba'zi operatsiyalarni bajarishi kerak (masalan, 1 qo'shing). Buni oldindan qilish mumkin emas, chunki so'rovda qanday tasodifiy raqam olinganligi noma'lum. Harakatlar natijalari bilan javob olgandan so'ng, foydalanuvchi A seansning haqiqiy ekanligiga ishonch hosil qilishi mumkin. Ushbu usulning kamchiliklari so'rov va javob o'rtasida murakkab bo'lsa-da, naqsh o'rnatish imkoniyatidir.
  2. Vaqt tamg'asi mexanizmi ("vaqt tamg'asi"). Bu har bir xabar uchun vaqt belgilashni anglatadi. Bunda har bir IS foydalanuvchisi qabul qilingan xabarning qanchalik “eski” ekanligini bilishi mumkin.
Ikkala holatda ham javob tajovuzkor tomonidan yuborilmagani va vaqt tamg'asi o'zgartirilmaganligiga ishonch hosil qilish uchun shifrlashdan foydalanish kerak.

Vaqt belgilaridan foydalanganda, sessiyaning haqiqiyligini tekshirish uchun qabul qilinadigan vaqtni kechiktirish oralig'ida muammo mavjud. Axir, printsipial ravishda "vaqt tamg'asi" bo'lgan xabarni bir zumda uzatib bo'lmaydi. Bundan tashqari, qabul qiluvchi va jo'natuvchining kompyuter soatlarini mutlaqo sinxronlash mumkin emas. Shubhali deb hisoblash uchun "shtamp" ning kechikishi nima.

Shuning uchun, haqiqiy IClarda, masalan, kredit karta to'lov tizimlarida, bu autentifikatsiya qilish va qalbakilashtirishdan himoya qilishning ikkinchi mexanizmi hisoblanadi. Amaldagi interval birdan bir necha daqiqagacha. Elektron pullarni o'g'irlashning ko'plab ma'lum usullari pulni olib qo'yish bo'yicha soxta so'rovlar bilan ushbu bo'shliqqa "yopish" ga asoslangan.

Kalit almashinuvi uchun bir xil RSA algoritmidan foydalangan holda ochiq kalitli kriptotizimlardan foydalanish mumkin.

Ammo Diffie-Hellman algoritmi juda samarali bo'lib chiqdi, bu ikki foydalanuvchiga kalitni vositachilarsiz almashish imkonini beradi, keyinchalik undan simmetrik shifrlash uchun foydalanish mumkin.

Diffie-Hellman algoritmi

Diffie va Hellman ochiq kalitli kriptografik tizimlarni yaratishni taklif qilishdi diskret daraja ko'rsatish funktsiyasi.

Bu holda o'zgartirishning qaytarilmasligi shundan iboratki, cheklangan Galois maydonida eksponensial funktsiyani hisoblash juda oson ekanligi bilan ta'minlanadi. p elementlar. ( p- tub son yoki istalgan darajada oddiy). Bunday sohalarda logarifmlarni hisoblash ancha mashaqqatli operatsiya hisoblanadi.

Agar y= x, 1<x<p-1, bu erda maydonning qo'zg'almas elementi GF (p), keyin x= mana g y yuqorida GF (p)... ega x, hisoblash oson y... Buning uchun 2 ln kerak bo'ladi ( x+y) ko'paytirish amallari.

Teskari hisoblash muammosi x dan y etarlicha qiyin bo'ladi. Agar p etarlicha to'g'ri tanlangan bo'lsa, logarifmni chiqarish uchun proportsional hisob-kitoblar talab qilinadi

L (p) = Exp((ln p ln ln p) 0.5 }

Ma'lumot almashish uchun birinchi foydalanuvchi tasodifiy raqamni tanlaydi x 1, butun sonlarning teng ehtimoli 1 ... p-1. U bu raqamni sir saqlaydi va raqamni boshqa foydalanuvchiga yuboradi

y 1 = x mod p

Ikkinchi foydalanuvchi ham xuddi shunday harakat qiladi, hosil qiladi x 2 va hisoblash y 2 birinchi foydalanuvchiga yuborish orqali. Natijada ular hisoblashlari mumkin k 12 = x 1 x 2 mod p.

Hisoblash uchun k 12, birinchi foydalanuvchi quradi y 2 quvvatga x 1 . Ikkinchi foydalanuvchi ham xuddi shunday qiladi. Shunday qilib, ikkala foydalanuvchi ham umumiy kalitga ega. k 12, bu ma'lumotni an'anaviy algoritmlar bilan shifrlash uchun ishlatilishi mumkin. RSA algoritmidan farqli o'laroq, bu algoritm ma'lumotni o'zi shifrlashga imkon bermaydi.

Bilmasdan x 1 va x 2, tajovuzkor hisoblashga harakat qilishi mumkin k 12 faqat tutilganlarni bilish y 1 va y 2. Ushbu muammoning disket jurnalini hisoblash muammosiga ekvivalentligi ochiq kalitli tizimlarda asosiy va ochiq savol hisoblanadi. Hozircha hech qanday oddiy yechim topilmadi. Shunday qilib, agar 1000 bitli tub sonlarni to'g'ridan-to'g'ri o'zgartirish uchun 2000 ta operatsiya kerak bo'lsa, teskari o'zgartirish uchun (Galua maydonida logarifmni hisoblash) - taxminan 10 30 ta operatsiya kerak bo'ladi.

Ko'rib turganingizdek, Diffie-Hellman algoritmining barcha soddaligi uchun uning RSA tizimiga nisbatan ikkinchi kamchiligi - kalit ochilishining murakkabligi uchun kafolatlangan pastki chegaraning yo'qligi.

Bundan tashqari, tavsiflangan algoritm maxfiy kalitlarni uzatish muammosini chetlab o'tishga imkon bersa-da, autentifikatsiya zarurati saqlanib qolmoqda. Qo'shimcha mablag'larsiz foydalanuvchilardan biri o'ziga kerakli foydalanuvchi bilan kalit almashganiga ishonch hosil qila olmaydi. Bu holatda taqlid qilish xavfi saqlanib qoladi.

Kalitlarni taqsimlash haqida aytilganlarni umumlashtirish sifatida quyidagilarni aytish kerak. Kalitlarni boshqarish vazifasi quyidagi asosiy tarqatish protokolini topishga qisqartiriladi:

* Kalitlarni tarqatish markazidan rad etish imkoniyati;

* sessiya ishtirokchilarining haqiqiyligini o'zaro tasdiqlash;

* Seansning haqiqiyligini so'rov-javob mexanizmi orqali tasdiqlash, buning uchun dasturiy yoki texnik vositalardan foydalanish;

* kalit almashinuvi uchun minimal xabarlar sonidan foydalanish.

Ochiq kalitlar tarqatilgandan va foydalanishga topshirilgandan so'ng, u xavfsiz aloqaning haqiqiy tashkilotiga aylanadi, bu xabarlarni yoki ikkalasini birgalikda ushlash yoki buzish imkoniyatiga yo'l qo'ymaydi. Biroq, ba'zi foydalanuvchilar ochiq kalitli shifrlashdan faqat istisno hollarda foydalanishni tanlaydilar, chunki bu shifrlash kontekstida ma'lumotlarni uzatish tezligi nisbatan sekin. Shuning uchun ochiq kalitni shifrlash ko'proq an'anaviy shifrlash uchun ishlatiladigan maxfiy kalitlarni tarqatish vositasi sifatida ko'rib chiqilishi kerak.

Yashirin kalitlarni Oson TARQATISH

Juda oddiy diagramma rasmda ko'rsatilgan. 11.4.

Agar tashabbuskor A foydalanuvchi bilan ma'lumot almashish niyatida bo'lsa V, buning uchun quyidagi tartib qabul qilinadi.

Guruch. 11.4.

  • 1. A tomon ochiq/maxfiy kalitlar juftligini (KU a, KR a) hosil qiladi va B partiyaga yuboruvchining KU a va IDa ni o‘z ichiga olgan xabarni yuboradi.
  • 2. Qabul qiluvchi B maxfiy kalit K y hosil qiladi va bu kalitni A inisiatorning KU a ochiq kaliti bilan shifrlangan A xabarining tashabbuskoriga uzatadi.
  • 3. A foydalanuvchi maxfiy kalitni tiklash uchun D |a ^] ni hisoblaydi. Bu xabarni faqat A foydalanuvchisi shifrini ochishi mumkinligi sababli, faqat A va B aloqa ishtirokchilari ma'nosini bilishadi K s.
  • 4. A ishtirokchisi KR a kalitini, B ishtirokchisi esa KU a kalitini uloqtiradi.

Ikkala tomon ham A va B endi an'anaviy seans kaliti shifrlashdan foydalanishi mumkin. K s. Oddiyligiga qaramay, ushbu protokol juda jozibali. Aloqa boshlanishidan oldin hech qanday kalit mavjud emas va aloqa tugagandan keyin hech qanday kalit qolmaydi. Shu sababli, kalitning murosaga kelish xavfi minimaldir. Shu bilan birga, aloqa tinglashdan himoyalangan.

Ushbu protokol faol hujumlarga nisbatan zaifdir. Agar dushman E aloqa kanaliga kirib borish qobiliyatiga ega bo'lsa, u holda u aniqlanmasdan aloqani quyidagicha buzishi mumkin.

  • 5. Ishtirokchi A ochiq/maxfiy kalitlar juftligini (KU a, KR „) hosil qiladi va B tomon KU a va joʻnatuvchining SHA identifikatorini oʻz ichiga olgan xabarni yuboradi.
  • 6. Dushman E xabarni tutib oladi, o‘zining ochiq/maxfiy kalit juftligini (KU e, KR,) yaratadi va B adresatiga KU e || SH A ni o‘z ichiga olgan xabarni uzatadi.
  • 7. B maxfiy kalit K v hosil qiladi va EkiLK,] ni yuboradi.
  • 8. E raqib bu xabarni tutib oladi va D KRe] hisoblab, K v ni o'rganadi.
  • 9. E raqib A ishtirokchisiga Ekia xabarini uzatadi [Ku | -

Natijada, A va B ishtirokchilari K 4 ni bilishadi, lekin ular K l dushman Ega ham ma'lum ekanligiga shubha qilmaydilar. Shuning uchun A va B tomonlar xabar almashishni boshlashlari mumkin. K s. Raqib E endi aloqa kanaliga faol aralashmaydi, shunchaki xabarlarni ushlab oladi. Bilish K s, u har qanday xabarning shifrini ochishga qodir bo'ladi va A va B ishtirokchilari muammo borligiga shubha qilmaydilar. Shunday qilib, bu oddiy protokol passiv tinglash yagona mumkin bo'lgan tahdid bo'lganda foydali bo'ladi.

Simmetrik shifrlashda maxfiy ma'lumotlarni almashishni istagan ikki tomon bir xil kalitga ega bo'lishi kerak. Kalitni o'zgartirish chastotasi etarlicha katta bo'lishi kerak, shunda raqib kalitni to'liq qo'pol kuch bilan ishlatish uchun etarli vaqtga ega bo'lmaydi. Demak, har qanday kriptotizimning kuchi asosan texnologiyaga bog'liq kalit taqsimoti... Bu atama kalitni boshqa hech kim josuslik qila olmaydigan yoki o'zgartira olmaydigan tarzda ma'lumot almashishni xohlaydigan ikki tomonga o'tkazishni anglatadi. Ikki ishtirokchi A va B uchun kalit taqsimoti quyidagi usullardan biri bilan amalga oshirilishi mumkin.

  1. Kalit A tomonidan yaratilishi va jismoniy ravishda B ga o'tkazilishi mumkin.
  2. Uchinchi tomon kalit yaratishi va uni jismoniy ravishda A va B ga o'tkazishi mumkin.
  3. A va B oldindan yaratilgan va qisqa muddatli kalitga ega, bir ishtirokchi shifrlash uchun eski kalitdan foydalanib, yangi kalitni boshqasiga o'tkazishi mumkin.
  4. Agar A va B uchinchi tomon C bilan xavfsiz ulanishga ega bo'lsa, C kalitni ushbu xavfsiz kanal orqali A va B ga uzatishi mumkin.

Birinchi va ikkinchi usullar qo'lda deb ataladi kalit taqsimoti... Bu eng ishonchli usullar kalit taqsimoti, ammo ko'p hollarda ulardan foydalanish noqulay va hatto imkonsizdir. Tarqalgan tizimda har qanday xost yoki server ko'plab autentifikatsiya qilingan xostlar va serverlar bilan maxfiy ma'lumotlarni almashish imkoniyatiga ega bo'lishi kerak. Shunday qilib, har bir xost dinamik ravishda saqlanadigan kalitlar to'plamiga ega bo'lishi kerak. Muammo, ayniqsa, katta taqsimlangan tizimlarda dolzarbdir.

Kerakli kalitlar soni muloqot qilishi kerak bo'lgan ishtirokchilar soniga bog'liq. Agar shifrlash tarmoq yoki IP darajasida amalga oshirilsa, tarmoqdagi har bir xost juftligi uchun kalit talab qilinadi. Shunday qilib, agar N ta xost mavjud bo'lsa, unda kerakli kalitlar soni / 2 dir. Agar shifrlash dastur darajasida amalga oshirilsa, u holda kalit har bir juft dastur jarayonlari uchun kerak bo'ladi, ular xostlardan ancha ko'p.

Uchinchi kalit tarqatish usuli har qanday darajada qo'llanilishi mumkin. protokollar to'plami, lekin agar tajovuzkor bitta kalitga kirish huquqiga ega bo'lsa, u holda kalitlarning butun ketma-ketligi oshkor qilinadi. Bundan tashqari, ko'p sonli kalitlarni dastlabki taqsimlash hali ham bajarilishi kerak.

Shuning uchun, katta hajmda avtomatlashtirilgan tizimlar to'rtinchi usulning turli xil variantlari keng qo'llaniladi. Ushbu sxema deb atalmish mavjudligini nazarda tutadi kalitlarni tarqatish markazi(Kalitlarni tarqatish markazi - KDC), xostlar, jarayonlar va ilovalar uchun kalitlarni tarqatish uchun javobgardir. Har bir ishtirokchi KDC bilan noyob kalitni bo'lishishi kerak.

Foydalanish kalitlarni tarqatish markazi kalitlar ierarxiyasidan foydalanishga asoslangan. Kamida ikkita turdagi kalitlardan foydalaniladi: asosiy kalitlar va seans kalitlari.

Yakuniy tizimlar o'rtasida maxfiy aloqani ta'minlash uchun vaqtinchalik kalit chaqiriladi seans kaliti... Odatda seans kaliti transport aloqasini shifrlash uchun ishlatiladi va keyin yo'q qilinadi. Har bir seans kaliti tarmoq orqali olinishi kerak kalitlarni tarqatish markazi... Seans kalitlari kalitlarni tarqatish markazi va oxirgi tizim o'rtasida taqsimlanadigan asosiy kalit yordamida shifrlangan holda uzatiladi.

Ushbu asosiy kalitlar ham xavfsiz tarzda tarqatilishi kerak. Biroq, bu qo'lda tarqatishni talab qiladigan kalitlar sonini sezilarli darajada kamaytiradi. Agar ulanish o'rnatmoqchi bo'lgan N ishtirokchi bo'lsa, har safar / 2 seans kalitlari kerak bo'ladi. Lekin faqat N talab qilinadi

Sizga maqola yoqdimi? Do'stlar bilan bo'lishish uchun: