Клод Шеннон. Теория связи в секретных системах. Характеристика ненадежности для "случайного" шифра.
В предыдущем разделе была вычислена характеристика ненадежности для простой подстановки, примененной к языку с двухбуквенным алфавитом. Но даже для этого почти самого простого шифра и языка полученные формулы уже настолько сложны, что почти бесполезны. Что же делать в практически интересных случаях, скажем в тех случаях, когда дробная транспозиция применена к английскому тексту с его крайне сложной статистической структурой. Эта сложность сама выдвигает метод подхода. Достаточно сложные проблемы часто могут быть разрешены статистически. Чтобы облегчить дело, введем понятие "случайного" шифра.
Сделаем следующие допущения.
Ненадежность ключа определяется с помощью равенства
.
Вероятность того, что от частного E к высоковероятной группе сообщений отходит ровно m линий, равна
.
Если перехвачена криптограмма, которой соответствует m таких линий, то ненадежность равна log m. Вероятность такой криптограммы равна mT/Sk, так как она может быть создана из высоковероятных сообщений, каждое из которых имеет вероятность T/S с помощью одного из m ключей. Отсюда ненадежность равна
.
Требуется найти простое приближенное выражение для HE(K), когда k велико. Если для величины m ее среднее значение = SK/T много больше 1, то изменение log m в области тех m, для которых биномиальные слагаемые велики, будет малым и мы можем заменить log m на log. Этот множитель можно вынести за знак суммы, которая даст значение . Таким образом, при этом условии
,
HE(K)H(K) – DN,
где D – избыточность на букву первоначального языка (D = DN/N).
Если мало по сравнению с k, то биномиальное распределение может быть приближенно пуассоновским:
,
где = Sk/T. Отсюда
.
Заменив m на m+1, получим
.
Это выражение можно использовать, когда близко к 1. Если же 1, то существенным является лишь первый член ряда. Отбрасывая другие, получим
.
Итак, подводя итог вышесказанному, получаем, что HE(K), рассматриваемая как функция от N – числа перехваченных букв – при N = 0 равна H(K). Далее она убывает линейно с наклоном –D до окрестности точки N = H(K)/D. После небольшой переходной области HE(K) начинает убывать экспоненциально со временем "полураспада" 1/D, если D измеряется в битах на букву. Поведение HE(K) показано на рис. 7 вместе с аппроксимирующими кривыми.
С помощью аналогичных рассуждений можно подсчитать ненадежность сообщения. Она равна
HE(M) = R0N | для | R0NHE(K), |
HE(M) = HE(K) | для | R0NHE(K), |
HE(M) = HE(K) - (N) | для | R0N ~ HE(K). |
где (N) – функция, показанная на рис. 7, причем шкала N сжата в D/R0 раз. Таким образом, HE(M) возрастает линейно с наклоном R0 до тех пор, пока она не пересечет линию HE(K). После закругленного перехода она идет ниже кривой HE(K).
Рис. 7. Ненадежность для случайного шифра. |
На рис. 7 видно, что кривые ненадежности стремятся к нулю довольно резко. Поэтому можно с достаточной определенностью говорить о точке, в которой решение становится единственным. Найденное при этом число букв мы будем называть расстоянием единственности. Для случайного шифра оно приблизительно равно H(K)/D.
[Титульный лист] [Предыдущий раздел] [Следующий раздел]
[Начало осмотра] [Что нового] [Статьи] [Выпуски в "Байтах"] [Что скачать] [Криптоалгоритмы] [Глоссарий] [Ссылки] [Гостевая книга] [Форум] [Напиши мне]Версия от 01.01.02. (c) 2002 Андрей Винокуров.