Симметричные криптосистемы. (Лекция 12)

Содержание

Слайд 2

Современные симметричные криптоалгоритмы Потоковые (результат шифрования каждого бита открытого текста зависит

Современные симметричные криптоалгоритмы

Потоковые (результат шифрования каждого бита открытого текста зависит от

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

Потоковые шифры В основе лежит гаммирование. Криптостойкость полностью определяется структурой используемого

Потоковые шифры

В основе лежит гаммирование. Криптостойкость полностью определяется структурой используемого генератора

псевдослучайной последовательности (чем меньше период псевдослучайной последовательности, тем ниже криптостойкость потокового шифра).
Основным преимуществом является высокая производительность. Эти шифры наиболее пригодны для шифрования непрерывных потоков открытых данных (например, в сетях передачи данных или связи).
Слайд 4

Потоковые шифры К наиболее известным относятся: RC4 (Rivest Cipher 4), разработанный

Потоковые шифры

К наиболее известным относятся:
RC4 (Rivest Cipher 4), разработанный Р.Ривестом (R.Rivest);

в шифре RC4 может использоваться ключ переменной длины;
SEAL (Software Encryption ALgorithm) – приспособленный для программной реализации потоковый шифр, использующий ключ длиной 160 бит;
WAKE (Word Auto Key Encryption).
Слайд 5

Блочные шифры К наиболее распространенным способам построения блочных шифров относится сеть

Блочные шифры

К наиболее распространенным способам построения блочных шифров относится сеть Фейстела,

при использовании которой каждый блок открытого текста представляется сцеплением двух полублоков одинакового размера L0||R0. Затем для каждой итерации (раунда) i выполняется следующее:
Li=Ri-1 ;
Ri=Li-1 ⊕ f(Ri-1, ki), где
f – функция шифрования;
ki – внутренний ключ, используемый на i-м раунде шифрования (ki определяется исходным ключом шифрования открытого текста и номером раунда).
Слайд 6

Слайд 7

Совершенный шифр ∀ X, Y p(X|Y)=p(X), где p(X) – вероятность выбора

Совершенный шифр

∀ X, Y p(X|Y)=p(X), где
p(X) – вероятность выбора для шифрования

открытого текста X,
p(X|Y) – вероятность передачи открытого текста X при условии перехвата шифротекста Y.
Слайд 8

Условия построения идеального (абсолютно стойкого) шифра Определены К.Шенноном: ключ шифрования вырабатывается

Условия построения идеального (абсолютно стойкого) шифра

Определены К.Шенноном:
ключ шифрования вырабатывается совершенно случайным

образом;
один и тот же ключ должен применяться для шифрования только одного открытого текста;
длина шифруемого открытого текста не должна превышать длину ключа шифрования.
Слайд 9

Условия К.Шеннона К сожалению, в большинстве случаев выполнение этих условий обеспечить

Условия К.Шеннона

К сожалению, в большинстве случаев выполнение этих условий обеспечить практически

невозможно, хотя короткие и наиболее важные сообщения следует шифровать именно так. Для открытых текстов большой длины главной проблемой симметричной криптографии является генерация, хранение и распространение ключа шифрования достаточной длины.
Слайд 10

Алгоритм DES K – ключ шифрования (длина 64 бита, из которых

Алгоритм DES

K – ключ шифрования (длина 64 бита, из которых 8

битов контрольных), IP – начальная перестановка битов в блоке открытого текста P длиной 64 бита, IP-1 – обратная к IP перестановка, L и R – соответственно левый и правый полублоки (длиной 32 бита) блока P, ki – внутренний ключ шифрования i-го раунда длиной 48 бит (ki=KS(i, K)), f – основная функция шифрования, на вход которой поступает блок длиной 32 бита, а на выходе формируется блок длиной также 32 бита.
Слайд 11

Шифрование блока открытого текста P L0R0=IP(P). Сеть Фейстела с количеством раундов, равным 16. C=IP-1(R16L16).

Шифрование блока открытого текста P

L0R0=IP(P).
Сеть Фейстела с количеством раундов, равным

16.
C=IP-1(R16L16).
Слайд 12

Алгоритм выполнения функции f Расширение Ri-1 до 48 бит путем копирования

Алгоритм выполнения функции f

Расширение Ri-1 до 48 бит путем копирования

16 крайних элементов из 8 четырехбитных подблоков исходного Ri-1 (получение Ri-1’).
Ri-1’= Ri-1’ ⊕ ki.
Выполнение блока подстановки (S-бокса). На выходе блока подстановки получаем текст длиной 32 бита.
Выполнение блока перестановки (P-бокса), иначе называемого блоком проволочной коммутации.
Слайд 13

Режимы работы DES В режиме электронной кодовой книги (Electronic Code Book,

Режимы работы DES

В режиме электронной кодовой книги (Electronic Code Book, ECB)

каждый блок открытого текста зашифровывается независимо от других блоков:
i, 1≤i≤n Ci=Ek(Pi)
Расшифрование в режиме ECB выполняется следующим образом:
∀ i, 1≤i≤n Pi=Dk(Ci).
Слайд 14

Режимы работы DES Режим сцепления блоков шифра (Cipher Block Chaining, CBC):

Режимы работы DES

Режим сцепления блоков шифра (Cipher Block Chaining, CBC): каждый

блок открытого текста перед шифрованием складывается по модулю 2 с предыдущим блоком шифротекста, а первый блок – с вектором инициализации (синхропосылкой) IV (дополнительным параметром шифра, который должен сохраняться и передаваться вместе с ключом шифрования):
∀i, 1≤i≤n Ci=Ek(Pi ⊕ Ci-1), C0=IV.
Расшифрование в режиме CBC выполняется так:
∀i, 1≤i≤n Pi= Ci-1 ⊕ Dk(Ci), C0=IV.
Слайд 15

Режимы работы DES Последний блок шифротекста Cn является функцией ключа шифрования,

Режимы работы DES

Последний блок шифротекста Cn является функцией ключа шифрования, вектора

инициализации и всех блоков открытого текста – кодом аутентификации сообщения (Message Authentication Code, MAC).
Блок MAC может использоваться для проверки подлинности и целостности полученного сообщения с помощью тех же значений ключа и вектора инициализации.
Слайд 16

Режимы работы DES Режим обратной связи по шифротексту (Cipher FeedBack, CFB)

Режимы работы DES

Режим обратной связи по шифротексту (Cipher FeedBack, CFB) использует

регистр замены (сдвига), в который первоначально помещается вектор инициализации. После шифрования блока в регистре замены происходит его сдвиг влево (например, на ¼ длины регистра замены), и сложение по модулю 2 вытесняемой части регистра с очередной порцией открытого текста. Результат последней операции образует очередную порцию шифротекста и одновременно помещается в освободившуюся часть регистра сдвига:
∀ i, 1≤i≤m Ci= Pi ⊕ Ek(Ci-1), C0=IV (m – количество порций открытого текста).
Расшифрование в режиме CFB производится следующим образом:
∀ i, 1≤i≤m Pi= Ci ⊕ Ek(Ci-1), C0=IV.
Слайд 17

Режимы работы DES Последний блок шифротекста зависит ото всех блоков открытого

Режимы работы DES

Последний блок шифротекста зависит ото всех блоков открытого текста,

а также от вектора инициализации и ключа шифрования, поэтому он также может использоваться в качестве кода аутентификации сообщения.
Слайд 18

Режимы работы DES В режиме обратной связи по выходу (Output FeedBack,

Режимы работы DES

В режиме обратной связи по выходу (Output FeedBack, OFB)

также используются регистр замены и вектор инициализации. После шифрования блока в регистре замены и сдвига вытесняемая часть замещает свободную область регистра и одновременно складывается по модулю 2 с очередной порцией открытого текста. Результат последней операции и образует очередную порцию шифротекста:
∀ i, 1≤i≤m Ci= Pi ⊕ Si, Si= Ek(Si-1), S0=IV (m – количество порций открытого текста).
Расшифрование в режиме OFB производится так:
∀ i, 1≤i≤m Pi= Ci ⊕ Si, Si= Ek(Si-1), S0=IV.
Слайд 19

Модификации DES В тройном DES (3-DES) к одному и тому же

Модификации DES

В тройном DES (3-DES) к одному и тому же блоку

открытого текста P функция шифрования применяется трижды с тремя разными ключами (k1, k2 и k3), что обеспечивает увеличение длины ключа окончательного шифрования и количества раундов в три раза:
C=Ek3(Dk2(Ek1(P))).
Расшифрование выполняется следующим образом:
P=Dk1(Ek2(Dk3(C))).
На втором шаге тройного DES используется не функция шифрования, а функция расшифрования, поскольку при k1=k2=k3 результат шифрования по алгоритму 3-DES совпадает с шифрованием по алгоритму DES на ключе k1.
Слайд 20

Модификации DES Недостатком алгоритма 3-DES является снижение производительности шифрования в три

Модификации DES

Недостатком алгоритма 3-DES является снижение производительности шифрования в три раза

по сравнению с алгоритмом DES. Этого недостатка лишен алгоритм DESX:
С=k2 ⊕ Ek(k1 ⊕ P), где
k – ключ DES-шифрования длиной 56 бит;
k1 и k2 – дополнительные ключи шифрования длиной 64 бита каждый.
Общая длина ключа шифрования, используемого в алгоритме DESX, составляет, таким образом, 184 бита. Расшифрование шифротекста по алгоритму DESX производится следующим образом:
P=Dk(C ⊕ k2) ⊕ k1.
Слайд 21

Особенности алгоритма ГОСТ 28147-89 Используется ключ шифрования k длиной 256 бит,

Особенности алгоритма ГОСТ 28147-89

Используется ключ шифрования k длиной 256 бит, который

может рассматриваться как массив из 8 32-битных элементов k0, k1, … , k7 (внутренних ключей).
Дополнительным ключевым элементом алгоритма является таблица замен H, представляющая собой матрицу из 8 строк и 16 столбцов, элементы которой – целые числа от 0 до 15. Каждая строка таблицы замен должна содержать 16 различных чисел. Таким образом, общий размер таблицы замен составляет 512 бит.
Слайд 22

Основная функция шифрования N – преобразуемый блок длиной 64 бита, K

Основная функция шифрования

N – преобразуемый блок длиной 64 бита, K

– один из внутренних ключей шифрования длиной 32 бита. N=N1||N2 (два полублока по 32 бита).
S=N1+K {mod 232}, S=S0S1…S7 (8 элементов по 4 бита).
∀ i=0, 1, … , 7: Si=H [i, Si].
Циклический сдвиг S на 11 бит влево.
Слайд 23

Режимы ГОСТ 28147-89 Режим простой замены соответствует режиму ECB криптосистемы DES.

Режимы ГОСТ 28147-89

Режим простой замены соответствует режиму ECB криптосистемы DES.
Режим гаммирования

похож на режим OFB криптосистемы DES, но не используется регистр сдвига, а блоки открытого текста складываются с результатом шифрования очередного элемента псевдослучайной последовательности, генерируемой на основе двух рекуррентных соотношений – одного для старшей части псевдослучайного числа и другого для младшей части.
Слайд 24

Режимы ГОСТ 28147-89 Режим гаммирования с обратной связью похож на режим

Режимы ГОСТ 28147-89

Режим гаммирования с обратной связью похож на режим CFB

криптосистемы DES, но в нем не используется регистр сдвига.
Дополнительный режим выработки имитовставки используется с одним из основных режимов и предназначен для обеспечения подлинности и целостности шифротекста:
∀ i, 1≤i≤n Si=Ek(Si-1 ⊕ Pi), S0=0 (в качестве имитовставки берется младшая часть (32 бита) полученного двоичного числа Sn)
Слайд 25

Использование симметричной криптосистемы для создания защищенного канала связи Безопасное создание, распространение

Использование симметричной криптосистемы для создания защищенного канала связи

Безопасное создание, распространение

и хранение сеансового ключа k.
Получение шифротекста для открытого текста C=Ek(P).
Вычисление имитовставки (кода аутентификации сообщения, MAC) для открытого текста P и присоединение ее к шифротексту:
Вычисление MAC.
C’=C || MAC.
Передача шифротекста по незащищенному каналу связи.
Слайд 26

Использование симметричной криптосистемы для создания защищенного канала связи Отделение имитовставки (кода

Использование симметричной криптосистемы для создания защищенного канала связи

Отделение имитовставки (кода аутентификации

сообщения, MAC) от шифротекста C’=C || MAC.
Расшифрование полученного шифротекста (неявная аутентификация полученного шифротекста, так как только имевший сеансовый ключ k мог выполнить шифрование) P=Dk(C).
Вычисление имитовставки (кода аутентификации сообщения, MAC) для полученного открытого текста.
Сравнение полученного и вычисленного MAC (проверка целостности полученного открытого текста).
Слайд 27

Генерация ключей Генерация случайного ключа шифрования возможна с помощью программного или

Генерация ключей

Генерация случайного ключа шифрования возможна с помощью программного или аппаратного

датчика псевдослучайных чисел и случайных событий, создаваемых пользователем при нажатии клавиш на клавиатуре или движением мыши. Ключ шифрования будет в этом случае создан из элементов псевдослучайной последовательности, соответствующих моментам возникновения инициированных пользователем событий.
Слайд 28

Генерация ключей Другой источник случайных событий – аппаратные средства компьютера («шум»

Генерация ключей

Другой источник случайных событий – аппаратные средства компьютера («шум» звуковой

карты, счетчик тактов процессора и т.п.).
Слайд 29

Хранение ключей Общедоступные электронные носители (ключи должны храниться только в зашифрованном

Хранение ключей

Общедоступные электронные носители (ключи должны храниться только в зашифрованном с

помощью мастер-ключа виде). Мастер-ключ не зашифровывается, но хранится в защищенной части аппаратуры КС (например, на смарт-карте или токене), причем его потеря в результате аппаратной ошибки не должна приводить к потере зашифрованных с его помощью данных.
Слайд 30

Распределение ключей С помощью центров распределения ключей (Key Distribution Center, KDC).

Распределение ключей

С помощью центров распределения ключей (Key Distribution Center, KDC). На

каждом объекте КС должен храниться ключ шифрования для связи с KDC. Недостатком применения центра распределения ключей является то, что в KDC возможно чтение всех передаваемых в КС сообщений. Для организации анонимного распределения ключей симметричного шифрования могут использоваться протоколы, основанные на криптографии с открытым ключом.