оритм в майбутні роки криптоаналізу. Його сьогоднішня популярність пояснюється тим, що він є частиною PGP. br/>
2.3.1 Огляд IDEAявляется блоковим шифром, він працює з 64-бітовими блоками відкритого тексту. Довжина ключа - 128 бітів. Для шифрування і дешифрування використовується один і той же алгоритм. Як і інші блокові шифри IDEA використовує і заплутування, і розсіяння. Філософія, що лежить в основі проекту, представляє собою "об'єднання операцій з різних алгебраїчних груп". p align="justify"> Змішуються три алгебраїчні групи, і всі вони можуть бути легко реалізовані як апаратно, так і програмно:
XOR
Додавання за модулем 2 16
В
- Множення за модулем 216 + 1. (Це операцію можна розглядати як S-блок IDEA.) p align="justify"> Всі ці операції працюють з 16-бітовими подблоков. Цей алгоритм навіть ефективніше на 16-бітових процесорах. p align="justify"> У курсовій роботі розглядається робота алгоритму в режимі зворотного зв'язку по виходу (OFB).
Цей режим використовує змінний розмір блоку і зсувний регістр, ініціалізіруемих наступним чином - вхідний блок спочатку містить вектор ініціалізації, вирівняний по правому краю (рис.3). При цьому для кожного сеансу шифрування даних необхідно використовувати нове початкове стан регістра, яке повинно пересилатися по каналу відкритим текстом. p align="justify"> Покладемо M = M1, M2, ..., Mn. Для всіх i = 1 ... n Сi = Mi Г… Рi, де Рi - старші k бітів операції IDEA (C i -1 ). Оновлення зсувного регістру здійснюється шляхом відкидання старших k бітів і дописування праворуч Pi.
Всі три операції несумісні в тому сенсі, що:
ніяка пара з цих трьох операцій не задовольняє асоціативному закону, наприклад а + (b Г… с) В№ (а + b) Г… с;
ніяка пара з цих трьох операцій не задовольняє дистрибутивному законом, наприклад а + (b Г„ с) В№ (а + b) Г„ (а + с).
Комбінування цих трьох операцій забезпечує комплексне перетворення входу, істотно ускладнюючи криптоанализ IDEA в порівнянні з DES, який базується виключно на операції "виключає АБО".
Загальна схема алгоритму IDEA наведена в ДОДАТКУ 1. 64-бітовий блок даних ділиться на чотири 16-бітових субблока. Ці чотири субблока стають входом в перший цикл алгоритму. Всього виконується вісім циклів. Між циклами ...