66
федерал ақпараттық стандарт ретінде 1993 жылы жарияланған болатын. SHA-1
алгоритмда бастапқы хабардың 512 битты блоктармен өңдеу нәтижесінде 160-битты хеш-
мәні құрастырылады. MD5 алгоритмдағыдай SHA-1 алгоритмда да қарапайым логикалық
және арифметикалық операциялар пайдаланады. MD5-тен SHA-1-ң ең маңызды
айырмашылығы мынадай: SHA-1-ң хеш-коды MD5-ң хеш-кодынан 32 битке ұзын. Екуінің
де күрделігі бірдей болғанда SHA-1-ң беріктігі жоғары.
2001 жылы АҚШ-ң ұлттық стандарттар және технологиялар институты стандарт
ретінде, хеш-коды SHA-1-ден ұзыңырақ үш хеш-функцияны қабылдады. Осы хеш-
функцияларды жиі SHA-2 немесе SHA-256, SHA-384 және SHA-512 деп атайды (яғни
атында хеш-код ұзындығы берілген). Бұл алгоритмдарда өңделетін блок ұзындығы да
үлкен (SHA-256-да блок ұзындығы – 512 бит, SHA-384 және SHA-512-де блок ұзындығы –
1024 бит).
Ресейде хеш-функция үшін стандарты ГОСТ Р34.11-94. Оның құрылымы SHA-1,2
немесе MD5-тен қатты ерекшеленеді. ГОСТ Р34.11-94 жасайтын хеш-код ұзындығы 256
бит. Алгоритм бастапқы хабарады 256 битты блоктармен оң жақтан солға қарай рет-
ретімен өңдейді. Алгоритм параметрі бастапқы хаширлау векторы – ұзындығы 256 бит кез
келген тіркелген мәні. ГОСТ Р34.11-94 алгоритмда ауыстыру операциялар, ығысу,
арифметикалық қосу, модулі 2 бойынша қосу пайдаланады. Көмекші функция ретінде
қарапайым ауыстыру тіртібінде ГОСТ 28147-89 алгоритмы пайдаланады.
Негізгі ұғымдар
Нash function – хеш-функция.
ГОСТ Р34.11-94 – хеширлау функцияға ресей стандарты.
Хеш-функция – кез келген ұзындығы бар жол үшін кейбір бүтін мәнді немесе
кейбір тіркелген ұзындығы бар басқа жолды есептейтің математикалық немесе басқа
функция.
Хеш-коды – хеш-функцияның жұмыс нәтижесі, кіру деректер массивының кейбір
сипатты «белгісі».
Сұрақтар
1. Криптографияда нені хеш-функция деп атайды?
2. Хеш-функциялар қандай мақсаты үшін пайдаланады?
3. Хеш-функцияларға қойылатын негізгі талаптарды айтып беріңіз.
4. Криптографиялық хеш-функцияның мысалдарын айтып беріңіз.
5. Криптографиялық хеш-функцияны құрастыру алгоритмға қандай ресей
стандарты бар?
6. Хеш-функцияны құрастыру үшін блокты шифрлау алгоритмды қалай
пайдалануға болады?
Жаттығулар
Хеш-функция
y=
h(
x
1
x
2
…
x
n
) екілік хабардың барлық биты үшін бит бойы «модулі 2
бойынша қосынды» операцияның орындау нәтижесі болып анықталсын. Хеш-код
ұзындығы тең 8 бит. Сол жақ бағанда жазылған әрбір алты хабар үшін оң жақ бағаннан
хеш-функцияның сәйкес есептеу нәтижесін табыңыз. Барлық хабарлар және хеш-функция
мәндері он алтылық форматта берілген.
Хабарлар
Хеш-функция мәндері
0A3 69 2C
82 0F B5
0DA 14 90
32 01 BF
9E A6 23
10 ВE 57
38
1B
0F9
8C
0E6
5E