Атаки на алгоритмы шифрования
Цели атак. Атакуя алгоритм шифрования, криптоаналитик может преследовать следующие цели:
- • нахождение открытого текста, имея соответствующий шифротекст без знания секретного ключа шифрования;
- • нахождение самого секретного ключа.
В первом случае криптоаналитика интересует какое-то конкретное сообщение; во втором случае, достигнув цели, он сможет читать все сообщения, зашифрованные на скомпрометированном ключе, что несравнимо опаснее. Успешное получение криптоаналитиком секретного ключа называется полным раскрытием.
Противник может обнаружить ключ, эквивалентный секретному ключу шифрования. Эквивалентными называются ключи, которые являются различными, но приводят к одному и тому же результату шифрования. При нахождении эквивалентного ключа у криптоаналитика отпадает необходимость в поиске исходного секретного ключа.
Достижение перечисленных целей может оказаться неосуществимым при имеющихся у криптоаналитика ограниченных вычислительных ресурсах. В этом случае криптоаналитик может достичь частичного раскрытия секретного ключа или открытого сообщения. Частичное раскрытие секретного ключа может, например, позволить криптоаналитику значительно сузить область перебора секретных ключей.
Классификация атак. Атаки на алгоритмы шифрования могут быть классифицированы в зависимости от того набора данных, которые имеет криптоаналитик в своем распоряжении (или которые требуются криптоаналитику) для осуществления атаки на алгоритм.
Пусть у криптоаналитика есть возможность пассивного прослушивания и перехвата некоторого канала передачи зашифрованных сообщений (рис. 2.26). В результате криптоаналитик имеет в своем распоряжении лишь набор криптограмм, зашифрованных на определенном ключе. Такая атака называется атакой с известным шифротекстом. Она наиболее сложна, однако этот вариант атаки и наиболее распространен, поскольку в реальных ситуациях криптоаналитик обычно не имеет возможности получить больше данных.

Рис. 2.26. Пассивный перехват зашифрованных сообщений
Пусть криптоаналитик имеет доступ к шифрующему устройству (шифратору) с некоторым прошитым секретным ключом шифрования, который и является целью атаки. Примером такого устройства может быть криптографическая смарт-карта. Криптоаналитик может выполнять с шифратором определенные действия для получения информации, например получать пары «открытый текст — шифротекст» (рис. 2.27). В зависимости от получаемых данных различают следующие виды атак:
- • атака с известным открытым текстом — предполагает наличие пар «открытый текст — шифротекст», однако криптоаналитик не может специальным образом выбирать такие пары;
- • атака с выбранным открытым текстом — предполагает возможность выбора открытых текстов и получение по ним соответствующих шифротекстов;
- • адаптивная атака с выбором открытого текста — предполагает возможность многократного выбора открытых текстов для шифрования с учетом анализа ранее полученных данных;
- • атака с выбором шифротекста — предполагает возможность выбора криптограмм и получения по ним расшифрованных (открытых) текстов;
- • адаптивная атака с выбором шифротекста — предполагает возможность многократного выбора криптограмм для расшифровки с учетом результатов предыдущего анализа.

Рис. 2.27. Активное воздействие на шифратор