
05 Симметричные криптосистемы.pptx
- Количество слайдов: 43
Защита информации Тема 5. Симметричные криптосистемы 03. 02. 2018 ИГЭУ. Кафедра ПОКС
Симметричные криптосистемы Открытый текст, исходный текст (plaintext, cleartext) Зашифрование (encryption) Ключ 1 (Key 1) Открытый текст, Закрытый текст, исходный текст шифротекст (plaintext, (ciphertext) Расшифрование cleartext) (decryption) Генерация ключей (key generation) Ключ 2 (Key 2) В симметричном методе шифрования один и тот же ключ используется и для шифрования, и расшифрования. Основным недостатком симметричного шифрования является то, что секретный ключ должен быть известен и отправителю, и получателю. С одной стороны, это ставит новую проблему рассылки ключей. С другой стороны, получатель, имеющий шифрованное и расшифрованное сообщение, не может доказать, что он получил его от конкретного отправителя, поскольку такое же сообщение он мог сгенерировать и сам. Защита информации. Симметричные криптосистемы 2
Стан дарт шиф ро ва ния дан ных ГОСТ 28147 89. Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования ре ко мен до ван к ис поль зо ва нию для за щи ты лю бых дан ных, пред став лен ных в ви де дво ич но го ко да. Режимы работы: 1. Режим замены 2. Режим гаммирования 3. Режим гаммирования с обратной связью 4. Иммитовставка Открытый текст разбивается на блоки Ti по 64 бита. Обработка блоков выполняется последовательно. Очередная последовательность бит Ti разделяется на две последовательности L 0 и R 0 по 32 бита (левую и правую части блока). Во всех режимах используется ключ W длиной 256 бит, в виде восьми 32 разрядных чисел Xj: W = X 7 X 6 X 5 X 4 X 3 X 2 X 1 X 0. Защита информации. Симметричные криптосистемы 3
ГОСТ 28147 89. 1. Режим замены Ri = f(Ri 1 [+] Xj) Li 1, Li = Ri 1, j = (i 1) mod 8, если i = 1, 2, . . . , 24; Ri = f(Ri 1 [+] Xj) Li 1, Li = Ri 1, j = 32 i, если i = 25, 26, . . . , 31; R 32 = R 31, L 32 = f(R 31 [+] X 0) L 31, если i = 32. i – номер итерации A[+]B сложение по модулю 232 A B побитовое сложение по модулю 2 Защита информации. Симметричные криптосистемы L 0 R 0 Xj + f L 1 + R 1 Повтор 31 раз L 32 R 32 L R 4
ГОСТ 28147 89. Образующая функция Номер блока Вход 1 1 2 12 3 3 4 14 5 5 6 0 7 7 8 10 Узел замены 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Выход К 1 7 10 13 1 0 8 9 15 14 4 6 12 11 2 5 3 10 К 2 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 12 К 3 15 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 К 4 14 15 0 1 2 3 4 5 6 7 8 9 10 11 12 13 12 К 5 13 14 15 0 1 2 3 4 5 6 7 8 9 10 11 12 2 К 6 12 13 14 15 0 1 2 3 4 5 6 7 8 9 10 11 12 К 7 11 12 13 14 15 0 1 2 3 4 5 6 7 8 9 10 2 К 8 10 11 12 13 14 15 0 1 2 3 4 5 6 7 8 9 4 11 битов 21 бит Защита информации. Симметричные криптосистемы 21 бит 11 битов Образующая функция ( f ) включает две операции над 32 разрядным аргументом. Первая операция является подстановкой K. 32 разряд ный вектор разбивается на 8 после довательно идущих 4 разряд ных вектора, каждый из которых преобразуется соотве тствующим узлом замены, представляющим собой табли цу из 16 чисел в диапазоне 0. . . 15. Вторая операция – циклический сдвиг влево 32 раз рядного вектора на 11 разрядов влево. (A shl 11) OR (A shr 21) 5
ГОСТ 28147 89. 2. Режим гаммирования Ш i = Гi Ti , Ti = Г i Ш i , Гi = F (Zi, Yi), Величины Yi и Zi определяются итерационно по мере формирования гаммы следующим образом: (Z 0, Y 0) = F (S), S=S 2 S 1 64 разрядная синхропосылка; (Zi, Yi) = (Zi 1 {+} C 1, Yi 1 [+] C 2) С 1 = 224 + 216 + 28 + 22 = 101010416; С 2 = 224 + 216 + 28 + 1 = 101010116. A {+} B сложение по модулю 232 1 A {+} B = A + B, если A + B < 232 A {+} B = A + B – 232 + 1, если A + B ≥ 232 A {+} B = (A + B – 1) mod (232 – 1) + 1 Защита информации. Симметричные криптосистемы S 2 S 1 W ГОСТ 32 Zi 1 C 1 {+} Yi 1 C 2 Zi W Ti + Yi ГОСТ 32 + Шi 6
ГОСТ 28147 89. 3. Режим гаммирования с обратной связью Ш i = Гi Ti , Ti = Г i Ш i , Г 1 = F (S), Гi = F (Ш i 1), Защита информации. Симметричные криптосистемы S 2 S 1 W Ti Шi 1 ГОСТ 32 + Шi 7
ГОСТ 28147 89. 4. Режим выработки иммитовставки Иi 1 И i = F ( Ni ), N 1 = T 1 , Ni = Иi 1 Ti Ti + T 1 Ni W ГОСТ 16 Иi Защита информации. Симметричные криптосистемы 8
Требования к алгоритмам блочного шифрования 1) Функция шифрования должна быть обратимой. Ci = Encrypt (Pi, Key); Pi = Decrypt (Ci, Key) 2) Безопасность зашифрованного сообщения должна зависеть от секретности ключа, но не от секретности алгоритма. Алгоритм должен быть проанализирован специалистами, чтобы исключить наличие слабых мест, при которых плохо скрыта взаимосвязь между незашифрованным и зашифрованным сообщениями. 3) Алгоритм должен быть достаточно сильным, чтобы зашифрованное сообщение невозможно было расшифровать без ключа, используя только различные статистические закономерности зашифрованного сообщения или какие либо другие способы его анализа. То есть, дешифрование возможно только полным перебором ключей. 4) Алгоритм должен быть таким, чтобы нельзя было узнать ключ, даже зная достаточно много пар (зашифрованное сообщение, незашифрованное сообщение), полученных при шифровании с использованием данного ключа. То есть, определение ключа возможно только полным перебором ключей. Защита информации. Симметричные криптосистемы 9
Cтойкость алгоритма шифрования Диффузия это рассеяние статистических особен ностей незашифрованного текста в широком диапазоне статистических особенностей зашифрованного текста. Конфузия это уничтожение статистической взаимо связи между зашифрованным текстом и ключом. Клод Шеннон доказал, что идеальный шифр Клод Элвуд Шеннон (абсолютно стойкий ко взлому) должен обладать двумя (Claude Elwood Shannon) свойствами: 1) ключ должен вырабатываться совершенно случайным образом (в частности, один и тот же ключ должен применяться для шифрования только одного текста); 2) длина открытого текста не должна превышать длину ключа шифрования. Защита информации. Симметричные криптосистемы 10
Перебор ключей В Brute Force Attack пытаются дешифровать зашифрованное сообщение, перебирая все возможные ключи, до тех пор, пока сообщение не окажется осмысленным. По теории вероятности искомый ключ будет найден с вероятностью 1/2 после перебора половины всех ключей. На взлом криптоалгоритма с ключом длины N потребуется в среднем 2 N-1 проверок. Таким образом, в общем случае стойкость блочного шифра зависит только от длины ключа и возрастает экспоненциально с ее ростом. Даже предположив, что перебор ключей производится на специально созданной многопроцессорной системе, в которой благодаря диагональному параллелизму на проверку 1 ключа уходит только 1 такт, то на взлом 128 битного ключа современной технике потребуется не менее 1021 лет. Защита информации. Симметричные криптосистемы 11
Обеспечение криптостойкости Высокая степень диффузии достигается тем, что зна чение одного элемента незашифрованного текста влияет на значения многих элементов зашифрованного текста. Американский криптограф Хорст Файстель ввел понятие лавинного эффекта. Лавинный эффект проявляется в зависимости всех выходных битов от каждого входного бита. Хорст Файстель (Horst Feistel) Для того, чтобы проверить наличие хорошего лавинного эффекта в конкретном алгоритме, используется несколько критериев: 1. Криптографический алгоритм удовлетворяет лавинному критерию, если при изменении одного бита входной последовательности, изменяется в среднем половина выходных битов. 2. Криптографический алгоритм удовлетворяет строгому лавинному критерию, если при изменении одного бита входной последовательности, каждый бит выходной последовательности изменяется с вероятностью 1/2. 3. Криптографический алгоритм удовлетворяет критерию независимости битов, если при изменении любого входного бита, любые два выходных Защита информации. Симметричные криптосистемы 12 бита изменяются независимо.
Сеть Файстеля Сеть Файcтеля это алгоритм смешива ния текущей части шифруемого блока с результатом некоторой функции, вычислен ной от другой независимой части того же блока. Обеспечивается выполнение требо вания о многократном использовании клю ча и материала исходного блока. Функция F называется образующей. Оптимальное число раундов r – от 8 до 32. Увеличение количества раундов увеличи вает криптоскойстость шифра к криптоанализу. Сеть Файcтеля симметрична. Использо вание операции XOR, и инверсия послед него обмена ветвей делают возможным расшифрование блока той же сетью, но с инверсным порядком ключей раунда Vi. Защита информации. Симметричные криптосистемы 13
Модификации сети Файcтеля для 4 х ветвей Криптостойкость блочного шифра, использующего сеть Файcтеля, определяется на 95% функцией F, количеством раундов, длиной ключа и правилом вычисления Vi из ключа. Защита информации. Симметричные криптосистемы 14
Области применения Стандартный алгоритм блочного шифрования должен быть применим во многих приложениях: 1. Шифрование данных. Алгоритм должен быть эффективен при шифровании файлов данных или большого потока данных. 2. Создание случайных чисел. Алгоритм должен быть эффективен при создании определенного количества случайных битов. 3. Хеширование. Алгоритм должен эффективно преобразовываться в одностороннюю хеш функцию. Защита информации. Симметричные криптосистемы 15
Платформы Алгоритм должен эффективно реализовываться на специализированной аппаратуре, предназначенной для выполнения зашифрования и расшифрования. Алгоритм должен допускать эффективную программную реализацию на 64 и 32 битных процессорах. Должна существовать возможность реализации алгоритма на смарт картах, пусть даже с учетом жестких ограничений на используемую память. Алгоритм должен использовать простые операции, которые эффективны на микропроцессорах: • исключающее или, • сложение, • табличные подстановки, • умножение по модулю. Не должно использоваться: • сдвигов переменной длины, • побитных перестановок, • условных переходов. Защита информации. Симметричные криптосистемы 16
Дополнительные требования • Алгоритм должен быть простым для написания кода, чтобы минимизировать вероятность программных ошибок. • Алгоритм должен иметь плоское пространство ключей, т. е. допускать любую случайную строку битов нужной длины в качестве возможного ключа. Наличие слабых ключей нежелательно. Все слабые ключи должны быть заранее известны, чтобы их можно было отбраковать в процессе создания ключа. • Все операции с данными должны осуществляться над блоками, кратными байту или 32 битному слову. • Иметь размер блока 64, 128 или 256 бит. • Алгоритм должен легко модифицироваться для различных уровней безопасности. Он должен работать с ключами разной длины и состоять из переменного числа итераций. • Алгоритм должен использовать заранее вычисленные подключи для ускорения работы. Защита информации. Симметричные криптосистемы 17
Алгоритм DES Самым распространенным и наиболее известным алгоритмом симметричного шифрования является DES (Data Encryption Standard). Алгоритм был разработан в 1977 году, в 1980 году был принят NIST (National Institute of Standards and Technology США) в качестве стандарта (FIPS PUB 46). DES является классической сетью Фейштеля с двумя ветвями. Данные шифруются 64 битными блоками, используя 56 битный ключ. Алгоритм преобразует за несколько раундов 64 битный вход в 64 битный выход. Защита информации. Симметричные криптосистемы 18
Проблемы DES Так как длина ключа равна 56 битам, существует 256 возможных ключей. На сегодня такая длина ключа недостаточна, поскольку допускает успешное применение лобовых атак. Альтернативой DES можно считать тройной DES. Также без ответа пока остается вопрос, возможен ли криптоанализ с использованием существующих характеристик алгоритма DES. Основой алгоритма являются восемь таблиц подстановки, или S boxes, которые применяются в каждой итерации. Существует опасность, что эти S boxes конструировались таким образом, что криптоанализ возможен для взломщика, который знает слабые места S boxes. Защита информации. Симметричные криптосистемы 19
Алгоритм тройной DES Предлагается метод тройного шифрования, использующий два клю ча. Выполняется зашифрование – рас шифрование – зашифрование (EDE). C = EK 1 [ DK 2 [ EK 1 [P] ] ] В случае использования дешифрования на второй стадии существует только то преимущество, что можно тройной DES свести к обычному одиночному DES, используя K 2 = K 1: C = EK 1 [ DK 1 [ EK 1 [P] ] ] = EK 1 [P] Тройной DES является достаточно популярной альтернативой DES и используется при управлении ключами в стандартах ANSI X 9. 17 и ISO 8732 и в PEM (Privacy Enhanced Mail). Известных криптографических атак на тройной DES не существует. Цена подбора ключа в тройном DES равна 2112. Защита информации. Симметричные криптосистемы 20
Режим блочного шифрования ECB Electronic Code Book Mode (режим электронной кодовой книги, режим простой замены). В этом режиме все блоки текста шифруются независимо, на одном и том же ключе, в соответствии с алгоритмом. K Pi ECB Ci Ci = F(Pi) шифрование Pi = F(Ci) – расшифрование Защита информации. Симметричные криптосистемы 21
Режим блочного шифрования SM Stream Mode (поточный режим, режим гаммирования). В этом режиме открытый текст складывается по модулю 2 с гаммой шифра. При помощи генератора формирует ся предварительная гамма (cинхропосылка передается по каналу в открытом виде). Предварительная гамма подвергается зашифрованию в режиме ECB, в результате чего и получается основная гамма, с которой складывается открытый текст. Если послед ний блок неполный, берется только необходимое количество битов гаммы. Алгоритм сводится к поточному, если из гаммы берется только 8 бит (j=8). Защита информации. Симметричные криптосистемы S Генератор гаммы Gi-1 Gi K ECB >> 64 - j Pi ( j битов) + Ci ( j битов) Ci = Pi F(Gi) шифрование Pi = Ci F(Gi) расшифрование 22
Режим блочного шифрования CTR Название режима происходит от слова Coun. Te. R – счетчик. В отличие от режима SM шифруется не выход с генератора гаммы, а просто счетчик, увеличиваемый на каждом шаге на постоянное число t (обычно 1). Преимущество режима CTR состоит в том, что любой элемент последовательности Gi может быть вычислен непосредственно. Это дает возможность шифровать и расши фровывать любые фрагменты сообщения независимо друг от друга. Y 0 K Yi Yi = Yi + t ECB >> 64 j Pi ( j битов) + Ci ( j битов) Ci = Pi F(Y 0 + (i-1)t) Pi = Ci F(Y 0 + (i-1)t) Защита информации. Симметричные криптосистемы 23
Режим блочного шифрования CFB Cipher Feedback Mode (гаммирование с обратной связью). В этом режиме открытый текст также складывается по модулю 2 с гаммой шифра. Гамма получается следующим образом: сначала шифруется (в режиме ECB) синхропосылка. Результат шифрования складывается по модулю 2 с первым блоком открытого текста (получается первый блок шифртекста) и снова подвергается зашифрованию. Полученный результат складывается со вторым блоком открытого текста и т. д. << j + S Накопитель (64 бита) K Сi 1 (64 бита) ECB >> 64 j Pi ( j битов) + Ci ( j битов) C 1 = P 1 F(S) Ci = Pi F(Ci-1) Защита информации. Симметричные криптосистемы 24
Режим блочного шифрования OFB Output Feedback Mode (гаммирование с обратной связью по выходу). Поточный шифр. Cначала зашифрованию подвергается синхропосылка. Результат складывается по модулю 2 с первым блоком открытого текста получается первый блок шифртекста. Далее, результат шифрования с предыдущего шага шифруется еще раз и складывается со следующим блоком открытого текста. Таким образом, гамма шифра получается путем многократного шифрования синхропосылки в режиме ECB. << 64 j + S Накопитель (64 бита) Si 1 K ECB >> 64 j Si Pi ( j битов) + Ci ( j битов) Ci = Pi Si; Si = F(Si-1) Pi = Ci Si; Si = F(Si-1) Защита информации. Симметричные криптосистемы 25
Режим блочного шифрования CBC Cipher Block Chaining Mode (режим сцепления блоков). В этом режиме оче редной блок открытого текста складывается по модулю 2 с предыдущим блоком шифртекста, после чего подвергается зашифрованию в режиме ECB. Для первого блока «предыдущим блоком шифртекста» является синхропосылка. Если последний блок открытого текста неполный он дополняется до необходимой длины. S Pi K Ci 1 + ECB Ci Ci Ci = F( Pi Ci-1 ) C 0 = S Защита информации. Симметричные криптосистемы 26
Конкурс AES Недостатки DES побудили Американский институт стандартизации NIST – National Institute of Standards & Technology на объявление в 1997 году конкурса на новый стандарт симметричного криптоалгоритма, названного AES – Advanced Encryption Standard. На первом этапе в оргкомитет соревнования поступило 15. В течение 2 лет специалисты комитета выбрали 5 финалистов. В 2000 году победителем был признан Rijndael. Алгоритм MARS RC 6 Rijndael Serpent Two. Fish Создатель IBM R. Rivest & Co V. Rijmen & J. Daemen Universities B. Schneier & Co Защита информации. Симметричные криптосистемы Страна US US BE IS, UK, NO US Быстродействие (asm, 200 МГц) 8 Мбайт/с 12 Мбайт/с 7 Мбайт/с 2 Мбайт/с 11 Мбайт/с 27
Победитель AES – шифр Rijndael Данный алгоритм разработан двумя специалистами по криптографии из Бельгии. Он не использует сеть Файстеля. Алгоритм представляет каждый блок кодируемых данных в виде двумерного массива байт размером 4 х4, 4 х6 или 4 х8. Количество раундов от 10 до 14. Последовательно выполняются следующие операции : 1) Byte. Sub – табличная подстановка 2) Shift. Row – сдвиг строк 3) Mix. Column – математическое преобразование, перемешивающее данные внутри столбца 4) Add. Round. Key – добавление материала ключа операцией XOR В последнем раунде операция перемешивания столбцов отсутствует, что делает всю последовательность операций симметричной. Защита информации. Симметричные криптосистемы 28
AES. Byte. Sub – табличная подстановка Защита информации. Симметричные криптосистемы 29
AES. Shift. Row – сдвиг строк Защита информации. Симметричные криптосистемы 30
AES. Mix. Column – умножение на матрицу Защита информации. Симметричные криптосистемы 31
AES. Add. Round. Key – добавление материала ключа Защита информации. Симметричные криптосистемы 32
Криптоанализ Это процесс, при котором предпринимается попытка узнать исходный текст, ключ или и то, и другое. Реальный криптоанализ основан на: • изучении системы шифрования; • изучении особенностей исходного текста; • изучение особенностей ключевой системы. При анализе зашифрованного текста противник часто применяет статистические методы анализа текста. Во многих случаях криптоаналитик имеет достаточно много информации об исходном тексте. Например, английский или русский текст, выполнимый файл конкретной ОС, исходный текст на некотором конкретном языке программирования и т. д. Криптоаналитик может иметь возможность перехвата одного или нескольких незашифрованных сообщений вместе с их зашифрованным видом. Говорят, что криптографическая схема вычислительно безопасна, если: 1) цена расшифровки сообщения больше цены самого сообщения; 2) время, необходимое для расшифровки сообщения, больше срока жизни сообщения. Защита информации. Симметричные криптосистемы 33
История криптоанализа Первым известным письменным упоминанием о криптоанализе является «Манускрипт о дешифровке криптографических сообщений» , написанный арабским учёным аль-Кинди ещё в 9 веке. В этом научном труде содержится описание метода частотного анализа. Абу Ю суф Яку б ибн Исха к ибн Саббах аль Ки нди (Alkindus) Защита информации. Симметричные криптосистемы 34
История криптоанализа На протяжении трёх веков Шифр Виженера считался криптографически устойчивым, пока в 1863 году Фридрих Касиски не предложил свою методику взлома этого шифра. Еесли в открытом тексте между двумя одинаковыми наборами символов находится такой блок текста, что его длина кратна длине ключевого слова, то эти одинаковые наборы символов открытого текста при шифровании перейдут в одинаковые отрезки шифротекста. На практике это означает то, что при наличии в шифротексте одинаковых отрезков длиной в три и больше символов, велика вероятность того, что эти отрезки соответствуют одинаковым отрезкам открытого текста. В шифротексте ищутся пары одинаковых отрезков длины три или больше, затем вычисляется расстояние между ними. В результате анализа всех пар одинаковых отрезков мы получим совокупность расстояний d 1, d 2, d 3, … Очевидно, что длина ключевого слова будет делителем для каждого из расстояний и для их наибольшего общего делителя. Защита информации. Симметричные криптосистемы Фридрих Касиски (Friedrich Kasiski) 35
История криптоанализа • В 1998 г. было обнаружена уязвимость к атакам на основе шифротекста у блочного шифра MADRYGA, предложенного ещё в 1984 г. , но не получившего широкого распространения. • Целая серия атак со стороны научного сообщества, многие из которых были целиком практическими, буквально уничтожила блочный шифр FEAL, предложенный как замена DES в качестве стандартного алгоритма шифрования, но также не получивший широкого распространения. • Также было установлено, что при помощи широко доступных вычислительных средств поточные шифры A 5/1, A 5/2, блочный шифр CMEA, и стандарт шифрования DECT, используемые для защиты мобильной и беспроводной телефонной связи, могут быть взломаны за считанные часы или минуты, а порою и в режиме реального времени. • Атака методом грубой силы помогла взломать некоторые из прикладных систем защиты, например, CSS— систему защиты цифрового медиаконтента на DVD носителях. • В 2001 году, были обнародованы слабости протокола WEP (Wired Equivalent Privacy), используемый для защиты беспроводных Wi Fi сетей. Слабости WEP слабостями использованного в нём алгоритма RC 4. WEP позже был заменен WPA (Wi Fi Protected Access). • В 2008 году ученые провели успешную атаку на протокол SSL используя слабые места в хэш функции MD 5. Защита информации. Симметричные криптосистемы 36
Различные типы анализа Попытка криптоанализа называется атакой (attack). Брюс Шнайер выделяет 7 методов криптоанализа: 1) Ciphertext Only – анализ на основе только шифротекста 2) Known Plaintext – анализ на основе невыбранного открытого текста 3) Chosen Plaintext – анализ на основе выбранного открытого текста 4) Adaptive chosen plaintext – анализ на основе адаптивно подобранного открытого текста 5) Chosen Ciphertext – анализ на основе выбранного шифротекста 6) Related key – атака на основе подобранного ключа 7) Бандитский криптоанализ. Брюс Шнайер (Bruce Schneier) Существуют различные типы атак, основанные на том, что противнику известно определенное количество пар незашифрованное сообщение. Защита информации. Симметричные криптосистемы 37
Атаки, направленные на восстановление ключа Brutal-Force Attack – атака методом «грубой силы» , т. е. полным перебором ключей. Если множество ключей достаточно большое, то подобрать ключ нереально. При длине ключа n бит количество возможных ключей равно 2 n. Таким образом, чем длиннее ключ, тем более стойким считается алгоритм для лобовой атаки. Основная цель любого метода криптоанализа – улучшить время Brutal Force Attack. Key-recovery – метод нахождения наиболее вероятного раундового ключа, с помощью перебора различных исходных текстов. Используется в большинстве методов криптоанализа. Защита информации. Симметричные криптосистемы 38
Классификация результатов анализа Результаты криптоанализа могут варьироваться по степени практической применимости. Так, криптограф Ларс Кнудсен предлагает следующую классификацию успешных исходов криптоанализа блочных шифров в зависимости от объема и качества секретной информации, которую удалось получить: • Полный взлом – криптоаналитик извлекает секретный ключ. • Глобальная дедукция – криптоаналитик разрабатывает функциональный эквивалент исследуемого алгоритма, позво ляющий зашифровывать и расшифровывать информацию без знания ключа. • Частичная дедукция – криптоаналитику удается рас шифровать или зашифровать некоторые сообщения. • Информационная дедукция – криптоаналитик получа ет некоторую информацию об открытом тексте или ключе. Защита информации. Симметричные криптосистемы Ларс Рамкильд Кнудсен (Lars Ramkilde Knudsen) 39
Дифференциальный криптоанализ Понятие дифференциального криптоанализа было введено израильскими криптографами Эли Бихамом и Ади Шамиром в 1990 году. Это Chosen-plaintext метод криптоанализа. Конечная задача дифференциального крипто анализа используя свойства алгоритма, в основном свойства S box, определить подключ раунда. Конкретный способ анализа зависит от рассматриваемого алгоритма шифрования. Эли Бихам (Eli Biham) Ади Шамир (Adi Shamir) Если в основе алгоритма лежит сеть Файстеля, то можно считать, что блок T состоит из двух половин L и R. Дифференциальный криптоанализ рассматривает отличия, которые происходят в каждой половине при шифровании. Для DES «отличия» определяются с помощью операции XOR, для других алгоритмов возможен иной способ. X = X 1 X 2 Y = Y 1 Y 2 Дифференциал – это пара: разность входных данных и разность выходных данных. Защита информации. Симметричные криптосистемы 40
Дифференциальный криптоанализ Выбирается пара незашифрованных текстов с фиксированным отличием. Затем анализируются отличия, получившиеся после шифрования одним раундом алгоритма, и определяются вероятности различных ключей. Если для многих пар входных значений, имеющих одно и то же отличие Х, при использовании одного и того же подключа одинаковыми (Y) оказываются и отличия соответствующих выходных значений, то можно говорить, что Х влечет Y с определенной вероятностью. Если эта вероятность близка к единице, то можно считать, что подключ раунда найден с данной вероятностью. Так как раунды алгоритма независимы, вероятности определения подключа каждого раунда следует перемножать. Считается, что результат шифрования данной пары известен. Результаты дифференциального криптоанализа используются как при разработке конкретных S box, так и при определении оптимального числа раундов. Для взлома DES необходимо 247 выбираемых нами входных текстов. Защита – минимизировать максимальные вероятности p, максими зировать количество S boxes в каждой дифференциальной характеристике. Защита информации. Симметричные криптосистемы 41
Линейный криптоанализ Разработан Митцуру Матцуи в 1992 г. Это Known plaintext метод анализа. Линейный криптоанализ использует линейные приближения преобразований, выполняемых алгорит мом шифрования. Данный метод позволяет найти ключ, имея достаточно большое число пар (незашифрованный текст, зашифрованный текст). Митцуру Матцуи (Mitsuru Matsui) Обозначим: P[1], … , P[n] незашифрованный блок сообщения. C[1], … , C[n] зашифрованный блок сообщения. K[1], … , K[m] ключ. A [i, j, …, k] = A[i] A[j] … A[k] Целью линейного криптоанализа является поиск линейного уравнения вида: P [α 1, α 2, …, αa] C [β 1, β 2, …, βb] = K [γ 1, …, γc] Защита информации. Симметричные криптосистемы 42
Линейный криптоанализ Выполняющееся с вероятностью р ≠ 0. 5. αi, βi и γi фиксированные позиции в блоках сообщения и ключе. Чем больше р отклоняется от 0. 5, тем более подходящим считается уравнение. Это уравнение означает, что если выполнить операцию XOR над некоторыми би тами незашифрованного сообщения и над некоторыми битами зашифрованного со общения, получится бит, представляющий собой XOR некоторых битов ключа. Это на зывается линейным приближением, которое может быть верным с вероятностью р. Уравнения составляются следующим образом. Вычисляются значения левой части для большого числа пар соответствующих фрагментов незашифрованного и зашифрованного блоков. Если результат оказывается равен нулю более чем в половине случаев, то полагают, что K [γ 1, …, γс] = 0. Если в большинстве случаев получается 1, полагают, что K [γ 1, …, γс] = 1. Таким образом получают систему уравнений, решением которой является ключ. Как и в случае дифференциального криптоанализа, результаты линейного криптоанализа должны учитываться при разработке алгоритмов симметричного криптоанализа. Key-recovery на DES проходит при использовании 243 известных исходных текстов. Защита – минимизировать вероятностные смещения (bias), максимизировать число S boxes, или иных нелинейных элементов. Защита информации. Симметричные криптосистемы 43