В криптографии, МЦС-2 ( Модификация кода с обнаружением 2, иногда называемый Мейер-Шиллинг, стандартизированы в ISO 10118-2) является криптографической хэш - функции. MDC-2 - это хэш-функция, основанная на блочном шифре с доказательством безопасности в модели идеального шифра. Длина выходного хэша зависит от используемого блочного шифра.
Для заданного сообщения для хеширования и заданной функции шифрования блочного шифра алгоритм MDC-2 действует следующим образом. Позвольте быть длиной блока, две разные константы размера. Если где у каждого есть размер, то хеш сообщения определяется следующим образом:
Когда MDC-2 использует блочный шифр DES, 128-битные (16-байтовые) хэши MDC-2 обычно представляются как 32-значные шестнадцатеричные числа. выбирается как 8-байтовая строка 5252525252525252 и выбирается как 8-байтовая строка 2525252525252525 (записанная как шестнадцатеричные цифры). Кроме того, перед каждой итерацией первый байт A [0] из пересчитывается как (A [0] amp; 0x9f) ^ 0x40, а первый байт B [0] из пересчитывается как (B [0] amp; 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 и не реализована многими. другие криптографические библиотеки. Он реализован в GPG libgcrypt.
Срок действия патента истекал 28 августа 2007 г., через двадцать лет после даты подачи заявки. Фактически он истек в 2002 году, потому что IBM не уплатила пошлину за продление. Канадский патент не был продлен, и европейский патент не был выдан, поэтому теперь MDC-2 можно свободно использовать.
|journal=
( помощь ) (Щелкните «Библиографические данные».)