Mercy (шифр)

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

Mercy
Создатель Пол Кроули
Опубликован 2000 г.
Размер ключа 128 бит
Размер блока 4096 бит
Число раундов 6
Тип Сеть Фейстеля

Основой для 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.
  2. Paul Crowley. ciphergoth.org: Mercy: Scott Fluhrer's differential attack. www.ciphergoth.org. Дата обращения: 29 апреля 2016.

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.