Тема : Принципы блочного шифрования План: Сравнение блочных и поточных шифров Предпосылки создания шифра Фейстеля Практическая реализация шифра Фейстеля Алгоритм DES
2 Блочные шифры М – сообщение С – зашифрованное сообщение К – ключ шифрования Е к – функция шифрования с ключом к D k – функция дешифрования с ключом к n – кол-во бит в блоке, обычно 64 бита к к Блочными называются шифры, в которых логической единицей шифрования является некоторый блок открытого текста, после преобразования которого получается блок шифрованного текста такой же длины. к к к к Принцип работы блочного шифра Процедура зашифрования С= E k (M) Процедура расшифрования М= D k (С) D k (E k (M))= M
3 Поточные шифры Поточными называются шифры, в которых поток цифровых данных шифруется последовательно бит за битом или байт за байтом. Высокая скорость работы поточных шифров определяет область их использования – закрытые данных, требующих оперативной доставки потребителю, например, аудио- или видеоинформация
4 Предпосылки создания шифра Файстеля Обратимое отображение n =2 Открытый Шифрованный текст текст Необратимое отображение n =2 Открытый Шифрованный текст текст Число различных допустимых преобразований равно 2 n Файстель предложил аппроксимировать подстановочный шифр продукционными шифрами, которые строятся на применении операций подстановки и перестановки
5 Диффузия и конфузия Клод Шеннон в 1945 г. предложил идею разработать продукционный шифр в котором попеременно использовались бы функции конфузии и диффузии. Основная задача – воспрепятствовать попыткам криптоанализа, основанного на статистическом анализе сообщения.
6 Классическая схема Файстеля Раунд 1 Раунд i Раунд n L 0 – левый подблок ОТ R 0 – правый подблок ОТ К n – подключ раунда n F – функция использующая в качестве исходных данных шифруемый текст и ключ K, зависящий от раунда Для дешифрования применяется тот же алгоритм, но на вход подается шифрованный текст, а подключи используются в обратном порядке.
7 Практическая реализация схемы Фейстеля зависит от: Размер блока Размер ключа Число раундов обработки Алгоритм вычисления подключей Функция раунда Скорость выполнения программ шифрования/дешифрования Простота анализа
8 Алгоритм DES (Data Encryption Standart) Подробная схема шифрования алгоритма DES
9 Схема работы функции f
10 Определение S-матриц алгоритма DES
11 Лавинный эффект Высокая чувствительность результата к изменению начальных данных – любые малые изменения ОТ или ключа приводят к значительным изменениям в шифрованном тексте Два блока ОТ отличающиеся друг от друга на 1 бит: Изменения в открытом тексте РаундЧисло различающихся битов …… 1634
Слабые ключи DES Из-за небольшого числа возможных ключей (всего 2 56 ), появляется возможность их полного перебора на быстродействующей вычислительной технике за реальное время. В 1998 году The Electronic Foundation используя специальный компьютер DES-Cracker, удалось взломать DES за 3 дня. В алгоритме DES существуют слабые и частично-слабые ключи. Слабыми ключами называется ключи k такие что DES k (DES k (x)) = x, где x блок 64 бит. Частично-слабые ключи пары ключей (k 1,k 2 ) такие что DES k1 (DES k2 (x)) = x Известны 4 слабых ключа, они приведены в таблице 9. Для каждого слабого ключа существует 2 32 «постоянные точки», то есть таких 64-битовых блоков х, в которых DES k (x) = x 12 Слабые ключи FEFE-FEFE-FEFE-FEFE 1F1F-1F1F-0E0E-0E0E E0E0-E0E0-F1F1-F1F1 Пары частично-слабых ключей 01FE-01FE-01FE-01FE –FE01-FE01-FE01-FE01 1FE0-1FE0-1FE0-1FE0 –E0F1-E0F1-E0F1-E0F1 01E0-01E0-01F1-01F1 –E001-E001-F101-F101 FFE-1FFE-0EFE-0EFE –FE1F-FE1F-FE0E-FE0E O11F-011F-010E-010E –1F01-1F01-0E01-0E01 E0FE-E0FE-F1FE-F1F –FEE0-FEE0-FEF1-FEF1
Увеличение криптостойкости DES Чтобы увеличивать криптостойкость DES появляются несколько вариантов: double DES (2DES), triple DES (3DES), DESX, G-DES.криптостойкостьdouble DES2DEStriple DES3DESDESXG-DES Методы 2DES и 3DES основаны на DES, но увеличивают длину ключей (2DES 112 бит, 3DES 168 бит) и поэтому увеличивается криптостойкость.2DES3DESкриптостойкость Схема 3DES имеет вид DES(k 3,DES(k 2,DES(k 1,M))), где k 1,k 2,k 3 ключи для каждого шифра DES. Это вариант известен как в ЕЕЕ так как три DES операции являются шифрованием. Существует 3 типа алгоритма 3DES: DES-EEE3DES-EEE3: Шифруется три раза с 3 разными ключами. DES-EDE3DES-EDE3: 3DES операции шифровка-расшифровка-шифровка с 3 разными ключами. DES-EEE2DES-EEE2 и DES-EDE2: Как и предыдущие, за исключением того, что первая и третья операции используют одинаковый ключ.DES-EDE2ключ Самый популярный тип при использовании 3DES это DES-EDE3, для него алгоритм выглядит так: Зашифрование: Расшифрование:ЗашифрованиеРасшифрование При выполнении алгоритма 3DES ключи выбираются: 1. k 1,k 2,k 3 независимы. 2. k 1,k 2 независимы, а k 1 = k 3 3. k1 = k2 = k3. 13