SHA-1 xesh funksiyasi algoritmi. Kafolatlangan bardoshlilikka
ega bo‗lgan xeshlash algoritmi SHA (Secure Hash Algorithm)
AQShning standartlar va texnologiyalar Milliy instituti (NIST)
tomonidan ishlab chiqilgan bo‗lib, 1992 yilda axborotni qayta ishlash
federal standarti (RUB FIPS 180) ko‗rinishida nashr qilindi. 1995 yilda
bu standart qaytadan ko‗rib chiqildi va SHA-1 deb nomlandi (RUB FIPS
180-1). SHA algoritmi MD4 algoritmiga asoslanadi va uning tuzilishi
MD4 algoritmining tuzilishiga juda yaqin. Bu algoritm DSS standarti
asosidagi elektron raqamli imzo algoritmlarida ishlatish uchun
mo‗ljallangan. Bu algoritmda kiruvchi ma‘lumotning uzunligi 264
bitdan kichik bo‗lib, xesh qiymat uzunligi 160 bit bo‗ladi. Kiritilayotgan
ma‘lumot 512 bitlik bloklarga ajratilib qayta ishlanadi.
Xesh qiymatni hisoblash jarayoni quyidagi bosqichlardan iborat:
1-bosqich. To‘ldirish bitlarini qo‘shish. Berilgan ma‘lumot uzunligi 512 modul bo‗yicha 448 bilan
taqqoslanadigan (ma‘lumot uzunligi
448 mod 512) qilib to‗ldiriladi.
To‗ldirish hamma vaqt, hattoki ma‘lumot uzunligi 512 modul bo‗yicha
448 bilan taqqoslanadigan bo‗lsa ham bajariladi. To‗ldirish quyidagi
tartibda amalga oshiriladi: ma‘lumotga 1 ga teng bo‗lgan bitta bit
qo‗shiladi, qolgan bitlar esa 0 lar bilan to‗ldiriladi. Shuning uchun
qo‗shilgan bitlar soni 1 dan 512 tagacha bo‗ladi.
2-bosqich. Ma’lumotning uzunligini qo‘shish. 1-bosqichning natijasiga berilgan ma‘lumot uzunligining 64 bitlik
qiymati qo‗shiladi.
3-bosqich. Xesh qiymat uchun bufer initsializatsiya qilish. Xesh funksiyaning oraliq va oxirgi natijalarini saqlash uchun 160
bitlik buferdan foydalaniladi. Bu buferni beshta 32 bitlik A, B, C, D, E
173
registrlar ko‗rinishida tasvirlash mumkin. Bu registrlarga 16 lik sanoq
sistemasida quyidagi boshlangʻich qiymatlar beriladi:
A=0x67452301,
B=0xEFCDAB89,
C=0x98BADCFE,
D=0x10325476,
E=0xC3D2E1F0.
Keyinchalik bu o‗zgaruvchilar mos ravishda yangi
a ,
b ,
c ,
d va
e o‗zgaruvchilarga yozib olinadi.