28572

Примеры хеш-функций

Доклад

Информатика, кибернетика и программирование

Расширение исходного сообщения Собственно хеширование . Расширение исходного битового сообщения M длины L происходит следующим образом. Алгоритм хеширования работает циклами за один цикл обрабатывается блок исходного сообщения длины 512 бит. Цикл состоит из четырех раундов каждый из которых вычисляет новые значения переменных A B C D на основании их предыдущего значения и значения 64битного отрезка хешируемого 512битного блока исходного сообщения.

Русский

2013-08-20

14.18 KB

1 чел.

Примеры хеш-функций:

MD 5 (R. RIVEST 1992)

Данная хэш-функция является однопроходной хэш-функцией, размер хэш-функции - 128 бит.

Алгоритм хэширования разделяется на две части.

  1.  Расширение исходного сообщения
  2.  Собственно хеширование

. Расширение исходного битового сообщения M длины L происходит следующим образом. Пусть К - минимальное для которого выполняется соотношение L < K*512 - 64. Исходное сообщение M дополняется одним единичным битом и далее нулями до длины K*512 - 64, после чего к полученному сообщению дописывается 64 битный блок содержащий двоичную запись значения L. Таким образом, расширенное сообщение М имеет длину кратную 512 бит.

Алгоритм хеширования работает циклами, за один цикл обрабатывается блок исходного сообщения длины 512 бит. Пусть A, B, C, D - 32 битные переменные. Перед первым циклом хеширования им присваиваются начальные значения (в шестнадцатиричной записи).

Цикл состоит из четырех раундов каждый из которых вычисляет новые значения переменных A, B, C, D  на основании их предыдущего значения и значения 64-битного отрезка хешируемого 512-битного блока исходного сообщения. В заключение цикла полученные значения A, B, C, D суммируются по модулю 232 с соответствующими значениями до начала цикла хэширования.

Финальное (после обработки последнего блока хэшируемого сообщения) значение переменных A, B, C, D является 128 битным значением хэш-функции.

Через функцию F обозначено соответствующее нелинейное преобразование (S, T, U или V). С  учетом циклического сдвига переменных a, b, c, d в преобразованиях SS, TT, UU и VV. Один цикл работы алгоритма MD 5 можно представить в виде 64 тактов работы нелинейного регистра сдвига с четырьмя обратными связями, при этом первые 16 тактов работает первая обратная связь, следующие 16 вторая и т.д.

В заключение рассмотрения алгоритма MD 5 отметим, что несмотря на многие попытки провести на него атаку, он остается практически стойким.

MD 2 (R. RIVEST 1992)

Данный алгоритм также реализует 128 битную однопроходную хэш-функцию и в частности используется в протоколе PEM (Privacy -Enhanced Mail см. ниже). Этот алгоритм значительно более медленный чем остальные изложенные в книге примеры, однако, до сих пор у него не найдено даже потенциальных слабостей.

Алгоритм использует случайную перестановку на байтах,  задаваемую вектором (S0,S1, ... S255), сам автор, например, предлагает генерировать эту подстановку из битового вектора, получаемого записью числа  в двоичном виде. Также используется 48 байтный блок X=X0,...,X48,

Алгоритм выглядит следующим образом;

  1.  Исходное сообщение расширяется до сообщения длины кратной 16 байтам. При этом если дописывается N байтов, до их значение равно 0, 1, ... N-1.
  2.  Сообщение дополняется 16 байтной контрольной суммой, которая содержит истинный размер сообщения и может содержать дополнительную информацию (например, CRC значение).
  3.  Первый 16 байтный блок блока X инициализируется нулями.
  4.  Второй 16 байтный блок блока Х устанавливается равным очередному 16 байтному блоку хэшируемого текста.
  5.  Третий 16 байтный блок блока Х получается покоординатным суммированием первого и второго 16-байтных блоков блока X.
  6.  Вычисляется преобразование (запишем его в терминах псевдоязыка программирования)


 

А также другие работы, которые могут Вас заинтересовать

