Итерационная хеш-функция

 

На рисунке 4 показана схема итерационной хеш-функции, которая является стойкой в смысле нахождения коллизий, если аналогичным свойством обладает используемая функция сжатия.

 

Рис. 4. Схема итерационной хеш-функции

 

Обозначения

М1, М2, ..., Mt - блоки дополненного сообщения;

t - число блоков дополненного сообщение;

h0 - фиксированное значение, называемое стартовым вектором или вектором инициализации IV;

h1, h2, ht - промежуточные результаты вычисления итераций, число которых равно числу блоков t.

Оригинальное сообщение дополняется до длины, кратной n, где n - разрядность блока данных, обрабатываемого функцией сжатия. На i-м итерационном шаге функция сжатия f принимает результат предыдущего шага hi-1 и i-й блок данных Мi, а затем формирует результат hi=f(hi-1,Mi).

На шаге t полученное значение ht объявляется хеш-образом исходного сообщения, т.е. ht = h(M).