Анализ алгоритмов шифрования в сетях передачи данных

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

µляется как стойкость ко всем известным на данный момент методам криптоанализа. При этом, конечно, остается вероятность, что существуют неопубликованные методы вскрытия или что новые методы будут изобретены в ближайшем будущем. С этой реальностью приходится мириться, так как других вариантов нет.

Другой класс алгоритмов - ассиметричные. Данные шифры используют разные ключи для шифрования и дешифрования. При этом, один ключ может открыто передаваться по незащищенным каналам, поскольку с его помощью можно только зашифровать сообщение, но не расшифровать. Схема использования таких алгоритмов следующая. Отправитель зашифровывает сообщение своим закрытым ключом, и затем открытым ключом получателя. После, получатель расшифровывает сообщение сначала своим закрытым ключом, а потом открытым ключом отправителя. Таким образом, гарантируется подлинность сообщения (потому что закрытый ключ отправителя известен только ему). При этом, коммуникантам не нужен защищенный канал связи для передачи ключей.

Ассиметричные шифры достаточно ресурсоемки, поэтому на практике используют комбинацию из ассиметричного и симметричного алгоритмов. Сначала с помощью асинхронного алгоритма стороны обмениваются ключами, после чего общение ведется посредством синхронного алгоритма.

Криптойстойкость ассиметричных алгоритмов основывается на сложности решения некоторых математических задач. На сегодняшний момент используются задачи логарифмирования и факторизации больших чисел [5]. Данные задачи пытались решить множество ученых, и все они пришли к выводу, что их решение требует большого количества вычислительных операций. Однако, всегда остается вероятность, что когда-нибудь будет изобретен несложный способ факторизовать большие числа и логарифмировать, что сделает ассиметричные алгоритмы некриптойстойкими.

Стоит отметить, что существует симметричный алгоритм шифрования, который доказано является абсолютно стойким. В прикладной криптографии шифр носит название Одноразовый блокнот [7]. Этот алгоритм был предложен Шенноном в его статье Теория связи в секретных системах [6]. Суть алгоритма в простом наложении ключа сложением по модулю 2. Однако должно выполняться 3 ограничения:

Длина ключа должна быт не меньше длины сообщения;

Ключ должен представлять случайную последовательность (ни один статистический тест не должен выявлять в нем закономерности [1]);

Ключ должен использоваться один единственный раз.

Выполнение всех этих условий на практике достаточно затруднительно, поэтому данный алгоритм имеет очень ограниченное применение.

 

1.6 Современный криптоанализ

 

Как было сказано в предыдущем разделе, единственной характеристикой стойкости алгоритма, есть его стойкость ко всем известным методам криптоанализа.

То есть, чем больше методов криптоанализа будет известно, тем меньше вероятность, что злоумышленник найдет непредусмотренный способ вскрытия шифра. Кроме того, отсюда следует, что для того, чтобы разработать стойкий алгоритм, необходимо знать все известные на данный момент методы криптоанализа.

В связи с этим, криптоанализ в настоящее время, достаточно активно развиваемое направление в науке.

В зависимости от данных, которые криптоаналитик может добыть у шифратора, существуют следующие виды атак [8]:

. Атака с известным открытым текстом. Предполагает наличие у криптоаналитика некоторого количества пар текстов, каждая из которых представляет собой открытый текст и соответствующий ему шифротекст.

. Атака с выбранным открытым текстом. У криптоаналитика есть возможность выбора открытых текстов для получения соответствующих им шифротекстов (как это может быть полезно криптоаналитику, будет рассмотрено ниже).

. Адаптивная атака с выбором открытого текста. Криптоаналитик может не просто выбирать открытые тексты для зашифрования, но и делать это многократно, с учетом результатов анализа ранее полученных данных.

. Атака с выбором шифротекста. Криптоаналитик может выбирать шифртексты и, прогоняя их через шифратор, получать путем расшифрования соответствующие им открытые тексты.

. Адаптивная атака с выбором шифротекста. По аналогии с описанными ранее атаками ясно, что криптоаналитик может многократно выбирать шифротексты для их расшифрования с учетом предыдущих результатов.

Стоит отметить, что современные шифры достаточно стойки, и их криптоанализ зачастую носит чисто теоретический характер. Так, наилучшее вскрытие полного 16-раундового DES методом дифференциального криптоанализа требует 247 выбранных открытых текстов [9]. Очевидно, что такая атака трудноосуществима на практике. Тем не менее, производительность вычислительных средств постоянно растет, и не исключено, что в ближайшем будущем будут разработаны квантовые компьютеры или ЭВМ основанные на электромагнитных световых волнах. Поэтому, криптоанализ ставит задачу сделать как можно больший запас прочности для алгоритмов. В криптологии существует даже такой термин, как запас криптостойкости (security margin) [8]. Суть его в следующем. В процессе взлома шифра, криптоаналитик может использовать неполный алгоритм (например, с уменьшенным числом раундов, или с небольшими изменениями в структуре раунда). Если вскрытие произошло удачно, то разница между раскрытым алгоритмом и полным и обозначается вышеуказанным термином.

шифр криптография защита информация криптоанализ

 

2. Основные