Основы современной криптографии

joycasino зеркало Джойказино рабочее зеркало. |

Функция хэширования ГОСТ Р .- - часть 3


После выполнения шифрования получают слова

si = EKi(hi), где i = 1, 2, 3, 4,

т.е. в результате получается вектор

S = s4||s3||s2||s1.

Перемешивающее преобразование

На данном этапе осуществляется перемешивание полученной последовательности с применением регистра сдвига.

Исходными данными являются слова H, M О V256(2) и слово S О V256(2).

Пусть отображение

y: V256(2) ® V256(2)

преобразует слово

h16||…||h1, hiОV16(2), i = 1..16

в слово

h1Еh2Еh3Еh4Еh13Еh16||h16||…||h2.

Тогда в качестве значения шаговой функции хэширования принимается слово

k(M,H) = y61(H

Е y(M

Е y12(S))),

где yi

i-я степень преобразования y.

Процедура вычисления хэш-функции

Исходными данными для процедуры вычисления значения функции h

является подлежащая хэшированию последовательность M О B*. Параметром является стартовый вектор хэширования H – произвольное фиксированное слово из V256(2).

Процедура вычисления функции h на каждой итерации использует следующие величины:

M О B*

– часть последовательности M, не прошедшая процедуры хэширования на предыдущих итерациях;

H О V256(2) – текущее значение хэш-функции;

S О V256(2) – текущее значение контрольной суммы;

L О V256(2) – текущее значение длины обработанной на предыдущих итерациях части последовательности M.

Алгоритм вычисления функции h включает в себя следующие три этапа:

Этап 1

Присвоить начальные значения текущих величин

M := M; H := H; S := 0256; L := 0256

Этап 2

Проверить условие |M|>256. Если да, то перейти к этапу 3. В противном случае выполнить последовательность вычислений:

L := <L+|M|>256; M' := 0256–|M| ||M; S := S [+] M'

H := k(M',H); H := k(L,H); H := k(S,H);

Конец работы алгоритма. H содержит значение хэш-функции.

Этап 3

Вычислить подслово MS О V256(2) слова M (M=MP||MS). Далее выполнить последовательность вычислений:

H := k(MS,H); L := <L+256>256;  S := S [+] MS; M := MP

Перейти к этапу 2.




- Начало -  - Назад -  - Вперед -



Книжный магазин