Курсовая работа: Программная реализация алгоритма шифрования DES. Режим ECB

Затем выполняется итеративный процесс шифрования, состоящий из 16 циклов. Пусть Ti -результат I-й итерации:

Ti =Li Ri ,

где Li =t1 t2… t32 ; Ri =t33 t34 …t64. Тогда результат I-й итерации описывается следующими формулами:

Li =Ri-1 , i=1,2,…,16;

Ri =Li-1 xor f(Ri-1 ,Ki ), i=1,2,…,16.

Функции fназывается функцией шифрования. Ее аргументами являются последовательность Ri -1, получаемая на предыдущем шаге итерации, и 48-битовый ключ Ki , который является результатом преобразования 64-битового ключа шифра К.

На последнем шаге итерации получают последовательность R16 и L16 , который конкатенируются в 64-битовую последовательность R16 L16 .

По окончании шифрования осуществляется восстановление позиций битов с помощью матрицы обратной перестановки IP-1 (таблица 2).

Таблица 2

Матрица обратной перестановки IP-1

40 08 48 16 56 24 64 32

39 07 47 15 55 23 63 31

38 06 46 14 54 22 62 30

37 05 45 13 53 21 61 29

36 04 44 12 52 20 60 28

35 03 43 11 51 19 59 27

34 02 42 10 50 18 58 26

33 01 41 09 49 17 57 25

Процесс расшифрования данных является инверсным по отношению к процессу шифрования. Все действия должны быть выполнены в обратном порядке. Это означает, что расшифровываемые данные сначала переставляются в соответствии с матрицей IP-1 , а затем над последовательностью битов R16 L16 выполняются те же действия, что и в процессе шифрования, но в обратном порядке.

Итеративный процесс расшифрования может быть описан следующими формулами:

Ri-1 = Li , i = 1, 2, ..., 16;Li-1 = Ri xor f(Li , Ki ), i = 1, 2, ..., 16 .

На 16-й итерации получают последовательности L0 и R0 , которые конкатенируют в 64-битовую последовательность L0 R0 .

Затем позиции битов этой последовательности переставляют в соответствии с матрицей IP. Результат такой перестановки - исходная 64-битовая последовательность.

Теперь рассмотрим функцию шифрования f(Ri-1, Ki ). Она показана на рисунке 3.

Для вычисления значения функции fиспользуются:

- функция Е (расширение 32 бит до 48);

- функция S1,S2,…,S8 (преобразование 6-битового числа в 4-битовое);

- функция Р (перестановка битов в 32-битовой последовательности).


Рисунок 3 - Вычисление функции f(R(i-1), K(i))

К-во Просмотров: 638
Бесплатно скачать Курсовая работа: Программная реализация алгоритма шифрования DES. Режим ECB