MD 5 XESH FUNKSIYASINING KRIPTOTAHLILI HAQIDA
Choriyev B. B. – O‘zR FVV YOXI
Ma’lumki, axborot muhofazasida xesh funksiyalarning o‘rni alohida ahamiyat kasb etadi. Xesh funksiya deb ixtiyoriy uzunlikdagi ma’lumotni biror fiksirlangan uzunlikdagi qiymatga o‘tkazuvchi funksiyaga aytiladi. Xesh funksiya ma’lumotning to‘laligini tekshirish masalasini yechish hamda elektron raqamli imzo bilan birgalikda ma’lumotni autentifikatsiyasi masalasini hal etilishini ta’minlaydi.
Axborot texnologiyalarining rivojlanib borishi axborot-kommunikatsiya tizimlarida axborotlar muhofazasining asosiy masalalarini hal qilishda qo‘llaniluvchi kriptografik vositalarni uzluksiz ravishda takomillashtirib borishni talab etadi. Jumladan, axborot-kommunikatsiya tizimlarida ma’lumotlarning muhofazasini ta’minlovchi kriptografik vositalar standartlari algoritmlari, xususan, kriptobardoshli xesh funksiyalar yaratish dolzarb ilmiy muammo hisoblanadi.
Xesh funksiyalar statistik tajribalarni o‘tkazishda, mantiqiy qurilmalarni tekshirishda, tez qidirib topish algoritmlarini tuzishda va ma’lumotlar bazasidagi ma’lumotlarning to‘laligini tekshirishda qo‘llaniladi. Masalan, har xil uzunlikdagi ma’lumotlarning katta ro‘yxatidan kerakli ma’lumotni tez qidirib topishda bu ma’lumotlarni bir-biri bilan taqqoslashdan ko‘ra, ularning nazorat yig‘indisi vazifasini bajaruvchi xesh qiymatlarini solishtirish qulayroqdir.
Kriptografiyada xesh funksiyalar quyidagi masalalarni hal qilish uchun ishlatiladi:
– ma’lumotni uzatishda yoki saqlashda uning to‘laligini nazorat qilish uchun;
– ma’lumot manbaini autentifikatsiya qilish uchun.
Ma’lumotni uzatishda yoki saqlashda uning to‘laligini nazorat qilish uchun har bir ma’lumotning xesh qiymati (bu xesh qiymat ma’lumotni autentifikatsiya qilish kodi yoki “imitovstavka” – 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 nazorat qiymati bilan solishtiradi. Agar taqqoslashda bu qiymatlar mos kelmasa, ma’lumot o‘zgarganligini bildiradi.
“Imitovstavka”lar hosil qilish uchun ishlatiladigan xesh funksiyalar nazorat yig‘indisidan farqli ravishda ma’lumotni saqlash va uzatishda ro‘y beradigan tasodifiy xatolarni topibgina qolmasdan, raqib tomonidan qilingan aktiv hujumlar to‘g‘risida ham ogohlantiradi. Raqib xesh qiymatni mustaqil o‘zi hisoblab topa olmasligi va muvaffaqiyatli holda imitatsiya qilishi yoki ma’lumotni o‘zgartira olmasligi uchun xesh funksiya raqibga ma’lum bo‘lmagan maxfiy kalitga ega bo‘lishi kerak. Bu kalit faqatgina ma’lumotni uzatuvchi va qabul qiluvchi tomonlarga ma’lum bo‘lishi kerak. Bunday xesh funksiyalarga kalitli xesh funksiyalar deyiladi.
Kalitli xesh funksiyalar yordamida hosil qilinadigan “imitovstavka”lar imitatsiya turidagi hujumlarda qalbaki ma’lumotlarni hosil qilishga va “o‘zgartirish” (substitution) turidagi hujumlarda uzatiladigan ma’lumotni modifikatsiya (modification) qilishga yo‘l qo‘ymaslik uchun ishlatiladi.
Ma’lumot manbaini autentifikatsiya qilish masalasi axborot-kommunikatsiya tizimining bir-biriga ishonmaydigan foydalanuvchilari o‘rtasida ma’lumot almashinuvida yuzaga keladi. Bu masalani hal qilishda ikkala tomon ham biladigan maxfiy kalitni qo‘llab bo‘lmaydi. Bu holatda ma’lumot manbaini autentifikatsiya qilishga imkon beradigan 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.
MD5 xesh funksiyasi algoritmi Massachusets texnologiya instituti professori Ronald Rivest tomonidan 1992-yilda ishlab chiqilgan. MD5 xesh funksiyasi asosan parollarni xeshlash uchun ishlatiladi. Bu holatda xesh funksiyadan kalit xesh qiymatini bilgan holda kalitni topib bo‘lmaslik sharti talab qilinadi. Hozirgi vaqtda MD5 xesh qiymatidan boshlang‘ich yoki ekvivalent kalitni topadigan algoritmlar mavjud.
MD5 xesh funksiyasining kriptobardoshsizligi haqidagi xabarlar 1993-yilda e’lon qilingan. 2004-yil 17-avgustda Shandong universiteti professori Vang Xiaoyun kolliziyani qidirish usuli mavjudligi haqida e’lon qildi.
Mavjud bo‘lgan barcha kalitlarni xesh qiymatlarini hisoblab jadvalga yozib chiqish va kerakli kalitni shu jadvaldan qidirish usuli orqali boshlang‘ich yoki ekvivalent kalitni topsa bo‘ladi, ammo bu usul juda katta xotira talab qiladi. Biroq, “Kamalak jadvali” (Rainbow table) usuli orqali xotirani tejash mumkin. Bu usulning mohiyati bir-biriga bog‘liq xesh qiymatlar zanjiri hosil qilishdan iborat. Bunda xesh qiymatni kalitlar to‘plamiga akslantiruvchi funksiyalar yaratiladi. Jadvalda faqat zanjirning boshi, ya’ni birinchi kalit va oxirida qurilgan funksiya natijasining xesh qiymati saqlanadi. Funksiyalardan qanchalik ko‘p foydalanilsa, xotiradan shuncha ko‘p tejaladi. Haddan tashqari ko‘p funksiyalardan foydalanish ham jadvaldan kalitni qidirishda juda ko‘p vaqtni olishi mumkin.
|