Xesh funktsiyalar ham simmetrik kriptotizim hisoblanadi va simmetrik blokli shifrlash kabi maʼlumotni xeshlashda bloklarga ajratadi. Odatda aksariyat xesh funktsiyalar uchun (masalan, MD5, SHA1, Tiger) blok uzunligi 64 baytga yoki 512 bitga teng. - Xesh funktsiyalar ham simmetrik kriptotizim hisoblanadi va simmetrik blokli shifrlash kabi maʼlumotni xeshlashda bloklarga ajratadi. Odatda aksariyat xesh funktsiyalar uchun (masalan, MD5, SHA1, Tiger) blok uzunligi 64 baytga yoki 512 bitga teng.
- HMAC tizimida kalit maʼlumotga quyidagicha biriktiriladi. Dastlab xesh funktsiyadagi blokning uzunligi baytlarda aniqlanadi. Masalan. MD5 xesh fukntsiyasida blok uzunligi 𝐵𝐵 = 64 baytga teng. Olingan kalit (𝐾𝐾) uzunligi ham blok uzunligiga olib kelinadi. Bunda 3 ta holat boʼlishi mumkin: (1) agar kalitning uzunligi 64 baytga teng boʼlsa, hech qanday oʼzgarish amalga oshirilmaydi, (2) agar kalitning uzunligi 64 dan kichik boʼlsa, u holda etmagan baytlar oʼrni nollar bilan toʼldiriladi, (3) agar kalit uzunligi blok uzunligidan katta boʼlsa, kalit dastlab xeshlanadi va hosil boʼlgan xesh qiymatning oʼng tomonidan blok uzunligiga yetguncha nollar bilan toʼldiriladi. Shu tariqa, kalit uzunligi blok uzunligiga moslashtiriladi.
- Quyidagi 𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖 va 𝑜𝑜𝑖𝑖𝑖𝑖𝑖𝑖 oʼzgaruvchilar quyidagicha hosil qilinadi:
- 𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖 = 0𝑥𝑥36 ni 𝐵𝐵 marta takrorlash natijasida
- 𝑜𝑜𝑖𝑖𝑖𝑖𝑖𝑖 = 0𝑥𝑥5𝑐𝑐 ni 𝐵𝐵 marta takrorlash natijasida
- Bu holda HMAC quyidagicha hisoblanadi:
- 𝐻𝐻𝑀𝑀𝑀𝑀𝐶𝐶(𝑀𝑀, 𝐾𝐾) = 𝐻𝐻𝐾𝐾 ⊕ 𝑜𝑜𝑖𝑖𝑖𝑖𝑖𝑖, 𝐻𝐻(𝐾𝐾⨁𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖, 𝑀𝑀).
- Tenglikdan koʼrinib turibdiki, HMAC da ikki marata xeshlash amalga oshirilmoqda. Kalit 𝐾𝐾 faqat ikki tomonga (yuboruvchi va qabul qiluvchiga) maʼlum boʼlgani uchun, hujumchi mos xesh qiymatni qayta hisoblay olmaydi. А tomondan yuborilgan (𝑀𝑀, 𝐻𝐻𝑀𝑀𝑀𝑀𝐶𝐶(𝑀𝑀, 𝐾𝐾)) maʼlumot juftlaridan hujumchi faqat maʼlumotni oʼzgartirishi mumkin boʼladi va bu holat qabul qiluvch tomonidan osonlik bilan aniqlanadi.
MАS tizimlarida xesh qiymatni qayta hisoblay olmaslik uchun, matnga kalit biriktirilgan boʼlsa, ERI tizimlarida maʼlumotning xesh qiymati shaxsiy kaliti bilan “shifrlash” lanadi va ERI hosil qilinadi. Ushbu xabarni “deshifrlash” uchun esa tomonning ochiq kalitini bilishning oʼzi yetarli. Demak, oddiy imzo tizimiga oʼxshash (oddiy imzo tizimida bir kishi imzo qoʼyadi va qolganlar uni haqiqiyligini tekshirishi talab etiladi) ERI tizimida ham shaxsiy kalit egasi xabarni imzolaydi, qolganlar esa uni ochiq kalitidan foydalangan holda imzoni haqiqiyligini tekshiradi. - MАS tizimlarida xesh qiymatni qayta hisoblay olmaslik uchun, matnga kalit biriktirilgan boʼlsa, ERI tizimlarida maʼlumotning xesh qiymati shaxsiy kaliti bilan “shifrlash” lanadi va ERI hosil qilinadi. Ushbu xabarni “deshifrlash” uchun esa tomonning ochiq kalitini bilishning oʼzi yetarli. Demak, oddiy imzo tizimiga oʼxshash (oddiy imzo tizimida bir kishi imzo qoʼyadi va qolganlar uni haqiqiyligini tekshirishi talab etiladi) ERI tizimida ham shaxsiy kalit egasi xabarni imzolaydi, qolganlar esa uni ochiq kalitidan foydalangan holda imzoni haqiqiyligini tekshiradi.
- Аgar А tomon xabar 𝑀𝑀 ga imzo qoʼygan boʼlgan u holda imzo 𝑆𝑆 = [𝑀𝑀]𝐴𝐴 shaklida ifodalanadi (xuddi ochiq kalitli kriptografiyada shaxsiy kalit bilan deshifrlash kabi). ERI tizimlari ikkita jarayondan iborat: ERIni shakllantirish va ERIni tekshirish (5.2-rasm).
Do'stlaringiz bilan baham: |