Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Защита Информации - шпоры.docx
Скачиваний:
22
Добавлен:
22.09.2019
Размер:
1.73 Mб
Скачать
  1. Алгоритм вычисления ключей для des.

Алгоритм получения ключей (48-битных из 64-битных)

K(i) i=1-16

На каждой итерации используется новое значение ключа K(i), которое вычисляется из начального ключа K.

К представляет собой 64-битовый блок с 8 битам контроля по четности, расположенных в позициях 8,16,24,32,40,48,56,64.

Для удаления контрольных битов и перестановки остальных используется функция G первоначальной подготовки ключа.

64->56

G

57 49 41 33 25 17 09

01 …………………

10………………….

19………………..... С(0)

63…………………. D(0)

07 …………………

14………………….

24 12 04

Результат преобразования G(K) разбивается на 2 28битовых блока C(0) и D(0). После определения С(0) и D(0) рекурсивно определяются C(i) и D(i). Для этого применяют циклический сдвиг влево на 1 или 2 бита в зависимости от номера итерации, как показано на таблице 7.

Полученное значение C(i)D(i) вновь перемешивается в соответствии с матрицей H (48-битная).

14 17 11 24 01 05

03………………

23………………

16………………

41………………

30………………

44………………

46………………

K(i)=H(C(i)D(i))

Восстановление исходного текста осуществляется по тому же принципу, но в начале используется ключ K(15)и так до К(1).

  1. Режимы работы алгоритма des

Для наиболее полного удовлетворения всех требования, предъявляемых к коммерческим системам шифрования, организовано несколько режимов работы алгоритма DES.

Наибольшее распространение получили режимы:

ECB – электронный шифро-блокнот (Electronic Codebook)

CBC – цепочка цифровых блоков (Cipher Block Chaining)

CFB – цифровая обратная связь (Cipher Feedback)

OFB – внешняя обратная связь (Output Feedback)

Каждому из режимов свойственны свои достоинства и недостатки, что обуславливает их области применения.

Режим ECB хорошо подходит для шифрования ключей

Режимы CBC и CFB пригодны для аутентификации

Режим CFB также пригоден для шифрования отдельных символов

Режим OFB часто используется в спутниковых системах связи

DES-ECB

В этом режиме исходный файл M разбивается на 34-битовые блоки по 8 байт. Каждый из этих блоков кодируется независимо с использованием 1-го ключа шифрования.

Данный алгоритм не рекомендуется использовать для расширения .EXE файлов, так как 1ый блок (заголовок файла) является удачным началом для взлома всего шифра. Однако, в силу своей простоты, этот режим наиболее популярен в любительских разработках.

DES-CBC

Исходный текст разбивается на 64 битовые блоки. 1-ый блок М1 складывается по модулю 2 с 64-битным начальным вектором, который меняется ежедневно и держится в секрете. Полученная сумма затем шифруется по алгоритму DES с использованием ключа, известного и отправителю и получателю. Полученный 64-битный блок складывается по модулю 2 со вторым блоком исходного текста и аналогично получают 2 блок зашифрованного текста и так далее. Процедура повторяется, пока не зашифруются все блоки исходного текста.

C(i) = DES (M(i) XOR C(i-1)) – шифрование

C(0) = IV

M(i) = C(i-1) XOR DES-1 (C(i)) - расшифрование

Достоинством данного режима является то, что он не позволяет накапливаться ошибке при передаче. Блок M(i) является функцией C(i) и C(i-1), поэтому ошибка при передаче приведет к потере только 2 блоков исходного текста.

DES-CFB

Размер блока может отличаться от 4.

Исходный файл М считывается последовательными t битными блоками (t<=64). Остаток дописывается нулями либо пробелами. 64 битный сдвиговый регистр в начале содержит вектор инициализации IV выровненный по правому краю (младшие регистры). Для каждого сеанса использования используется новый ключ.

Для всех i блоков шифр записывается

C(i) = M(i) XOR P(i-1)

где P(i-1) – старшие t битов операции DES(C(i-1))

С(0) = IV

Восстановление по обратному алгоритму M(i) = C(i) XOR P(i-1)

DES-OFB

Отличие от CFB состоит только в методе обновления сдвигового регистра. Осуществляется путем удаления его старших t бит и дописывания справа P(i-1)