SHABAL: различия между версиями

[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Строка 31:
В (A,B,C) заносятся нули, числу в W присваивается значение -1. В начало основного сообщения M добавляются два блока, в каждый 4-байтовый фрагмент которых записываются фиксированные числа варьирующиеся от <math>l_h</math> до <math>l_h+31</math>, где <math>l_h</math> - это длина выхода хеш-функции <math>l_h\in\mathcal{f}192,224,256,384,512\mathcal{g}</math>.
====Разбиение на блоки====
Входная битовая последовательность разбивается на блоки по 512 или 384, 256, 224, 192 бит(в зависимости от варианта алгоритма), если длина сообщения не кратна 512указанной длине то к последней части добавляется одна битовая единица и нужное для достижения заданного размера количество нулей.
 
====Обычные итерации====
Для всех w (<math>\!w=2^{32}*W[1]+W[0]; W[0]</math> и <math>\!W[1]</math>-32 битные части W) от -1 до k (где k количество блоков изначального сообщения) сделать следующее: