МДЦ-2
Эта статья нуждается в дополнительных цитатах для проверки . ( февраль 2019 г. ) |
В криптографии , MDC-2 ( код обнаружения модификации 2 , иногда называемый Мейером-Шиллингом [ нужна ссылка ] стандартизированный в ISO 10118-2) — это криптографическая хэш-функция . MDC-2 — это хэш-функция, основанная на блочном шифре с доказательством безопасности в модели идеального шифра. [1] Длина выходного хеша зависит от используемого базового блочного шифра.
Алгоритм [ править ]
Для данного сообщения для хеширования и заданной функции шифрования блочного шифра , алгоритм MDC-2 работает следующим образом. Позволять быть длиной блока, две разные константы размера . Если где каждый имеет размер , затем хэш сообщения предоставлено:
- для к :
- возвращаться
Хэши MDC-2DES [ править ]
Когда MDC-2 использует блочный шифр DES , 128-битные (16-байтовые) хэши MDC-2 обычно представляются как 32-значные шестнадцатеричные числа. выбирается как 8-байтовая строка 5252525252525252 и выбирается как 8-байтовая строка 2525252525252525 (записанная в виде шестнадцатеричных цифр). Кроме того, перед каждой итерацией первый байт A[0] пересчитывается как (A[0] и 0x9f) ^ 0x40 и первый байт B[0] пересчитывается как (B[0] & 0x9f) ^ 0x20.
Ниже демонстрируется 43-байтовый ввод ASCII (который дополнен пятью нулевыми байтами, поэтому его длина кратна размеру блока DES, равному 8 байтам) и соответствующий хэш MDC-2:
MDC2("The quick brown fox jumps over the lazy dog")
= 000ed54e093d61679aefbeae05bfe33a
Даже небольшое изменение в сообщении (с вероятностью) приведет к совершенно другому хешу, например, к изменению d
к c
:
MDC2("The quick brown fox jumps over the lazy cog")
= 775f59f8e51aec29c57ac6ab850d58e8
Хэш строки нулевой длины:
MDC2("") = 52525252525252522525252525252525
Патентные проблемы [ править ]
MDC-2 был защищен патентом США № 4,908,861 , выданным 13 марта 1990 года, но поданным IBM 28 августа 1987 года. Из-за проблем с патентами поддержка MDC-2 была отключена в OpenSSL в большинстве дистрибутивов Linux и не реализована многими. другие криптографические библиотеки. Это реализовано в libgcrypt от GPG .
Срок действия патента истекал 28 августа 2007 г., через двадцать лет после даты подачи заявки. Фактически срок его действия истек в 2002 году. [2] потому что IBM не заплатила плату за продление. Канадский патент не был продлен, и европейский патент не был выдан, поэтому теперь MDC-2 можно свободно использовать.
См. также [ править ]
Примечания [ править ]
- ^ Стейнбергер, Джон (23 июня 2007 г.). «Неразрешимость конфликтов MDC-2 в модели идеального шифрования» . Достижения в криптологии – EUROCRYPT 2007 . Спрингер-Верлаг. стр. 34–51. дои : 10.1007/978-3-540-72540-4_3 . Проверено 31 января 2008 г.
- ^ «ВПТЗ США – Плата за поддержание патента» . Патентное ведомство США. 13 марта 2002 года . Проверено 31 января 2008 г.
{{cite journal}}
: Для цитирования журнала требуется|journal=
( помощь ) [ постоянная мертвая ссылка ] (Нажмите «Библиографические данные».)