Реферат: Спрощений Data Encryption Standart

Название: Спрощений Data Encryption Standart
Раздел: Рефераты по астрономии
Тип: реферат

Реферат на тему:

Спрощений 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 (fK 2 (SW (fK 1 (IP (відкритий текст)))))

При цьму ключі K1 та K2 визначаються як

K1 = P8 (Зсув (P10 (ключ))),

K2 = P8 (Зсув (Зсув (P10 (ключ))))

Алгоритм декодування має вигляд:

відкритий текст = IP-1 (fK 1 (SW (fK 2 (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 можна визначити так:

fK (L, R) = (L Å F(R, Ki ), R)

Опишемо структуру відображення F. Блок розширення / перестановки E/P, який на вхід приймає 4 бітове число, має вигляд E / P = (4, 1, 2, 3, 2, 3, 4, 1). Після операції XOR результату блоку E / P з одним із підключей, ліві 4 біти подаються на таблицю S0, а праві 4 біти – на матрицю S1.

На вхід S матриці подається 4 бітове число. Перший та четвертий біти утворюють двобітове число – номер рядка, а другий та третій біти – номер стовпчика. Наприклад, якщо на вхід матриці S1 подається 1011, то знаходимо число, яке знаходиться в матриці S1 на перетині рядка 11 (третій) та стовпчика 01 (перший). Це число 1 (нумерація рядків та стовпчиків починається з 0). Результатом проходження інформації через S матрицю є двобітове число. Отже S1(1011) = 01.

S0 = S1 =

Результат роботи S матриць подається на перестановку P4 = (2, 4, 3, 1).

Функція SW міняє місцями праві та ліві 4 біти.

Структура S матриці

Нехай S(a, b, c, d) = (q, r). q та r є нелінійними функціями від a, b, c, d. Наприклад, в матриці S0 результуючі біти зв’язані з вхідними наступними нелінійними рівняннями:

q = abcd + ab + ac + b + d

r = abcd + abd + ab + ac + ad + a + c + 1