Основы ИБ. Лекции 1. Криптография с симметричными ключами. Лекция. Криптография с симметричными ключами. Шифры подстановки Шифр Цезаря
Скачать 431.82 Kb.
|
Пример преобразование через S-блок: берем блок B3 = 101111 первый и последний биты B3 =>11 являются двоичной записью десятичного числа а, 0<=a<=3, поэтому строки таблицы S3 нумеруются от 0 до 3 средние 4 бита =>0111 представляют десятичное число b, 0<=b<=15, столбцы таблицы S3 нумеруются от 0 до 15. пара чисел (а, b) определяет десятичное число, находящееся в пересечении строки а и столбца b. Двоичное представление этого числа дает B'3 . В нашем случае a = 11 = 3, b = 0111 = 7, а десятичное число, определяемое парой (3,7), равно 7. двоичное представление числа 7 B'3=0111. Пример таблицы в двоичном виде, преобразование B5 = 011011 через S5-блок B'5 = 1001
Снова получаем 32 бита. - все 8 блоков по 4 бита пропускаются через P-блок Значение функции f(Ri - 1,ki) (32 бит) получается перестановкой Р, применяемой к 32-битовому блоку B'1B'2...B'8. Перестановка Р задана таблицей 4.
f(Ri - 1,ki) = P(B'1B'2...B'8) Согласно таблице 4, первые четыре бита результирующего вектора после действия функции f — это биты 16, 7, 20, 21 вектора B'1B'2...B'8 Рис. f-функция Генерирование ключей ki для каждого раунда. Раундовые ключи ki получаются из начального ключа k добавлением бит из блока данных (64 бит = 8 байтов или 8 символов в ASCII) таким образом. Восемь битов, находящих в позициях 8, 16, 24, 32, 40, 48, 56, 64 добавляются в ключ k таким образом чтобы каждый байт содержал нечетное число единиц. Затем делают перестановку для расширенного ключа (кроме добавляемых битов 8, 16, 24, 32, 40, 48, 56, 64). Такая перестановка определена как в таблице 5.
Эта перестановка определяется двумя блоками C0 и D0 по 28 бит каждый. Первые 3 бита C0 есть биты 57, 49, 41 расширенного ключа. А первые три бита D0 есть биты 63, 55, 47 расширенного ключа. Ci,Di i=1,2,3…получаются из Ci - 1,Di - 1 одним или двумя левыми циклическими сдвигами согласно таблице 6.
Ключ ki, i=1,…16 состоит из 48 бит, выбранных из битов вектора CiDi (56 бит) согласно таблице 7. Первый и второй биты ki есть биты 14, 17 вектора CiDi
Получение раундовых ключей Конечная перестановка Конечная перестановка IP - 1 действует на T16 и используется для восстановления позиции. Она является обратной к перестановке IP. Конечная перестановка определяется таблицей 8.
Режимы использования DES (ECB — Electronic Code Book) - каждый блок шифруется отдельно. оригинальная битовая карта криптограмма в режиме ECB другие режимы шифрования (СВС — Cipher Block Chaining) - режим сцепления блоков. Каждый очередной блок, перед зашифровыванием складывается по модулю 2 со следующим блоком открытого текста. Рис. СВС - режим сцепления блоков Существуют и другие режимы использования DES. |