SHA - 2 (256) Как происходит сжатие?

Не могу понять как и в каком месте в алгоритме, происходит сжатие 512 бит в 256.

  1. Добавляем единицу к сообщению
  2. Заполняем нулями пространство до 512 бит.
  3. Записываем длину вводного сообщения в место младших нулей, записанных на шаге два. Итого, на вводе мешалки, 512 бит. Константы, мешаем с подготовленными выше 512 битами (цикл сжатия). На выходе получаем 256 бит? Как?

Псевдокод сообщает: "сообщение обрабатывается последовательными порциями по 512 бит." Далее, из них формируется еще 1536 бит (48 дополнительных слов). Потом все перемешивается. Не могу увидеть место, где обработанные куски соединяются, то есть если сообщение влазит в один кусок 512 бит, то проблемы нет, но если сообщение разбито на несколько, результат обработки каждого должен где-то соединяться с предыдущими. Это и есть: "Добавить полученные значения к ранее вычисленному результату: h0 := h0 + a h1 := h1 + b ..."? Или я не туда понимаю?


Ответы (0 шт):