Подтвердить что ты не робот

Почему AES более безопасна, чем DES?

Я начинаю изучать криптоалгоритмы, и я понимаю, как работают вышеупомянутые алгоритмы. Разве что длина ключа AES больше? Какие шаги шифрования AES делают его менее уязвимым, чем DES?

4b9b3361

Ответ 1

DES был разработан с эффективной длиной ключа 56 бит, которая уязвима для исчерпывающего поиска. Он также имеет некоторые недостатки в отношении дифференциального и линейного криптоанализа: они позволяют восстановить ключ, используя, соответственно, 2 47 выбранные открытые тексты или 2 43 известные текстовые тексты. Известным открытым текстом является зашифрованный блок (8-байтовый блок для DES), для которого злоумышленник знает соответствующий расшифрованный блок. Выбранный открытый текст является своего рода известным открытым текстом, в котором злоумышленник выбирает себе расшифрованный блок. В практических условиях атаки такие огромные количества известных или выбранных открытых текстов не могут быть действительно получены, поэтому дифференциальный и линейный криптоанализ действительно не влияют на фактическую безопасность DES; самая слабая точка - это короткий ключ. Тем не менее, наличие этих атак, которые с академической точки зрения имеют меньшую сложность, чем исчерпывающий поиск ключа (который в среднем использует вызовы 2 55), воспринимается как недостаток в безопасности.

В качестве дополнительной заметки дифференциальный анализ был известен DES-дизайнерам, и DES был ожесточен против него (отсюда и "хороший балл" 2 47). С сегодняшними стандартами мы будем считать это "недостаточно хорошим", потому что в настоящее время академическая традиция требует сложностей с атакой выше исчерпывающего поиска. Тем не менее дизайнеры DES были действительно хороши. Они не знали о линейном криптоанализе, который был обнаружен Мацуи в 1992 году, а линейный криптоанализ более эффективен на DES, чем дифференциальный криптоанализ, и все же на практике дьявольски трудно применять на практике (2 43 известных блоков открытого текста, что 64 терабайта...).

Структурные недостатки DES, таким образом, являются его ключевым размером и его коротким размером блока: с n-разрядными блоками некоторые режимы шифрования начинают испытывать проблемы, когда блоки 2 n/2 зашифровываются с помощью тот же ключ. Для 64-разрядных блоков DES это происходит после шифрования 32 гигабайт данных, большого, но не большого количества (вчера я купил жесткий диск, который в тридцать раз больше).

Вариант DES называется 3DES: это более или менее три экземпляра DES в строке. Это решает проблему с размером ключа: ключ 3DES состоит из 168 бит (номинально 192 бит, из которых 24 бита должны служить проверкой на четность, но на практике полностью игнорируются), а исчерпывающий поиск по 168-битовому ключу полностью вне досягаемости человеческих технологий. Из (опять же) академической точки зрения, на 3DES есть атака со стоимостью 2 112 что тоже невозможно. Дифференциальный и линейный криптоанализ побеждаются 3DES (их сложность немного возрастает с количеством раундов, а 3DES представляет 48 раундов, против 16 для простого DES).

Тем не менее, 3DES все еще страдает от проблем с размером блока DES. Кроме того, он довольно медленный (DES был предназначен для аппаратных реализаций, а не для программного обеспечения, а 3DES даже в три раза медленнее DES).

Таким образом, AES была определена со следующими требованиями:

  • 128-битные блоки (решает проблемы с CBC)
  • принимает ключи размером 128, 192 и 256 бит (128 бит достаточно, чтобы противостоять исчерпывающему поиску ключа, два других размера в основном являются способом соблюдения жестких военных правил США).
  • не имеет академической слабости хуже, чем исчерпывающий поиск ключа
  • должен быть таким же быстрым, как 3DES (AES оказался намного быстрее, чем 3DES в программном обеспечении, обычно в 5-10 раз быстрее).

Сопротивление AES к дифференциальному и линейному криптоанализу происходит от лучшего "эффекта лавины" (бит флип в какой-то момент быстро распространяется до полного внутреннего состояния) и специально созданных больших S-боксов (S-box это небольшая таблица поиска, используемая в алгоритме, и это простой способ добавить нелинейность, в DES, S-боксы имеют 6-битные входы и 4-битные выходы, в AES S-боксы имеют 8-битные входы и 8-разрядные выходы). Дизайн AES получил 25-летнюю историю и исследования DES. Кроме того, AES была выбрана путем открытого конкурса с 15 кандидатами от многих исследовательских групп по всему миру, а общий объем ресурсов мозга, выделяемых на этот процесс, был огромным. Первоначальные дизайнеры DES были гениальными, но можно сказать, что совокупное усилие криптографов для AES было намного больше.

С философской точки зрения, мы могли бы сказать, что то, что делает криптографический примитив безопасным, - это объем усилий, вложенных в его дизайн. По крайней мере, эти усилия создают ощущение безопасности: когда я использую криптосистему, я хочу, чтобы она была безопасной, но я также хочу быть уверенным, что она безопасна (я хочу спать по ночам). Процесс общественного проектирования и анализа помогает в создании такого доверия. NIST (орган США по стандартизации таких вещей) хорошо понял этот урок и решил снова выбрать открытый конкурс для SHA-3.