Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОЗІ / Лекц_ї / все / Методы и средства защиты информации, 2003.pdf
Скачиваний:
830
Добавлен:
05.06.2015
Размер:
8.14 Mб
Скачать

Безусловная и теоретическая стойкость 355

Теперь рассмотрим схему прохождения потока информации в криптографической системе, обеспечивающей имитостойкость (рис. 18.4).

Рис. 18.4. Поток информации в криптографической системе, обеспечивающей имитостойкость

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

Любая попытка со стороны перехватчика расшифровать криптограмму С для получения открытого текста Р или зашифровать свой текст Р' для получения приемлемой криптограммы С' без получения ключа должно быть полностью исключено.

Если криптоанализ невозможен и криптоаналитик не может вывести Р и С или С' из Р' без предварительного получения ключа, то такая криптографическая система являет-

ся криптостойкой.

Безусловная и теоретическая стойкость

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

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

Система такого рода называется безусловно стойкой.

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

356Глава 18. Криптографическая защита

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

Единственной безусловно стойкой системой, находящейся в широком пользовании, является лента однократного использования, в которой открытый текст объединяется со случайным ключом такой же длины. Обычно открытый текст представляет собой строку из n бит, которая объединяются со случайным ключом такой же длины с помощью сложения по модулю 2. Как видно из самого названия, этот ключ никогда больше не используется.

Даже если бы криптоаналитик попытался осуществить дешифрирование, используя все 2n возможных ключей, он просто увидел бы все 2n возможных открытых текстов одинаковой длины. Поскольку перехват криптограммы не позволяет криптоаналитику вывести какое-либо сообщение в виде открытого текста, то он не узнает ничего, кроме длины сообщения. Клод Шеннон анализировал абсолютную стойкость более подробно. Если криптоаналитик располагает неограниченным временем для вычислений, то он не связан рамками вычислительной эффективности и может провести полный криптоанализ, испытывая все возможные ключи и сохраняя в качестве результата все осмысленные тексты. В случае ленты однократного использования необходимо сохранить все осмысленные тексты, имеющие одинаковую с криптограммой длину, но в других безусловно стойких системах может быть меньшее количество осмысленных решений. Например, криптограмма XMDA, полученная в результате простой подстановки годится для любого четырехбуквенного слова с неповторяющимися буквами.

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

нон назвал это интервалом однозначности N0. В случае ленты однократного использования этого никогда не случиться, и N0 = , тогда как в случае простого подстановочного шифра значение N0 конечно. Шеннон предложил модель для предсказания интервала однозначности шифра. Полученные с помощью этой модели результаты согласуются с практикой. В соответствии с этой моделью “случайного шифра”

N0 =

H(K)

(18.7)

D

где H(K) — энтропия ключа (обычно это просто длина ключа, измеренная в битах, или log2 от количества ключей), D — избыточность языка, измеренная в битах на 1 знак. (Например, в английском языке за буквой Q всегда следует буква U, которая является избыточной.) Качественно модель можно показать, переписав (18.7) в виде требования для однозначности решения

H(K) N0D

(18.8)

Безусловная и теоретическая стойкость 357

где H(K) характеризует количество неизвестных в двоичном представлении ключа, а N0D в широком смысле определяет количество уравнений, которые необходимо решить для нахождения ключа. Когда количество уравнений меньше количества неизвестных, однозначное решение невозможно и система является безусловно стойкой. Когда количество уравнений больше количества неизвестных, т.е. как в (18.8), однозначное решение возможно и система не является безусловно стойкой, хотя она все еще может быть вычислительно стойкой.

Несмотря на то, что в теории кодирования Шеннона (т.е. в предположении, что криптоаналитик располагает неограниченными ресурсами) обычно рассматривается нападение при наличии только шифрованного текста, но иногда используются и комбинации шифрованного и открытого текста, что повышает избыточность.

Уравнение (18.7) показывает ценность снятия данных, производимого перед шифрованием.

Согласно Фридмэну, почти любая криптограмма из 25 букв и более, полученная подстановкой, может быть раскрыта. Поскольку криптоаналитик располагает ограниченными вычислительными возможностями, он не может перепробовать все 26! 4.1026 ключей и должен полагаться на субоптимальные методы, такие как частотный анализ. Таким образом, можно сказать, что N0 = 25 знаков.

В случае ленты однократного использования H(K) = , откуда, согласно (7), N0 = . После простой подстановки получаем H(K) = log2(26!) = 88,4 бит, поэтому для вычисления N0 принято находить D. Каждый знак мог бы переносить максимум log2(26) = 4,7 бит информации, если бы все комбинации были возможны. Но поскольку правила правописания и грамматики запрещают использование большинства комбинаций, то в среднем каждый знак переносит всего лишь 1,5 бит информации. Оставшиеся 3,2 бит оказываются избыточными, откуда D = 3,2 бит/знак. Таким образом, уравнение (18.7) представляет величину N0 = 28 знаков, что хорошо согласуется с практикой.

Например, если перехвачено сообщение длиной в 1000 знаков и известна некоторая последовательность из 100 знаков открытого текста, то общая избыточность составит не 3200 бит, а (900 знаков) × (3,2 бит/знак) + (100 знаков) × (4,7 бит/знак) = 3350 бит.

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

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

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