911.98K
Категория: ПромышленностьПромышленность

Mustaqil ish

1.

O‘ZBEKISTON RESPUBLIKASI OLIY TA’LIM, FAN VA
INNOVATSIYALAR VAZIRLIGI
MIRZO ULUG‘BEK NOMIDAGI O‘ZBEKISTON MILLIY
UNIVERSITETINING JIZZAX FILIALI
AMALIY MATEMATIKA FAKULTETI
«KOMPYUTER ILMLARI VA DASTURLASHTIRISH» kafedrasi
“AXBOROTNI HIMOYALASHNING KRIPTOGRAFIK USULLARI”
FANIDAN
MUSTAQIL ISH
Mavzu: SHA oilasiga mansub xesh funksiyalar
Bajardi: Komilov Kamoliddin, Po’latov Dostonbek
Tekshirdi: Baratov Jasur.

2.

Mavzu: SHA oilasiga mansub xesh funksiyalar
Reja:
I.
Kirish.
1.1 Xesh funksiyalar haqida tushuncha.
II. Asosiy qism.
2.1 SHA oilasiga mansub xesh funksiyalar
2.2 SHA-256 xesh funksiyasi
2.3 SHA-256 xesh funksiyasi kriptotahlili
I.
Xulosa.
II. Adabiyotlar ro’yxati.

3.

Xeshlash funksiyasi
Xeshlash funksiyasi (xesh-funksiyasi) shunday o‘zgartirishki, kirish
yo‘liga uzunligi o‘zgaruvchan xabar M berilganida chiqish yo‘lida belgilangan
uzunlikdagi qator h(M) hosil bo‘ladi. Boshqacha aytganda, xesh-funksiya h(.)
argument sifatida uzunligi ixtiyoriy xabar (xujjat) M ni qabul qiladi va
belgilangan uzunlikdagi xeshqiymat (xesh) H=h(M)ni qaytaradi (1-rasm).
1-rasm. Xeshni shakllantirish sxemasi
Sodda qilib tushintiradigan bo’lsak, xesh funksiya ixtiyoriy uzunlikdagi (bit yoki
bayt birliklarida) ma’lumotni biror fiksirlangan (qayd qilingan) uzunlikdagi (bit
yoki bayt birliklarida) qiymatga o‘tkazuvchi funksiyaga aytiladi.

4.

Xeshlash funksiyasi quyidagi xususiyatlarga ega bo‘lishi lozim
• Xesh-funksiya ixtiyoriy o‘lchamli argumentga qo‘llanishi kerak.
• Xesh-funksiya chiqish yo‘lining qiymati belgilangan o‘lchamga ega.
• Xesh-funksiya h(x) ni ixtiyoriy "x" uchun yetarlicha oson hisoblanishi kerak.
• Xesh-funksiyani hisoblash tezligi shunday bo‘lishi kerakki, xesh-funksiya ishlatilganida
elektron raqamli imzoni tuzish va tekshirish tezligi xabarning o‘zidan foydalanilganiga
qaraganda anchagina katta bo‘lsin.
• Xesh-funksiya qaytarilmaslik xususiyatiga ega bo‘lishi lozim.
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.

5.

Kolliziya tushunchasi:
Agar bir xil xesh qiymatga ega bo‘lgan ikkita har xil ma’lumot mavjud bo‘lsa, bu
ma’lumotlar jufti kolliziya hosil qiladi deyiladi.
Ikkita turli xabarning bitta tugunchaga (svertka) zichlash nazariy jihatdan mumkin. Bu
kolliziya yoki to‘qnashish deb ataladi. Shuning uchun xeshlash funksiyasining bardoshligini
ta’minlash maqsadida to‘qnashishlarga yo‘l qo‘ymaslikni ko‘zda tutish lozim. To‘qnashishlarga
butunlay yo‘l qo‘ymaslik mumkin emas, chunki umumiy holda mumkin bo‘lgan xabarlar soni
xeshlash funksiyalari chiqish yo‘llari qiymatlarining mumkin bo‘lgan sonidan ortiq. Ammo,
to‘qnashishlar ehtimolligi past bo‘lishi lozim.

6.

Kriptografik xesh funksiyalarning turlari
Kalitli xesh funksiyalarni qo‘llashda ularga quyidagi asosiy talablar qo‘yiladi:
soxtalashtirish imkoniyati mavjud emasligi;
modifikatsiyalashning imkoniyati yo‘qligi.
Odatda kalitsiz xesh funksiyalardan quyidagi xossalarni qanoatlantirishi talab etiladi:
bir tomonlamalik;
kolliziyaga bardoshlilik;
xesh qiymatlari teng bo‘lgan ikkita ma’lumotni topishga bardoshlilik.

7.

