ify"> o D=D + K 1 mod 2 32,
де A, B, C, D - поточні значення оброблюваних 32-бітових субблоков, а K 0 ... K 43 - фрагменти розширеного ключа.
Аналогічним чином виконується часткове вихідна відбілювання:
o A=A + K 42 mod 2 32
o C=C + K 43 mod 2 32.
У кожному раунді алгоритму виконуються наступні дії:
o t 1=f (B) lt; lt; lt; 5,
o t 2=f (D) lt; lt; lt; 5,
o A=((A? t 1) lt; lt; lt; t 2) + K 2i mod 2 32,
o C=((C? t 2) lt; lt; lt; t 1) + K 2i + 1 mod 2 32,
де t 1 і t 2 - тимчасові змінні, кількість біт обертання на змінне число біт визначається значенням 5 молодших біт параметра (t 1 або t 2), функція f () виконує наступне квадратичне перетворення:
(x)=x * (2x + 1) mod 2 32.
Наприкінці кожного раунду виконується зрушення субблоков.
Переваги алгоритму:
· Проста структура алгоритму полегшує його аналіз.
· Найшвидший з алгоритмів - фіналістів AES на 32-бітних платформах.
· Зашифрування і розшифрування в алгоритмі RC6 практично ідентичні. Недоліки алгоритму:
· Швидкість шифрування при програмної реалізації сильно залежить від того, чи підтримує платформа 32-бітове множення і обертання на змінне число біт.
· RC6 складно реалізуємо апаратно і в умовах обмежених ресурсів.
· Досить складно захищається від атак за часом виконання і споживаної потужності.
· Недостатньо повно підтримує розширення ключів «на льоту».
· Розпаралелювання обчислень при шифруванні алгоритмом RC6 реалізовано з обмеженнями.
1.2.3 Алгоритм ГОСТ 28147-89
ГОСТ 28147-89 - радянський і російський стандарт симетричного шифрування, введений в 1990 році, також є стандартом СНД. Повна назва - «ГОСТ 28147-89 Системи обробки інформації. Захист криптографічний. Алгоритм криптографічного перетворення ».
Структура алгоритму представлена ??далі (рис. 4).
Рис. 4. Алгоритм шифрування ГОСТ 28147-89
Блочний шіфроалгорітм. При використанні методу шифрування з гаммированием, може виконувати функції потокового шіфроалгорітма. ГОСТ 28147-89 - блочний шифр з 256-бітовим ключем і 32 циклами перетворення, що оперує 64-бітними блоками. Основа алгоритму шифру - мережа Фейстеля. Виділяють чотири режими роботи ГОСТ 28147-89: простої заміни, гамування, гамування зі зворотним зв'язком, режим вироблення імітовставки.
Переваги алгоритму: безперспективність силовий атаки, ефективність реалізації і відповідно високу швидкодію на сучасних комп'ютерах, наявність захисту від нав'язування помилкових даних (вироблення имитовставки) і однаковий цикл шифрування у всіх чотирьох алгоритмах ГОСТу, більший ключ в порівнянні з алгоритмом DESX.
Недоліки алгоритму: Основні проблеми ГОСТу пов'язані з неповнотою стандарту в частині генерації ключів і таблиць замін. Вважається, що у ГОСТу існують «слабкі» ключі і таблиці замін, але в стандарті не описує критерії вибору і відсіву «слабких». Також Стандарт не специфікує алгоритм генерації таблиці замін (S-блоків). З одного боку, це може бути додатковою секретною інформацією (крім ключа), а з іншого, піднімає ряд проблем: не можна визначити крипостійкість алгоритму, не знаючи заздалегідь таблиці замін; реалізації алгоритму від різних виробників можуть використовувати різні таблиці замін і можуть бути несумісні між собою; можливість навмисного надання слабких таблиць замін ліцензують органами РФ.
1.2.4 Переваги IDEA перед аналогами
У програмній реалізації на Intel486SX lt; https: //ru.wikipedia/wiki/Intel486SXgt; в порівнянні з DES lt; https: //ru.wikipedia/wiki/Data_Encryption_Standardgt; IDEA в два рази швидше, що є істотним підвищенням швидкості, довжина ключа у IDEA має розмір 128 біт, проти 56 біт у DES, що є гарним поліпшенням проти повного перебору ключів. Ймовірність використання слабких ключів дуже мала і становить 1/264. IDEA швидше алгоритму ГОСТ 28147-89 lt; https: //ru.wikipedia/wiki/%D0%93%D0%9E%D0%A1%D0%A2_28147-89gt; (в програмній реалізації на Intel486SX lt; https: //ru.wikipedia/wiki/Intel486SXgt;). Використання IDEA в паралельних режимах шифрування на процесорах Pentium III lt; https: //ru.wikipedia/wiki/Pentium_IIIgt; і Pentium MMX lt; https: //ru.wikipedia/wiki/Pentium_MMXgt; дозволяє отримувати високі швидкості. У порівнянні з фіналістами AES, 4-way I...