Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Процедура формирования подключей






Рис. 1.2 Формирование подключей

На каждом цикле (рис. 1.2) из ключа X длиной 56бит формируется ключ Xi размером 48 бит. Сам ключ X размещается в восьмибайтовом слове, причем восьмые разряды каждого байта являются контрольными и в ключ не входят. Перед шифрованием, в соответствии с процедурой выбора PC1 (табл. 1.2), из X выбираются 56 бит, которыми заполняются два регистра (C и D) длиной 28 бит каждый. В дальнейшем, при входе в очередной цикл с номером i, регистры сдвигаются циклически влево. Величина сдвига зависит от номера цикла, ноявляется фиксированной и заранее известна. После сдвига оба подблока объединяются в порядке (C, D). Затем, в соответствии с функцией выбора PC2 (табл. 1.3), из них выбираются 48 бит подключа Xi. Шифрование и расшифровывание отличаются направлением сдвигов (табл. 1.4).

Таблица 1.2 Преобразование PC1

Заполнение С Заполнение D
                           
                           
                           
                           

Таблица 1.3 Преобразование PC2

               
               
               
               
               
               

Выбор битов по таблицам 1.2–1.4 из соответствующих блоков производится следующим образом. Таблица рассматривается как последовательность ее строк, записанных друг за другом, начиная с первой строки. Биты блока данных соответствующей длины нумеруются слева направо, начиная с единицы. Каждый элемент s таблицы рассматривается, как номер бита bs в блоке данных. Преобразование заключается в замене всех элементов s на биты bs.

Таблица 1.4. Соответствие сдвигов номерам циклов DES

Номер цикла                                
Сдвиг влево (шифрование)                                
Сдвиг вправо (расшифровывание)                                

 

Цикловая функция производит следующие действия.

1. Расширение блока Ri-1 до 48 бит за счет повторения битов блока с помощью функции расширения EP (табл. 1.5).

2. Поразрядное сложение результата с ключомXi.

3. Преобразование полученной суммы с помощью замены (используя так называемые S-блоки), в результате которого получается блок длиной 32 бит.

4. Применение перестановки P (табл. 1.6), что дает значение функции
Y = f(R, X).

Таблица 1.5 Преобразование EP Таблица 1.6 Перестановка P

                             
                             
                             
                             
                             
                             
                             
                             





© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.