§4.2. Autentifikasiyalash usullari. Ko’pmartalik parollar bo’yicha autentifikasiyalash. Ma’lumki, kompyuter tizimida autentifikasiyalash usullaridan biri foydalanuvchi tomonidan kiritiladigan «login» (foydalanuvchining qayd qilingan ismi) va parol (faqatgina foydalanuvchiga ma’lum bo’lgan qandaydir maxfiy axborot) ni kiritishdan iborat. Bu ikalasi birgalikda foydalanuvchining identifikatorini tashkil qiladi. Foydalanuvchining haqiqiy login-parol jo’ftligi maxsus ma’lumotlar bazasida saqlanadi.
Oddiy autentifikasiyalash quyidagi umumiy algoritmga ega:
Sub’ekt tizimga kirish uchun ruxsat so’rash maqsadida o’zining shaxsiy identifikatorini kiritadi.
Kiritilgan ma’lumotlar autentifikasiyalash serveriga kelib tushadi, bu erda u maxsus ma’lumotlar bazasida saqlanayotgan shaxsiy identifikator bilan solishtiriladi.
Maxsus ma’lumotlar bazasida saqlanayotgan shaxsiy identifikator bilan kiritilgan ma’lumotlar bir xil bo’lsa, autentifikasiyalash muvaffaqiyatli o’tkaziladi va sub’ektga kompyuter tizimiga kirishga ruxsat beriladi. Aks holda sub’ekt yana birinchi qadamdagi harakatni qaytadan boshlashi lozim bo’ladi.
Sub’ekt tomonidan kiritilgan parol kompyuter tarmog’i orqali ikki xil usulda uzatilishi mumkin: a) shifrlanmasdan, ya’ni parolli autentifikasiyalash protokoli asosida ochiq ko’rinishda uzatilishi. b) shifrlash yoki bir yo’nalishli xesh-funksiya yordamida himoyalangan holda tarmoqqa uzatiladi.
Ko’pmartalik parollarni himoyalanganligi. Parollarni saqlash va uzatishda maksimal himoyalanganlik nuqtai nazaridan bir yo’nalishli funksiyalardan foydalangan ma’qul. Shu maqsadda kriptografik bardoshli xesh-funksiyalardan foydalaniladi. Bu holda serverda parolni obrazi (etaloni) saqlanadi. Tizimga parol kelib tushgandan keyin tizim bu parol uchun xesh-almashtirish bajaradi va hosil bo’lgan xesh qiymatni serverda saqlanayotgan etaloni bilan solishtiradi. Agar ular bir xil bo’lsa, parollar ustma-ust tushadi. Parolni server xotirasidagi etaloni buzg’unchini qo’liga tushib qolgan taqdirda ham u parolni o’zini hisoblab topishi amalda mumkin emas. Buni quyidagicha izohlash mumkin.
Parollar saqlanadigan ma’lumotlar bazasiga ega bo’lgan buzg’unchi P foydalanuvchining parolini bilolmaydi. O’zini P foydalanuvchi sifatida tizimga taqdim qilishi uchun h(x*)=h(x) kolliziyani ta’minlovchi x* ni aniqlashi lozim bo’ladi. Odatda parollarni xeshlashda kriptobardoshli bo’lgan xesh funksiyalardan foydalaniladi. Ammo, xesh qiymat fiksirlangan uzunlikka ega ekanligi e’tiborga olinsa, buzg’unchi yetarlicha katta vaqt oralig’ida katta hisoblash resurslari vositasida x parollarni saralash yo’li bilan h(x) xesh qiymat kolliziyalar jadvalini tuzish imkoniga ega bo’lishligini payqash mumkin. Shuningdek, ko’p ishlatiladigan ayrim xesh-funksiyalarning kolliziyalar jadvali internetda ham bo’lishi mumkin. Shu sababli kolliziyalar asosidagi hujumlarga qarshi turish uchun hozirgi kunda quyidagi usullar amaliyotda keng qo’llanilmoqda.
Parollarni «tuzlash» usuli. Xeshlashda parolga qo’shiladigan c bul vektori tuz deyiladi. Kompyuter tizimidagi parollar bazasida foydalanuvchi identifikatori, h(c,x) va c saqlanadi. Buzg’unchi h(x*)=h(c,x) tenglikni bajaruvchi x* kolliziyani topsa-da, ammo u x* kolliziyadan parolni aniqlay olmaydi.
Bir martalik parollardan foydalanish usuli. Har bir foydalanuvchi o’zining parollar ro’yxatini tuzadi. Ushbu parollarning har biri bir marta ishlatilganidan so’ng yo’qotiladi.
Ko’pmartalik parollardan foydalanishda ham bir qator kamchiliklar mavjud. Birinchidan, etalonli parol yoki uning xeshlashtirilgan obrazi autentifikasiyalash serverida saqlanadi. Ko’p hollarda parolni saqlash kriptografik almashtirishlarsiz, tizimli fayllarda saqlanadi. Unga kirish yo’lini topgan buzg’unchilar maxfiy axborotlarga ega bo’lishlari mumkin.
Ikkinchidan, sub’ekt ko’pmartalik parolni yodda saqlab yurish (yozib yurish) ga majbur bo’ladi. Bunday holatda buzg’unchi parolga osongina ega bo’lishi mumkin. Bundan tashqari sub’ektni o’zi parolni tanlaydigan bo’lsa, tizimning himoyalanganligi sezilarli darajada zaiflashadi. Ko’p hollarda parolni tuzishda lug’atlardagi ayrim so’zlardan yoki ularni kombinasiyalaridan foydalanishlari mumkin. Buzg’unchida vaqt etarlicha bo’lsa, u oddiy tanlash usulidan foydalanib, parolni aniqlashi mumkin. Tasodifiy parollardan yoki sub’ekt tanlagan parolini ishlatish muddatini qisqaroq bo’lishi, ya’ni vaqt o’tishi bilan parollarni o’zgartirib turishdan foydalanish bunday muammolardan qutulish chorasini yaratadi.
Bir martalik parol bo’yicha autentifikasiyalash. Buzg’unchi sub’ektning ko’pmartalik paroliga bir martagina ega bo’lib qolsa, u doimo maxfiy axborot olish imkoniyatiga ega bo’lib qoladi. Bu kamchilikdan bir martalik parol (OTP – One Time Password) ni qo’llash bilan qutulish mumkin. Bu usulni mohiyati Shundan iboratki, parol tizimga bir martagina kirish uchun yaroqli, keyingi safar tizimga kirish uchun yangi parol talab etiladi. Bir martalik parol bo’yicha autentifikasiyalash mexanizmi apparat va dasturlar bo’yicha ham realizasiya qilinishi mumkin.
Bir martalik paroldan foydalanish texnologiyasini quyidagilarga bo’lish mumkin:
Sub’ekt va tizim uchun umumiy bo’lgan psevdotasodifiy sonlar generatoridan foydalanish;
Sub’ekt va tizim uchun umumiy bo’lgan tasodifiy parollar bazasidan foydalanish.
Birinchi usulda sub’ekt va tizim uchun bir xil qiymatga ega bo’lgan psevdotasodifiy sonlar generatoridan foydalaniladi. Sub’ekt tomonidan generasiya qilingan parol birtomonlama funksiyadan ketma-ket foydalanish yoki tizim tomonidan beriladigan har bir yangi so’rovnoma vaqtida tizimga uzatilishi mumkin.
Ikkinchi usulda vaqtinchalik nishonlar dan foydalaniladi. Bu texnologiyaga misol sifatida SecurID ni keltirish mumkin. Unda autentifikasiyalash ma’lum bir vaqt oraliqlarida tasodifiy sonlarni generasiya qilishga asoslangan. Maxfiy kalit faqatgina tizim bazasida va sub’ektning apparat qurilmasida saqlanadi. Sub’ekt tizimga kirish uchun ruxsat so’ragan vaqtda undan PIN-kodni va ushbu vaqtda apparat qurilmasida ko’rinib turgan, tasodifiy generasiya qilingan sonni ko’rsatish talab qilinadi. Tizim kiritilgan PIN-kodni va sub’ektning bazadagi maxfiy kalitini taqqoslab, tizim bazasidagi maxfiy kalit va joriy vaqt asosida tasodifiy sonni generasiya qiladi. Undan keyin generasiya qilingan son va sub’ekt tomonidan kiritilgan sonni bir xilligi tizim tomonidan tekshiriladi.
Uchunchi usul sub’ekt va tizim uchun yagona parollar bazasiga va ular o’rtasidagi yuqorianiqlikdagisinxronizasiyalashga asoslangan. Har bir parol faqatgina bir martagina ishlatilishi mumkin. Shu sababli buzg’unchi sub’ekt tomonidan foydalanilgan parolga ega bo’lgan vaqtda parol yaroqsiz bo’lib qoladi.
Ko’p martalik parollardan foydalanishga nisbatan bir martalik parollar yuqori himoya darajasiga ega.