МАШ-1 - MASH-1

MASH-1 ( Modular Arithmetic Secure Hash ) - это хеш-функция, основанная на модульной арифметике .

История

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

Стандарт

Проект комитета ISO / IEC 10118-4 (ноя 95)

Описание

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

Позвольте быть длиной блока сообщения в битах . выбирается так, чтобы двоичное представление было на несколько бит длиннее, чем обычно .

Сообщение дополняется добавлением длины сообщения и разделяется на блоки длины . Из каждого из этих блоков создается блок увеличенной длины путем размещения четырех битов from в нижней половине каждого байта и четырех битов со значением 1 в верхней половине. Эти блоки итеративно обрабатываются функцией сжатия:

Где и . обозначает побитовое ИЛИ и побитовое исключающее ИЛИ .

Из теперь вычисляются дополнительные блоки данных линейными операциями (где означает конкатенацию):

Эти блоки данных теперь увеличены, как указано выше, и с ними процесс сжатия продолжается еще восемью этапами:

Наконец, хеш-значение , где - простое число с .

МАШ-2

Существует более новая версия алгоритма MASH-2 с другим показателем степени. Оригинал заменен на . Это единственное различие между этими версиями.

использованная литература

  • А. Менезес , П. ван Оршот, С. Ванстон , Справочник по прикладной криптографии , ISBN   0-8493-8523-7