Спрощений Data Encryption Standart
На рисунку 1 наведена структура спрощеної схеми шифрування DES (Data Encryption Standart). На вхід схеми кодування подається 8 бітовий відкритий текст та 10 бітовий ключ. Результатом роботи схеми є 8 бітовий шифротекст. Схема декодування приймає на вхід 8 бітовий шифротекст та 10 бітовий ключ та виробляє на виході 8 бітовий відкритий текст.
Рисунок 1. Спрощена схема DES
Алгоритм кодування складається із 5 функцій: початкової перестановки IP, функції fK, яка включає в себе як перестановку так і заміну, просту перестановку SW, яка переставляє праву та ліву частини даних, знову функцію fK, та кінцеву перестановку IP-1. Алгоритм кодування можна записати наступним чином:
шифротекст = IP-1 (fK2 (SW (fK1 (IP (відкритий текст)))))
При цьму ключі K1 та K2 визначаються як
K1 = P8 (Зсув (P10 (ключ))),
K2 = P8 (Зсув (Зсув (P10 (ключ))))
Алгоритм декодування має вигляд:
відкритий текст = IP-1 (fK1 (SW (fK2 (IP (шифротекст)))))
Генерація ключа
Перестановка P10 має вигляд: (3, 5, 2, 7, 4, 10, 1, 9, 8, 6), тобто
P10(k1, k2, k3, k4, k5, k6, k7, k8, k9, k10) = (k3, k5, k2, k7, k4, k10, k1, k9, k8, k6)
Перестановка P8 визначається як (6, 3, 7, 4, 8, 5, 10, 9).
Рисунок 2. Генерація ключів
Блок LS-1 виконує циклічний зсув вліво на 1 біт, а блок LS-2 – циклічний зсув вліво на 2 біти.
Алгоритм кодування
Вхідний відкритий 8 бітовий текст спочатку подається на перестановку IP:
IP = (2, 6, 3, 1, 4, 8, 5, 7)
В кінці алгоритму буде використана обернена перестановка IP-1:
IP-1 = (4, 1, 3, 5, 7, 2, 8, 6)
При цьому справедлива рівність: IP-1 ( IP(X)) = X
Рисунок 3. Детальна схема шифрування DES
Функція fK є комбінацією функцій перестановки та заміни. Позначимо через Lта R ліві та відповідно праві 4 біти 8 - бітового входу до fK. Якщо позначити через F відображення 4 бітових слів у 4 бітові (не обов’язкого взаємно однозначне), то функцію fK можна визначити так: