35
2 ОБЗОР ПРИРОДНЫХ АЛГОРИТМОВ КРИПТОАНАЛИЗА
Так как задачей криптографии
является защита информации, то при
создании любой
криптографической системы необходимо предусмотреть её
криптостойкость против возможных попыток взлома, то есть определения
ключа шифра и
расшифрования информации, либо ее искажения, а также
определение уязвимостей алгоритма шифрования. Для осуществления
криптоанализа системы, то есть возможностей определения секретного ключа,
проводятся так называемые криптографические атаки.
Существуют различные методы криптоанализа или криптоатак:
1.
аналитические атаки;
2.
статистические атаки;
3.
силовые атаки;
4.
атаки по сторонним или побочным каналам,
иными словами, по
сторонней информации, которая может быть получена от устройства
шифрования, не являющейся ни шифротекстом, ни открытым текстом: по
времени, по мощности, по
ошибкам вычисления, по электромагнитному
излучению.
Для блочных симметричных шифров характерно применение
следующих криптоатак [3]:
1. с использованием только зашифрованного текстами
2. с известным открытым текстом
3. атака со связанным ключом
4. атака
с избранныи тм ключом
5. линейный криптоанализ
6. дифференциальный криптоанализ
Так же для криптоанализа используются эволюционные алгоритмы, к
числу которых относятся генетический алгоритм, алгоритмы роевого
интеллекта — децентрализованные самоорганизующиеся системы.
36
Эвристические алгоритмы применяются для решения задач высокой
вычислительной
сложности, к которым можно отнести задачу криптоанализа.
В то время как полный перебор вариантов решения занимает существенное
время и не всегда является возможным, эвристические методы позволяют
найти достаточно хорошее решение, при котором
получаемый результат
является приемлемым. В алгоритмах эволюционных вычислений основным
является построение начальной модели и правил, по которым она может
изменяться, то есть эволюционировать.
Существует ряд работ, посвященных
исследованию возможностей
применения данных алгоритмов для криптоанализа симметричных, в
основном, блочных алгоритмов, таких как DES с использованием ограничений
по количеству раундов шифрования [22].
При работе с эвристическими алгоритмами возникает необходимость
оценки полученного решения. Для таких целей служит фитнесс-функция,
которая отображает множество решений задачи на множество действительных
чисел. При этом предполагается, что наиболее приспособленные особи должны
получить наибольшее значение фитнесс-функции.
Выбор фитнесс-функции
является одной из основных задач при использовании эвристических
алгоритмов криптоанализа. Одним из вариантов при работе с осмысленными
текстами может являться оценка сравнения частот встречаемости биграмм с
эталонными значениями [10]. Но в более общем случае, если текст является не
осмысленным, такой вариант не будет эффективным. Другим способом
является очень общий вариант: побитовое сравнение. В представленной работе
используется фитнесс-функция с побитовым сравнением.
При этом
сравнивается блок оригинального шифротекста и блок шифров. Еще одним
словом в пользу использования такой фитнесс-функции в данной работе
является то что работа проводится с ограниченным количеством информации.
Рассматривается отдельный блок оригинального текста и оригинального
зашифрованного текста, по размеру соответствующий одному блоку, который
используется в алгоритме шифрования: для AES – 128 бит, для DES – 64 бит.