тої заміни
кріптосхеми, реалізує алгоритм розшифрування в режимі простої заміни, має той же вигляд, що і при зашіфровиваніем (малюнок 9).
У КЗУ вводять 256 біт ключа, на якому здійснювалося зашифровують. Зашифровані дані, що підлягають розшифруванню, розбиті на блоки Тш, по 64 біта в кожному. Введення будь-якого блокаш = (а1 (32) а2 (32), ..., а31 (32) А32 (32), bl (32), b2 (32), ..., b31 (32), b32 (32)).
в N1, і N2 виробляють так, щоб початкове значення накопичувача N1 мало вигляд
В
, 31, ..., 2, 1 В¬ номер розряду N1;
а початкове заповнення накопичувача N2:
В
, 31, ..., 2, 1 В¬ номер розряду N2;
Розшифрування здійснюється за тим же алгоритмом, що і зашифровувати, з тим зміною, що заповнення накопичувача Х0, Х1, Х2, .., Х7 зчитуються з КЗУ в циклах розшифрування в наступному порядку:
К0, К1, K2, K3, K4, K5, K6, K7, K7, K6, K5, K4, K3, K2, K1, K0, К7, К6, K5, K4, K3, K2, K1, K0, K7, K6, K5, K4, K3, K2, K1, K0.
Рівняння розшифрування мають вигляд
при j = 1 ... 8,
В
при j = 9 ... 31,
В В
пріj = 32,
Отримані після 32 циклів роботи заповнення накопичувачів N1і N2 утворюють блок відкритих даних = (а1 (0) а2 (0), ..., а31 (0) А32 (0), bl (0), b2 (0), ..., b31 (0), b32 (0)).
відповідний блоку зашифрованих даних Тих. При цьому стан накопичувача N1:
В
, 31, ..., 2, 1 В¬ номер розряду N1;
стан накопичувача N2:
В
, 31, ..., 2, 1 В¬ номер розряду N2;
Аналогічно розшифровуються інші блоки зашифрованих даних.
Якщо алгоритм зашифровування в режимі простої заміни 64-бітового блоку Те позначити через А, то
А (Т0) = А (а (0), b (0)) = (a (32), b (32)) = ТШ
В
Рисунок 9 - Схема реалізації режиму простої заміни
Реалізація
Збільшуємо число циклів шифрування і розшифрування до 7 і 3 відповідно:
У таблиці підстановки міняємо стовпці S1 і S7 на S3 і S4 відповідно. Вводимо N1 = 73288197 і N2 = 65612319, k0 = 2891, k1 = 7315:
Зашифровки.
Крок № 1:
А) Розраховуємо значення на виході CM1:
Додаємо до значення N1 ключ К0. p ...