SHA oilasiga mansub xesh funksiyalar
Secure Hash Algoritm - bu Amerika Qo'shma Shtatlarining NSA tomonidan ishlab
chiqilgan kriptografik xesh funktsiyasi. SHA-0 (1993 yilda nashr etilgan) ko'p yillar oldin
buzilgan. SHA-1 (1995) 160 bitli (20 bayt) xesh qiymatini ishlab chiqaradi. Odatda u 40 xonali
oʻn oltilik raqam sifatida koʻrsatiladi. 2005 yilda nazariy to'qnashuvlar aniqlanganligi sababli u
buzildi, ammo uning haqiqiy "o'limi" 2010 yilda ko'plab tashkilotlar uni almashtirishni tavsiya
qila boshlaganida sodir bo'ldi.
Katta uchlik - Microsoft, Google va Mozilla - bir nechta muvaffaqiyatli hujumlardan so'ng
2017 yilda brauzerlarida SHA-1 SSL sertifikatlarini qabul qilishni to'xtatdilar . SHA-1 MD4 va
MD5 dizaynida qo'llanilgan printsiplarga o'xshash printsiplar asosida qurilgan. Biroq, bu
ko'proq konservativ yondashuvga ega.

8.

SHA oilasiga mansub xesh funksiyalar
Hozircha xavfsizroq SHA-2 . SHA-2 bir nechta muhim o'zgarishlarni o'z ichiga oladi. Uning oilasi
digestlarga ega oltita xesh funksiyasiga ega: SHA-224, SHA-256 yoki 512 bit: SHA-224, SHA-256,
SHA-384, SHA-512, SHA-512/224, SHA-512/256.
SHA-2 ancha murakkab va hanuzgacha xavfsiz hisoblanadi. Biroq, SHA-2 o'zidan oldingi (SHA-1)
bilan bir xil tuzilishga va matematik operatsiyalarga ega - shuning uchun yaqin kelajakda u buzilgan
bo'lishi mumkin. Shunday qilib, kelajak uchun yangi variant - SHA-3.
SHA-3 (Secure Hash Algoritm 3) Gvido Bertoni, Joan Daemen, Maykl Peeters va Gilles Van Asshe
tomonidan ishlab chiqilgan. Ularning Keccak algoritmi 2009 yilda NIST tanlovida g'olib chiqdi va rasmiy
SHA algoritmi sifatida qabul qilindi. U NIST tomonidan 2015-yil 5-avgustda chiqarildi. SHA-3
talablaridan biri SHA-2-ni buzishi mumkin boʻlgan potentsial hujumlarga chidamli boʻlish edi.
SHA-3 mualliflari autentifikatsiya qilingan shifrlash tizimi va daraxtlarni xeshlash sxemasi kabi
qo‘shimcha funktsiyalarni taklif qilishdi, ammo ular hali standartlashtirilmagan. Shunga qaramay, bu
hozircha eng xavfsiz xesh algoritmi.

9.

SHA-256 algoritmining qadamlar ketma-ketligi
SHA-256 - SHA-256 256 bitli xeshni keltirib chiqaradi va 512 bitli blok hajmiga
ega. Xabar kiritish 32 bitli so'zlarda qayta ishlanadi, ishga tushirish o'zgaruvchilari va
konstantalari ham 32 bit uzunlikda. SHA-256 shuningdek, 64 turni o'z ichiga oladi.
1-qadam. Bitlar bilan to’ldirish
2-qadam. Matn uzunligini qo’shish
3-qadam. Matnni bloklarga ajratish
4-qadam. Ajratilgan bloklarni qism bloklarga ajratish
5-qadam. Kalit tayyorlash
6-qadam. SHA-256 ning 64 raundi

10.

11.

12.

Matnni bloklarga ajratish
Hosil bo’lgan 512 ga karrali M matnni bloklarga ajratamiz.

13.

Ajratilgan bloklarni qism bloklarga ajratish
512 bitli bloklar 16 ta 32 bitli qism bloklarga ajratiladi.

14.

15.

Xabarlar jadvali: Boshqa W qiymatlarini topish
Agar siz diagrammani diqqat bilan ko'rib chiqsangiz, 63-raund uchun kirishlardan
biri W 63 ekanligini ko'rasiz . Hozircha bizda faqat W 0 dan W 15 gacha bo'lgan qiymatlar
mavjud , shuning uchun bizda barcha W kiritishimizdan oldin yana 48 qiymat kerak
bo'ladi.
Sigma1 ning qiymati quyidagicha hisoblanadi:
Sigma0 ning qiymati quyidagicha hisoblanadi:
Mos ravishda W16 ning qiymati quyidagicha hisoblanadi:

16.

Initialization vectors

17.

Doimiy, K
K uchun 64 ta alohida 32 bitli qiymatlar mavjud, har bir 64 tur uchun bittadan.
Ular birinchi 64 tub sonning kub ildizlaridan olingan. O'n oltilik tizimda har bir tur
uchun sakkiz belgidan iborat konstantalar quyidagicha

18.

Asosiy operatsiya
Nihoyat, bizda barcha ma'lumotlar mavjud. Endi SHA-2 ning har bir
bosqichi ulardan qanday foydalanishini aniqlash vaqti keldi. Quyidagi
diagrammada SHA-2 ushbu kirishlarning barchasidan qanday foydalanishi
haqida yaxshi ma'lumot berilgan:

19.

Funksiyalar
English     Русский Правила