Перейти к содержанию

Mercy (шифр)

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
Mercy
Создатель Пол Кроули
Опубликован 2000 г.
Размер ключа 128 бит
Размер блока 4096 бит
Число раундов 6

Mercyкриптоалгоритм, реализующий блочное шифрование и предназначенный для шифрования жестких дисков. Разработан[1] британцем Полом Кроули в 2000 году. Размер блока нетипично объемен и составляет 4096 бит. Шифрование проводится с использованием 16-байтового ключа. Помимо кодируемой информации и ключа алгоритмом используются "твики" (tweaks) — подобия ключей, применяющиеся для обеспечения дополнительной безопасности. Блоки в каждом раунде кодируются общим ключом, при этом каждому блоку соответствует "твик", привязанный к индексу блока и никак не зависимый от ключа.

Основой для Mercy выступает 6-раундная сеть Фейстеля. Функция преобразования каждого раунда использует привязанную к ключу модель конечного автомата, которая заимствует часть своей структуры у архитектуры потокового шифра WAKE. В качестве преобразующей функции используются зависимые от ключа идеальные S-блоки замены. Используемые S-блоки схожи по конструкции с блоками, использующимися в стандарте AES.

В 2001 году против Mercy была проведена[2] успешная публичная атака с использованием дифференциального криптоанализа. Алгоритм крайне неустойчив — статистическая атака успешно работает против шести-, а также семи-раундной разновидностей алгоритма. На использование алгоритма не накладывается никаких лицензионных ограничений, исходный код находится в открытом доступе.

Примечания

  1. Mercy: a fast large block cipher for disk sector encryption. www.ciphergoth.org. Дата обращения: 29 апреля 2016. Архивировано 10 марта 2016 года.
  2. Paul Crowley. ciphergoth.org: Mercy: Scott Fluhrer's differential attack. www.ciphergoth.org. Дата обращения: 29 апреля 2016. Архивировано 4 марта 2016 года.

Ссылки