Вы находитесь на странице: 1из 4

Практическое занятие № 1

АЛГОРИТМ ШИФРОВАНИЯ DES


Цель работы. Провести один цикл ручного расчета шифрования
по алгоритму DES.

1. КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ


Базовый алгоритм DES (Data Encryption Standart – стандарт шифро-
вания данных) оперирует с 64-разрядными двоичными кодовыми ком-
бинациями – блоками. В стандарте ASCII ОТ
это соответствует 8 символам текстовых 64
данных [1].
Структура базового алгоритма DES IP
приведена на рис. 1. Он имеет два 64-раз-
рядных входа открытого текста ОТ и 32 32
K
ключа K, и 64-разрядный выход. Вход- 64 K1
ное слово вначале подвергается пере-
становке IP, являющейся функцией пе- Ki f
ремешивания исходных бит по прави- F(K)
48
лу, приведенному в виде матрицы на
рис. 2. Затем (и это главный этап шиф- K16
рования) переставленное 64-разрядное
i = 1…16
слово подвергается 16-кратной нели-
32 32
нейной процедуре, выделенной на
рис. 1 штриховыми линиями. Сущность
этой процедуры состоит в том, что вна-
чале 64-разрядный блок разбивается на IP–1
два 32-разрядных слова Li и Ri, второе 64 Вых
слово Ri подвергается нелинейному пре-
образованию f(Ri, Ki), после чего сумми- Рис. 1. Базовый алгоритм DES

5
руется с первым: Li f(Ri, Ki). На следующей итерации эти слова ме-
няются ролями, т. е. нелинейному преобразованию подвергается
результат суммирования. Таким образом, алгоритм итерационной
процедуры примет вид:
Li+1 = Ri; Ri+1 = Li f(Ri, Ki), i = 1, …, 16. (1)
Исходный 64-разрядный ключ подвергается описанной ниже про-
цедуре удлинения F(K), в результате чего образуется шестнадцать
48-разрядных ключей Ki, i = 1, …, 16, каждый из которых в соответст-
вии с (1) принимает участие в соответствующей i-й итерационной про-
цедуре. Из 64 разрядов исходного ключа, называемого в стандарте
KEY, независимыми являются 56, остальные (8-й, 16-й, 24-й, …, 64-й)
образуют побайтный контроль на четность.
После осуществления шестнадцати последовательных итераций
два 32-разрядных слова объединяются в одно 64-разрядное и подвер-
гаются конечной перестановке IP–1, жестко связанной с исходной. Пе-
рестановка IP–1 в виде матрицы 8 × 8 показана на рис. 3.

Рис. 2. Матрица исходных Рис. 3. Матрица конечных


перестановок IP перестановок IP–1

Нелинейная процедура f имеет алгоритм, представленный на рис. 4.


Он состоит из процедуры расширения 32-разрядного слова до 48-раз-
рядного (это нужно для выравнивания с длиной ключа Ki) путем по-
втора части разрядов по алгоритму Е. Сущность алгоритма Е пред-
ставлена матрицей на рис. 5. Затем полученное слово поразрядно
суммируется по модулю 2 с ключом Ki и разбивается на восемь
6-разрядных слов. Каждое из 8 полученных слов является адресом

6
Рис. 4. Алгоритм преобразования f(Ri, Ki)
в матрице подстановок размером 16 × 4 по принципу: 1-й и 6-й разря-
ды – код номера строки; разряды 2-й, …, 5-й – номер столбца (напри-
мер, код 101101 означает четвертую строку с номером 3 (код 11) и
шестой столбец (код 0110)). Матрица подстановок (так называемый
S-блок) в каждой из 4 строк содержит число от 0 до 15, причем в каж-
дой строке одно из чисел представлено однократно, а в строках они
переставлены случайным образом. Матрицы Si, i =1, …, 8 приведены в
таблице. В результате каждое из восьми 6-разрядных слов заменяется
на 4-разрядное. Полученное результирующее 32-разрядное слово под-
вергается конечной перестановке P в соответствии с матрицей, пред-
ставленной на рис. 6, и является результатом процедуры f(Ri, Ki).

Рис. 5. Процедура уширения Е Рис. 6. Матрица перестановок P

7
Thank you for evaluating AnyBizSoft PDF to Word.

You can only convert 3 pages with the trial version.

To get all the pages converted, you need to purchase the software from:

http://www.anypdftools.com/buy/buy-pdf-to-word.html