Международният алгоритъм за шифроване на данни (IDEA) е симетричен блоков шифър, разработен от Сюеджиа Лай и Джеймс Маси от ETH Цюрих през 1991 г. IDEA беше предложен като заместител на стандарта за шифроване на данни и е подобрен вариант на по-ранния шифър Proposed Encryption Standard (PES), поради което понякога се споменава и като IPES (Improved PES). Алгоритъмът комбинира различни алгебрични операции, за да постигне силна защита срещу широко известни методи за криптоанализ.
Основни характеристики
- Блокова дължина: 64 бита (четири 16-битови подблока).
- Дължина на ключа: 128 бита.
- Структура: 8,5 кръга — осем пълни кръга и една финална (полу)трансформация.
- Използвани операции: модулно умножение (по модул 2^16+1), модулно събиране (по модул 2^16) и битово XOR (ексклузивно ИЛИ).
- Брой подключове: 52 (всеки по 16 бита).
Как работи IDEA (принцип на действие)
IDEA разделя 64-битовия блок на четири 16-битови подблока и обработва данните чрез серия от трансформации, които включват паралелни операции върху тези подблокове. Във всеки от осемте кръга се прилагат шест подключа, а в последната полутрансформация — четири. Последователността и комбинацията от трите вида операции (умножение, събиране, XOR) са избрани така, че да създадат силна нелинейност и да затруднят алгебричния анализ.
Генериране на подключове (key schedule)
От 128-битовия главен ключ се извличат последователности от 16-битови подключове. Първите осем подключа се вземат директно от ключа (К1 е най-ниското 16-битово поле, К8 — най-високото). След това ключът се върти наляво с 25 бита, за да се получи следващата група от осем подключа; така се правят общо шест такива завъртания, които генерират всички 52 подключа.
За декриптиране подключовете се преобразуват: тези, използвани за умножение, се заменят с мултипликативните им обратни стойности по модул 2^16+1 (65537), а тези, използвани за събиране, — с адитивните им обратни по модул 2^16 (65536); редът на подключовете също се обръща.
Специфика на аритметиката
Две важни модула се използват в IDEA:
- Модулно събиране по 2^16 (т.е. по 65536) за операциите на добавяне.
- Модулно умножение по 2^16+1 (т.е. по 65537) за операциите на умножение. При тази операция стойността 0x0000 се третира като 2^16 (65536), за да се запази инвертируемостта.
Комбинацията от тези две различни групи операции и допълнителното XOR прави алгебричното моделиране по-трудно и създава желаната „алгебрична несъвместимост“ между различните слоеве на криптирането.
Сигурност и криптоанализ
IDEA притежава добро практическо ниво на сигурност при пълния брой кръгове (8,5). Поради 128-битовия ключ, грубата сила чрез брутен форс е практически невъзможна с наличните изчислителни ресурси. Дизайнерите и независими анализатори са изследвали устойчивостта на IDEA към диференциален криптоанализ и линейен криптоанализ, и въпреки че не са докладвани успешни атаки срещу целия алгоритъм, има резултати за по-слабо защитени, съкратени варианти:
- Намерени са атаки срещу намален брой кръгове (до около 6 кръга според публикации към 2007 г.), но те не засягат пълната 8,5-раундова версия за всички ключове.
- Открити са класове слаби ключове (например от Daemen et al., 1994), но те са много рядко срещани и лесно могат да бъдат избегнати при генериране на ключове.
В практиката IDEA се смята за добре проучен и относително сигурен алгоритъм, макар с течение на времето и напредъка на криптоанализа да са идентифицирани повече методи и резултати върху повърхностни/намалени варианти на шифъра.
Производителност и приложения
IDEA е проектиран да работи ефективно на 16-битови платформи и исторически е бил сравнително бърз на такива машини. В софтуер на 32/64-битови машини мултипликациите по модул 65537 могат да направят реализацията по-бавна в сравнение с по-нови алгоритми, оптимизирани за съвременните архитектури.
IDEA стана популярен след включването му в Pretty Good Privacy (PGP) v2.0, след като се установи, че използваният в v1.0 шифър BassOmatic е уязвим. IDEA може да се използва и със стандарта OpenPGP в съвместими реализации.
Патенти, търговска марка и лицензиране
IDEA беше патентован в редица държави и името „IDEA“ е търговска марка. Авторите предоставяха лиценз за нетърговска употреба, а правата за комерсиално лицензиране бяха управлявани от компанията MediaCrypt. Срокът на действие на патентите беше посочен да изтече през 2010–2011 г.; тези патенти оттогава са изтекли и алгоритъмът вече не е обект на ограничителни патентни права в повечето юрисдикции.
Историческо значение и съвременен статус
Към средата на 1990-те IDEA беше считан за един от най-силните и публично достъпни блокови шифри — например Брус Шнайер го описва като „най-добрият и най-сигурен блоков алгоритъм, достъпен за обществеността“ в Applied Cryptography (2nd ed.). С развитието на AES (избран през 2001 г.) и появата на по-бързи и по-ефективни алгоритми, както и поради издаването на патенти в миналото, интересът към IDEA намаля. Днес IDEA остава исторически значим и все още може да се използва, но за нови проекти обикновено се предпочитат съвременни стандарти като AES, които имат по-широка поддръжка и оптимизация за съвременни хардуерни платформи.
Кратко обобщение: IDEA е добре проучен блоков шифър с 64‑битови блокове и 128‑битов ключ, комбиниращ модулно умножение, модулно събиране и XOR за постигане на сигурност. Въпреки че не е най-бързият съвременен алгоритъм и в миналото имаше лицензионни ограничения, патентите са изтекли и алгоритъмът остава валиден избор при специфични сценарии, особено там, където неговите свойства съвпадат с изискванията на приложението.

