SHA256 (Secure Hash Algorithm 256 bit) – kriptografik xesh funksiyasi bo'lib, u ma'lumotlarning qisqa va noyob "barmoq izi"ni yaratish uchun ishlatiladi.
SHA256 Amerika Qo'shma Shtatlari Milliy Standartlar va Texnologiyalar Instituti (NIST) tomonidan ishlab chiqilgan SHA2 xesh funksiyalari oilasiga kiradi.
SHA256 ning asosiy vazifasi ixtiyoriy uzunlikdagi ma'lumotlarni (masalan, matn, fayl yoki boshqa ma'lumotlar to'plami) 256 bitli (32 bayt) o'zgarmas uzunlikdagi xesh qiymatiga aylantirishdir. Bu xesh qiymati odatda o'n oltilik sanoqda ifodalanadi va shuning uchun 64 ta belgi uzunlikda bo'ladi.
SHA256 ning muhim xususiyatlari quyidagilardan iborat: Bir tomonlama: Ma'lumotlardan xesh qiymatini hisoblash oson, lekin xesh qiymatidan asl ma'lumotlarni qayta tiklash amalda imkonsizdir. Bu xususiyat SHA256 ni parollarni saqlash va ma'lumotlar butunligini tekshirish uchun juda mos qiladi.
Deterministik: Xuddi shu ma'lumot doimiy ravishda bir xil xesh qiymatini hosil qiladi. Bu natijalarning ishonchliligi va takrorlanishini ta'minlaydi. Collisionsga chidamlilik: Ikki xil ma'lumot bir xil xesh qiymatini hosil qilish ehtimoli juda past.
Bunday holat "collision" deb ataladi va SHA256 yaxshi collisionga chidamliligiga ega. Biroq, mutlaq collisionga chidamlilik mavjud emas, ammo amaliy jihatdan collision topish juda qiyin.
Avalanche effekti: Ma'lumotlardagi hatto eng kichik o'zgarish ham xesh qiymatida sezilarli o'zgarishga olib keladi. Bu xususiyat SHA256 ni ma'lumotlar butunligini tekshirish uchun juda samarali qiladi, chunki hatto bitta bitning o'zgarishi ham butun xesh qiymatini butunlay o'zgartiradi.
SHA256 turli xil sohalarda keng qo'llaniladi, jumladan: Parollarni saqlash: Vebsaytlar va boshqa tizimlar parollarni to'g'ridanto'g'ri saqlamasdan, ularning xesh qiymatlarini saqlashadi.
Foydalanuvchi tizimga kirishga harakat qilganda, uning kiritgan paroli xeshlanadi va saqlangan xesh qiymati bilan solishtiriladi. Agar xesh qiymatlari mos kelsa, foydalanuvchining autentifikatsiyasi tasdiqlanadi.
Ma'lumotlar butunligini tekshirish: Fayllarni yuklab olayotganda, SHA256 xesh qiymatini taqdim etish mumkin. Yuklab olingandan so'ng, faylning xesh qiymati hisoblanadi va taqdim etilgan xesh qiymati bilan solishtiriladi.
Agar xesh qiymatlari mos kelsa, bu faylning yuklab olish vaqtida buzilmaganligini ko'rsatadi. Raqamli imzo: SHA256 raqamli imzolarda xabarning xeshini yaratish uchun ishlatiladi, so'ngra xesh xususiy kalit bilan shifrlanadi.
Boshqa tomon xabarni ommaviy kalit bilan ochib, xeshni qayta hisoblab, imzoning haqiqiyligini tekshirishi mumkin. Blokcheyn texnologiyasi: SHA256 Bitcoin va boshqa kriptovalyutalarda bloklarning xeshini yaratish va tranzaksiyalarni xavfsiz saqlash uchun ishlatiladi.
Har bir blok o'zidan oldingi blokning xeshini o'z ichiga oladi, bu blokcheynga o'zgartirish kiritishni juda qiyinlashtiradi. Git versiyalarni boshqarish tizimi: Git SHA256 ni fayllar va commitlarni aniqlash uchun ishlatadi.
SHA256 ning xavfsizligi hali ham ishonchli hisoblanadi, ammo vaqt o'tishi bilan kompyuter quvvati ortishi tufayli xesh funksiyalariga hujumlar kuchayishi mumkin.
Shuning uchun NIST SHA3 kabi yangi xesh funksiyalarini ishlab chiqdi va tavsiya qiladi, lekin SHA256 hali ham ko'plab dasturlarda keng qo'llaniladi. SHA256 ning asosiy algoritmi quyidagi bosqichlardan iborat: 1.
Padding (to'ldirish) : Kirish ma'lumotlari, uning uzunligi 512 bitga karrali bo'lishi uchun to'ldiriladi. 2. Parsing (ajratish) : To'ldirilgan ma'lumotlar 512 bitli bloklarga bo'linadi. 3.
Initialization (initsializatsiya) : Sakkizta 32 bitli xesh qiymatlari (H0 dan H7 gacha) oldindan belgilangan boshlang'ich qiymatlar bilan initsializatsiya qilinadi. 4. Compression (siqish) : Har bir 512 bitli blok uchun siqish funksiyasi 64 raunddan iborat holda ishlaydi.
Har bir raundda xesh qiymatlari blokning bir qismi va bir qator doimiy qiymatlar (K) yordamida yangilanadi. Siqish funksiyasi matematik va bitli operatsiyalarni (masalan, XOR, AND, SHIFT, ROTATE) o'z ichiga olad...
SHA256
Kategoriyalar:
Texnologiya