У этого термина существуют и другие значения, см.
Mercy.
Mercy — криптоалгоритм, реализующий блочное шифрование и предназначенный для шифрования жестких дисков. Разработан[1] британцем Полом Кроули в 2000 году. Размер блока нетипично объемен и составляет 4096 бит. Шифрование проводится с использованием 16-байтового ключа. Помимо кодируемой информации и ключа алгоритмом используются «твики» (tweaks) — подобия ключей, применяющиеся для обеспечения дополнительной безопасности. Блоки в каждом раунде кодируются общим ключом, при этом каждому блоку соответствует «твик», привязанный к индексу блока и никак не зависимый от ключа.
Основой для Mercy выступает 6-раундная сеть Фейстеля. Функция преобразования каждого раунда использует привязанную к ключу модель конечного автомата, которая заимствует часть своей структуры у архитектуры потокового шифра WAKE. В качестве преобразующей функции используются зависимые от ключа идеальные S-блоки замены. Используемые S-блоки схожи по конструкции с блоками, использующимися в стандарте AES.
В 2001 году против Mercy была проведена[2] успешная публичная атака с использованием дифференциального криптоанализа. Алгоритм крайне неустойчив — статистическая атака успешно работает против шести-, а также семи-раундной разновидностей алгоритма. На использование алгоритма не накладывается никаких лицензионных ограничений, исходный код находится в открытом доступе.
Примечания
Ссылки