84258. Способы питания микроорганизмов 33.22 KB
  Пищей обычно называют вещества которые попав в живой организм служат либо источником энергии необходимой для процессов жизнедеятельности либо материалом для построения составных частей клетки. Голофитный способ – живые существа используют питательные вещества всасывая их в виде относительно небольших молекул из водного раствора. Чтобы проникнуть в клетку питательные вещества должны находиться в растворенном состоянии и иметь соответствующий размер молекул. Однако это не означает что микроорганизмы не используют высокомолекулярные...
84259. Химический состав микробной клетки 33.69 KB
  Связанная вода входит в состав коллоидов клетки и с трудом высвобождается из них. С потерей связанной воды нарушаются клеточные структуры и наступает гибель клетки. При удалении свободной воды гибели клетки не происходит.
84260. Механизмы поступления питательных веществ в клетку 32.25 KB
  ЦПМ регулирует не только поступление веществ в клетку но и выход из нее воды разнообразных продуктов обмена и ионов что обеспечивает нормальную жизнедеятельность клетки. Существует несколько механизмов транспорта питательных веществ в клетку: простая диффузия облегченная диффузия и активный транспорт. Транспорт веществ через цитоплазматическую мембрану схематично изображен на рис.
84261. Пищевые потребности и типы питания микроорганизмов 42 KB
  В зависимости от источника углерода микроорганизмы делятся на: автотрофы сами себя питающие которые используют углерод из неорганических соединений углекислого газа и карбонатов; гетеротрофы питаются за счет других – используют углерод из органических соединений. В зависимости от источника энергии различают: фототрофы – микроорганизмы которые в качестве источника энергии используют энергию солнечного света; хемотрофы – энергетическим материалом для этих микроорганизмов являются разнообразные органические и неорганические вещества....
84262. Понятие о конструктивном и энергетическом обмене 38.76 KB
  Из веществ среды перенесенных в клетку собираются строительные блоки из которых формируются биополимеры клетки и синтезируются белки жиры углеводы нуклеиновые кислоты и другие клеточные компоненты. Обмен веществ можно рассматривать как сумму двух явлений: катаболизма энергетического обмена представляющего собой ферментативное расщепление крупных органических молекул с выделением свободной энергии которая запасается в виде макроэргических связей в молекулах АТФ; анаболизма конструктивного обмена представляющего собой синтез...
84263. Энергетический метаболизм, его сущность. Макроэргические соединения. Типы фосфорилирования 35.11 KB
  Энергия образуемая при энергетическом обмене трансформируется в энергию макроэргических связей молекул АТФ. Процесс образования АТФ называется фосфорилированием. Механизм образования АТФ у разных групп микроорганизмов неодинаков. Фотофосфорилирование – образование АТФ при поглощении квантов света молекулами хлорофилла.
84264. Энергетический метаболизм хемоорганогетеротрофов, использующих процессы брожения 35.13 KB
  Образование молекул АТФ при брожении происходит путем субстратного фосфорилирования. Основными стадиями гликолиза являются присоединение фосфатных групп от молекулы АТФ и превращение во фруктозо16дифосфат. При этом образуется свободная энергия достаточная для образования 4 молекул АТФ.
84265. Энергетический метаболизм хемоорганогетеротрофов, использующих процесс дыхания 33.75 KB
  При этом на каждые 2 атома водорода поступающих в дыхательную цепь синтезируются 3 молекулы АТФ. Таким образом суммарный энергетический эффект процесса окисления одной молекулы глюкозы теоретически составляет 38 молекулы АТФ причем 2 молекулы АТФ образуются в результате субстратного фосфорилирования а 36 АТФ – при окислительном фосфорилировании.
84266. Понятие о чистых и накопительных культурах микроорганизмов 34.34 KB
  При культивировании происходит рост культуры – физиологический процесс в результате которого увеличивается биомасса – масса клеточного вещества данного микроорганизма. Для выделения чистой культуры используют плотные питательные среды на которых каждая клетка вырастает в виде изолированной колонии – популяции микроорганизмов одного вида. Перед выделением чистой культуры из какоголибо пищевого продукта или природного субстрата например: почвы воды в котором данный микроорганизм находится в небольших количествах вначале получают...