Xesh-funksiyalarning umumiy oilasi
I. Xesh-funksiyalarning umumiy oilasi II. MUNDARIJA III. KIRISH ………………………………………………………….. 3 IV. Xesh funksiyalar ………………………………………………… 5 V. Kriptografik xesh funksiyalar ………………………………….. 9 VI. Xesh funksiyasining xususiyatlari …………………………….. 14 VII. Raqamli imzoni tekshirish muolajasi .………………………….. 18 VIII. Xesh funksiyalarini tuzish usullari ……………………………… 23 IX. Hesh funksiyasini yaratish algoritmlarini ko’rib chiqish ……… 32 X. 8. Xulosa ……………………………………………………………… 36 XI. 9. Foydalingan adabiyotlar …………………………………………. 37 1
KIRISH Dolzarbligi Ko'pincha, torrentlarni yoki to'g'ridan -to'g'ri fayllarni o'zlari yuklab olayotganda, tavsifda “ad33e486d0578a892b8vbd8b19e28754” ( masalan, ex.ua da ) kabi narsalar bo'ladi, ko'pincha "md5” yozuvli. Bu xesh -kod - bu kiruvchi ma'lumotlarni qayta ishlashdan so'ng xash funksiyasi ishlab chiqaradigan natijadir. Ingliz tilidan tarjima qilingan xash chalkashlik, marixuana, o't yoki mayda tug'ralgan go'sht va sabzavotlardan iborat idishni bildiradi. juda, juda qiyin, deyishimiz mumkin, bu deyarli imkonsiz. Keyin savol tug'iladi: "Bularning barchasi bizga nima uchun kerak, ular hali ham tushunib bo'lmaydigan tushunarsiz so'zlarni berishadi?" Xash funktsiyasi nima va u qanday ishlaydi Bu funksiya har qanday katta hajmdagi kiruvchi ma'lumotlarni belgilangan uzunlikdagi natijaga aylantirish uchun mo'ljallangan. Bunday o'zgartirish jarayonining o'zi xash, natijasi esa xesh yoki xesh kod deb ataladi. Ba'zida "barmoq izi" yoki "xabar hazm qilish" so'zlari haligacha ishlatiladi, lekin amalda ular kamroq tarqalgan. Ma'lumotlar massivini ma'lum uzunlikdagi belgilar ketma - ketligiga aylantirish uchun juda ko'p turli xil algoritmlar mavjud. Eng keng tarqalgan md5 algoritmi bo'lib, u 1991 yilda ishlab chiqilgan. Bugungi kunda md5 biroz eskirgan va foydalanish uchun tavsiya qilinmaganiga qaramay, u hali ham ishlatilmoqda va ko'pincha "xash kod" so'zining o'rniga, saytlar md5 yozadi va kodning o'zini ko'rsatadi. Nega xash funktsiyasi kerak Natijani bilib, dastlabki ma'lumotlarni aniqlash deyarli mumkin emas, lekin bir xil kirish ma'lumotlari bir xil jamlanmani beradi. Shuning uchun, xash funktsiyasi (konvulsiyalar funktsiyasi deb ham ataladi) ko'pincha saqlash uchun ishlatiladi muhim ma’lumotlar , parol, login, identifikatsiya raqami va boshqalar kabi Shaxsiy ma’lumot ... Foydalanuvchi kiritgan ma'lumotni ma'lumotlar bazasida saqlanayotgan ma'lumotlar bilan solishtirish o'rniga, ularning xeshlari solishtiriladi. Bu tasodifan ma'lumot sızıntısı bo'lsa, hech kim muhim ma'lumotlardan o'z maqsadlari uchun foydalana olmasligini ta'minlaydi. Hash -kodni taqqoslab, Internetdan fayllarni yuklash to'g'riligini tekshirish ham qulay, ayniqsa yuklash paytida ulanish uzilgan bo'lsa. 2
Kurs ishini maqsadi : Xesh-funksiyalarning umumiy oilasi Kurs ishi vazifalari: Xesh funksiyalar Kriptografik xesh funksiyalar Xesh funksiyasining xususiyatlari Raqamli imzoni tekshirish muolajasi. Xesh funksiyalarini tuzish usullari Hesh funksiyasini yaratish algoritmlarini ko’rib chiqish Kurs ishini tarkibi : Kus ishini tarkibi,Kirish , Xulosa, foydalanilgan adabiyotlar ro’yxati va ilovalardan iborat . 3
I. Xesh funksiyalar Xash funktsiyalari: ular nima 1-rasm Maqsadiga qarab xash funktsiyasi uch turdan biri bo'lishi mumkin: 1. Axborotning yaxlitligini tekshirish funktsiyasi Tarmoq orqali amalga oshirilganda, paketning xeshi hisoblab chiqiladi va bu natija fayl bilan birga yuboriladi. Qabul qilinganidan so'ng, xash kodi qayta hisoblab chiqiladi va tarmoq orqali olingan qiymat bilan solishtiriladi. Agar kod mos kelmasa, bu xatolarni ko'rsatadi va buzilgan paket yana uzatiladi. Bunday funksiya tez hisoblash tezligiga ega, lekin oz miqdordagi xesh qiymatlari va barqarorligi past. Bu turga misol: CRC32, u faqat 232 xil qiymatga ega. 2. Kriptografik funksiya (ND) dan himoya qilish uchun ishlatiladi. Ular tarmoq orqali fayllarni uzatish paytida ND natijasida ma'lumotlar buzilganligini tekshirishga imkon beradi. Bu holda haqiqiy xash hamma uchun ochiqdir va natijada olingan faylning xeshini turli xil dasturlar yordamida hisoblash mumkin. Bunday funktsiyalar uzoq va barqaror hayotga ega va to'qnashuvlarni qidirish (har xil kirish ma'lumotlari natijasida mumkin bo'lgan tasodiflar) juda qiyin. Ma'lumotlar bazasida parollar (SH1, SH2, MD5) va boshqa qimmatli ma'lumotlarni saqlash uchun aynan shu funktsiyalar ishlatiladi. 3. Ma'lumotlarning samarali tuzilishini yaratish uchun mo'ljallangan funksiya Uning maqsadi - xash -jadval deb nomlangan maxsus tuzilmada ma'lumotlarni ixcham va adolatli tartibga solish. Bunday jadval qo'shish imkonini beradi yangi ma'lumotlar , ma'lumotlarni o'chiring va kerakli ma'lumotlarni juda yuqori tezlikda qidiring. (ba'zan xesh) - ixtiyoriy uzunlikdagi kirish ma'lumotlari qatorini belgilangan uzunlikdagi chiqish bitli qatoriga aylantirish. Bunday o'zgartirishlar xash funktsiyalari yoki katlama 4
funktsiyalari deb ham ataladi va ularning natijalari xash, xesh -kod yoki xabarlar hazm qilish deyiladi. Ma'lumotlarni taqqoslash uchun xashing ishlatiladi: agar ikkita massivda turli xil xesh kodlari bo'lsa, massivlar boshqacha bo'lishi kafolatlanadi; agar ular bir xil bo'lsa, massivlar bir xil bo'lishi mumkin. Umumiy holda, xash funktsiyalarining qiymatlari soni kirish massivining variantlari sonidan kam bo'lganligi sababli, boshlang'ich ma'lumotlar va xash kod o'rtasida birma-bir yozishmalar yo'q; bir xil xash kodlarini beradigan ko'plab massivlar mavjud - to'qnashuvlar. To'qnashuv ehtimoli xash funktsiyalari sifatini baholashda muhim rol o'ynaydi. Turli xil xususiyatlarga ega bo'lgan ko'p xesh algoritmlari mavjud (bit chuqurligi, hisoblash murakkabligi, kriptografik kuch va boshqalar). Muayyan xesh funktsiyasini tanlash hal qilinayotgan muammoning o'ziga xos xususiyatlari bilan belgilanadi. Hash funktsiyalarining eng oddiy misollari - bu nazorat yig'indisi yoki CRC. CHEKSUMS Tekshirish summasi boshqa raqamli ma'lumotlar blokidan olingan kichik o'lchamdagi ma'lumotlar bloki bo'lib, uni uzatish yoki saqlash vaqtida kiritilgan xatolarni aniqlash uchun mo'ljallangan. O'z-o'zidan, nazorat summalari ko'pincha ma'lumotlar yaxlitligini tekshirish uchun ishlatiladi, lekin ma'lumotlarning haqiqiyligini tekshirishda foydalanilmaydi. Ushbu nazorat summasini yaratuvchi protsedura nazorat summasi funktsiyasi yoki nazorat yig'indisi algoritmi deb ataladi. Dizayn maqsadlariga qarab, yaxshi nazorat yig'indisi algoritmi odatda kirishga kiritilgan kichik o'zgarishlar uchun ham sezilarli darajada farq qiladigan qiymatni chiqaradi. Bu, ayniqsa, kriptografik xesh-funksiyalar uchun to'g'ri keladi, ular ko'plab ma'lumotlarni buzish xatolarini aniqlash va umumiy ma'lumotlar yaxlitligini tekshirish uchun ishlatilishi mumkin; joriy ma'lumotlarni kiritish uchun hisoblangan nazorat summasi ilgari hisoblangan nazorat summasining saqlangan qiymatiga mos keladigan bo'lsa, ma'lumotlar tasodifan o'zgartirilmagan yoki buzilmagan bo'lishi ehtimoli juda yuqori. Tekshirish summasi funktsiyalari xesh funktsiyalari, barmoq izlari, randomizatsiya funktsiyalari va kriptografik xesh funktsiyalari bilan bog'liq. Biroq, bu kontseptsiyalarning har biri turli xil ilovalar va shuning uchun turli dizayn maqsadlariga ega. Misol uchun, satrning boshlanishini qaytaruvchi funktsiya ba'zi ilovalar uchun mos keladigan xeshni berishi mumkin, lekin hech qachon mos nazorat summasi bo'lmaydi. Tekshirish summalari kattaroq autentifikatsiya algoritmlarida kriptografik primitivlar sifatida ishlatiladi. Ushbu ikkita o'ziga xos dizayn maqsadiga ega kriptografik tizimlar uchun [aniqlash kerak], HMAC ga qarang. Tekshirish raqamlari va paritet bitlari kichik ma'lumotlar bloklari (masalan, ijtimoiy sug'urta raqamlari, bank hisob raqamlari, 5