Международный алгоритм шифрования данных
| Международный алгоритм шифрования данных (IDEA) | |
|---|---|
| Проход (или раунд ) шифрования IDEA | |
| Общий | |
| Дизайнеры | Джеймс Мэсси , Сюэцзя Лай |
| Первая публикация | 1991 г. |
| Приходящий из | ПЭС |
| Преемники | MMB , MESH , Акеларре , IDEA NXT (FOX) |
| Подробности | |
| Размер ключа | 128 бит |
| Размер блока | 64 бит |
| Структура | Сеть замещения и перестановки |
| Количество проходов | 8,5 |
| Улучшенный криптоанализ | |
| Самая известная атака ( 2007 г.) была проведена с помощью дифференциального криптоанализа , который взломал урезанную версию IDEA всего за 6 циклов шифрования (стандартный алгоритм имеет 8,5), но потребовал 2 64 - 2 52 открытого текста. | |
Международный алгоритм шифрования данных ( IDEA ) представляет собой блочный криптографический алгоритм, разработанный Сюэцзя Лаем и Джеймсом Мэсси из Федерального технологического института Цюриха и впервые опубликованный в 1991 году . Алгоритм должен был стать заменой DES .
Первоначально он родился в 1990 году как PES ( Proposed Encryption Standard ): позже он был улучшен и представлен в 1991 году как Improved PES . В 1992 году название было изменено на нынешнее IDEA.
Алгоритм, рожденный в результате исследовательского контракта с Hasler Foundation (позже приобретенный Ascom-Tech AG), был запатентован в разных странах, но оставался свободно используемым в некоммерческом программном обеспечении; название «IDEA» также было запатентовано. Срок действия последних патентов истек в 2012 году, и теперь IDEA можно использовать бесплатно.
Алгоритм IDEA рекомендован различными органами по стандартизации, такими как ISO , ITU и Swiss Telebanking Security Standard, за его высокую надежность: он до сих пор остается неприкосновенным. Это также алгоритм, используемый программным обеспечением безопасности PGP .
Описание алгоритма
IDEA — это алгоритм симметричного блочного шифрования , поэтому для шифрования и дешифрования требуется один ключ. Он работает с 64-битными блоками данных, используя 128-битный ключ, выполняя серию из 8 идентичных шагов (определяемых в английском раунде ) , во время которых выполняются следующие операции, все с 16-битными числами (см. рисунок, вставленный в описательную таблицу ). алгоритма):
- XOR (исключающее ИЛИ), обозначенное синим ⊕;
- дополнительный модуль 2 16 , отмечен
зеленым цветом; - умножение по модулю 2 16 +1 (где полностью цифровое число 0 интерпретируется как 2 16 ), обозначенное красным ⊙.
Вращение ключа
На каждом шаге ключ разбивается на блоки по 16 бит каждый, называемые подключами и обозначаемые на рисунке буквами К1...К6. Из них используются только первые 6: это означает, что при каждом проходе используются только 96 из 128 бит ключа. После каждого прохода (включая последний перед окончательным проходом) ключ поворачивается на 25 бит влево и берутся первые 6 блоков по 16 бит в каждом ключе.
Сеть перестановок и замен
Каждый проход использует 6 подключей и 64-битный блок данных, разделенный на 4 подблока по 16 бит каждый. На каждом шаге 4 подблока умножаются и складываются по модулю 2 16 с 4 подключами, после чего 4 блока, полученные в результате этих вычислений, объединяются два на два с помощью операции XOR для получения 2 блоков по 16 бит. Последние умножаются/добавляются по модулю 2 16 с оставшимися 2 подключами, которые еще не используются на шаге. 2 последних подблока объединяются с помощью XOR с 4 подблоками предыдущей операции, чтобы иметь на выходе 4 подблока по 16 бит каждый. В конце 8 из этих шагов выполняется полушаг, называемый «финальное преобразование», в котором последние 4 подблока объединяются с первыми 4 подключами путем умножения и сложения по модулю 2 16 операций .
Безопасность
Алгоритм является одним из самых устойчивых и на сегодняшний день он, похоже, не был нарушен: разработчики IDEA сделали его таким, чтобы он был практически невосприимчив к атакам, проводимым с помощью дифференциального криптоанализа , но также оказался очень устойчивым к атакам, проводимым с помощью линейного криптоанализа. криптоанализа настолько, что на сегодняшний день лучшая атака указывает на то, что только 6 из 8,5 шагов алгоритма могут быть нарушены. Подсчитано, что для атак грубой силы нарушение 128-битного ключа занимает в лучшем случае2 × 10 15 лет на успех.
Выдача патентов
Алгоритм (и название IDEA) запатентован в Австрии , Франции , Германии , Италии , Нидерландах , Испании , Швеции , Швейцарии , Великобритании , Соединенных Штатах Америки и Японии : по этой причине его распространение ограничено, несмотря на то, что он является одним из лучшие и самые безопасные алгоритмы в обращении, несмотря на то, что им разрешено использовать их в некоммерческих приложениях.
ИДЕЯ NXT
Компания, владеющая правами, MediaCrypt, опубликовала в 2005 году преемника IDEA под названием IDEA NXT (ранее известного как FOX ): в этой улучшенной версии ключ может иметь любую длину до 256 бит, блоки данных могут иметь длину до 128 бит. бит и структура основана на схеме Lai-Massey .
Внешние ссылки
- Справочная и производная реализация на embeddedsw.net .