В настоящее время, по всему миру, циркулируют огромные объемы информации, среди которых, немалой частью являются те, которым требуется защита. К таким данным можно отнести: сведения частных компаний и предприятий, персональные данные и др.
Однако существует опасность того, что эти данные могут быть вскрыты недоброжелателем в различных целях. Для закрытия информации применяются различные методы и способы шифрования. Но наряду с этим, существует множество алгоритмов, способных вскрыть защищаемую информацию. Научное направление, описывающее алгоритмы, способы и методы вскрытия информации, называется криптоанализом.
Классификация методов криптоанализа тесно связана с классификацией алгоритмов шифрования. Одним из ярко выраженных признаков классификации является размер обрабатываемого (шифруемого) блока. Различают поточные и блочные системы шифрования.
Поточный шифр – это симметричный шифр, в котором каждый символ открытого текста преобразуется в символ шифрованного текста в зависимости не только от используемого ключа, но и от его расположения в потоке открытого текста [2,3].
Блочное шифрование подразумевает разбиение информации на блоки определенной, фиксированной длинны, после чего эти блоки поочередно шифруются [1,2].
Для данных систем шифрования наиболее известными являются методы криптоанализа, приведенные ниже.
Для поточных шифров:
– метод полного перебор ключей;
– метод Берлекэмпа-Мэсси;
– побочные атаки;
– корреляционные методы.
Для блочных шифров:
– полный (тотальный) перебор ключей;
– метод встречи посередине;
– линейный криптоанализ;
– дифференциальный криптоанализ.
Рассмотрим наиболее подробно приведенные методы криптоанализа и кратко раскроем их суть.
Метод полного перебора заключается в переборе всех допустимых значений ключа, при этом осуществляется постоянное дешифрование на каждом ключе. Данный метод, при большой длине ключа, практически не возможен, так как существуют ограничения как во времени, так и в возможностях вычислительной техники.
Используя алгоритм Берлекэмпа-Мэсси можно построить эквивалентный линейный рекуррентный регистр (ЛРР). Полученный ЛРР будет формировать такую же последовательность, которую формирует шифробразующее устройство, а значит, есть возможность вскрыть защищаемую информацию. Однако для построения эквивалентнго ЛРР необходимо знать отрезок открытой информации и соответствующей ей криптограмме достаточно большой величины. Кроме того, минимальная длина такго ЛРР должна быть обозримой величиной, а шифробразующее устройство должно быть реализовано на одном или нескольких ЛРР.
Побочные атаки на поточный шифр заключаются в том, что формируемая на одном ключе шифргамма повторяется и зашифровывает разную информацию. В таком случае происходит перекрытие шифра, и защищаемая информация может быть легко дешифрована.
В силу специфики построения поточных шифров, наиболее распространенными атаками на поточные шифры являются корреляционные атаки. Корреляционные атаки используют корреляцию выходной последовательности схемы с входной последовательностью линейных рекуррентных регистров для восстановления их начального заполнения и, следовательно, вскрытию ключа.
Существует огромное количество методов корреляционных атак, таких как корреляционная атака Зигенталера, корреляционная атака Майера-Штаффельбаха, корреляционная атака Форре, корреляционная атака Чепыжова-Смитса, атаки, базирующиеся на восстановлении линейных полиномов и многие другие.
Метод встречи посередине основан на «парадоксе дней рождения». Если считать респределение дней рождений равномерным, то в группе из 23 человек с вероятностью 0,5 у двух человек дни рождения совпадут.
Суть данного метода заключается в замене ключа на пару эквивалентных ключей, которые позволяют получить такие же криптограммы, которые получатся, путем шифрования на истинном одном ключе. Зная исходные сообщения и соответствующие им криптограммы, выполняется следующее. Формируется случайным образом конечное число ключей, на них зашифровываются известные сообщения. Затем также формируются другие ключи, на которых расшифровываются известные криптограммы. Полученные две базы сравнивают и при наличии совпадения находят пару эквивалентных ключей.
Основная идея линейного криптоанализа состоит в использовании скрытых линейных уравнений, которые связывают некоторые биты входа и выхода шифратора. Такие уравнения будут существовать не всегда, а лишь для некоторой части входных сообщений. Следовательно, можно говорить лишь о вероятности выполнения этих уравнений. И если вероятность выполнения уравнения отлична от 50%, то такое уравнение и будет использоваться для нахождения ключа.
Решение задачи криптоанализа происходит в следующем порядке. Сначала исследуют отдельные блоки, вносящие нелинейность, и определяют наилучшую аппроксимацию линейным уравнением. Затем составляют линейные уравнения на основе алгоритма шифрования и определяют вероятность выполнения этого уравнения. На основании этих уравнений, путем перебора, определяют ключи каждого раунда.
Дифференциальный криптоанализ предназначен для вскрытия ключа интегрированного шифра, использующего конечную цикловую операцию шифрования. При этом предполагается, что шифрование на каждом цикле осуществляется на своем ключе. Данный метод криптоанализа может использовать как подобранные, так и известные открытые тексты. В основу этого метода положена неравномерность распределения поразрядных разностей по модулю 2 пар открытых и зашифрованных текстов.
На практике, функция зашифрования на одном цикле обычно является криптографически слабой, но при этом асимптотическая сложность метода практически не зависит от того, один и тот же ключ используется на всех циклах или все ключи различны. Дифференциальный криптоанализ по существу является методом, который может быть адаптирован к конкретному шифру. Существует целый ряд модификаций этого метода криптоанализа: анализ с помощью усеченных дифференциалов и дифференциалов высших порядков, атака «бумеранг», атака «прямоугольник», анализ с помощью потоков дифференциалов. Все они направлены на сокращение числа обрабатываемых при поиске ключа сообщений и шифртекстов.
Таким образом, в настоящее время существует множество различных методов криптоанализа. Следует отметить, что в настоящей статье были проанализированы лишь основные и наиболее часто реализуемые из них. Практическое применение рассмотренных методов криптоанализа зависит от сложности алгоритма шифрования и от возможностей, которыми обладает криптоаналитик. Тем самым, используя комбинации различных методов, защищаемая информация может быть вскрыта.
В целях предотвращения этого и гарантированной защиты информации от взлома применяются сложные алгоритмы шифрования, используются большие значения ключей и т. д. Однако без соблюдения организационных мер защиты, ни одна система шифрования не обеспечит гарантированное закрытие информации.
Библиографический список
- ГОСТ Р 34.12-2015 «Информационная технология. Криптографическая защита информации. Блочные шифры».
- Борисенко Н.П., Гусаров А.В., Милашенко В.И., Можин С.В. Криптографические методы защиты информации : пособие / К82-4; под общ. ред. Н.П. Борисенко. – Орел : Академия ФСО России, 2007. – 300 с
- Баричев С.Г., Гончаров В.В., Серов Р.Е. Основы современной криптографии. – М.: Горячая линия – Телеком, 2002. – 175с. – (Специальность. Для высших учебных заведений). – 3000 экз. – ISBN 5-93517-075-2.