Криптография – наука о тайнописи. Учебное пособие
.pdfвторов лозунга в шифре Вижинера выполнял отрезок текста из книги.
Развитие шифров в средние века происходило не только в направлении увеличения числа возможных замен. Во времена Виженера становятся весьма популярными многозначные шифры (пропорциональная замена), где одной букве соответствует до шести знаков в шифрованном сообщении. Для затруднения дешифрования на основе анализа частот букв шифрованного текста некоторым буквам открытого текста при шифровании ставится в соответствие несколько величин из более широкого алфавита шифрованного теста (например, из алфавита двузначных десятичных чисел). При этом соответствие строится так, чтобы число допустимых образов любой буквы в шифрованных сообщениях было приблизительно пропорционально частоте использования этой буквы
воткрытых текстах. Образ конкретной буквы выбирается
входе шифрования с помощью рандомизации — случайной процедуры выбора образа из множества допустимых образов. Частотный ряд букв шифрованного алфавита, полученного с помощью шифра пропорциональной замены, существенно ближе к случайному частотному ряду, чем при простой замене.
Заметный вклад во Франции в развитие шифрования внес знаменитый кардинал Ришелье. Во второй четверти XVII в. он создал первую в мире дешифровальную службу. В службу направлялись все перехваченные криптограммы (шифрованные тексты). Им была налажена система внутригосударственной шифрпереписки, регулярное обновление через 3 года шифров. Высокопоставленные лица французского государства были снабжены основным и резервным шифрами. Используемые шифры были ранжированы по важности и распределялись по соответствующим категориям корреспондентов. Лично Ришелье разработал один из шифров.
21
КРИПТОГРАФИЯ И КОДИРОВАНИЕ
В XIX веке наступило время кодов. При кодировании условными обозначениями заменяют не только буквы алфавита и цифры, но и слова, и словесные выражения. Кодирование стало заметно развиваться после изобретения Павлом Львовичем Шиллингом электромагнитного телеграфа в 1832 г. Заметим, что Шиллинг знаменит также своим биграммным шифром, который позволял одновременно шифровать пары букв, и разработкой оригинальных кодов. Кодовые книги постепенно увеличиваются в объёме, включая в себя уже тысячи слов и выражений. Значительно увеличивается и число шифрованных сообщений, передаваемых по телеграфным каналам связи. Организовано немедленное направление шифрованных посланий с телеграфных станций в государственные дешифровальные службы для анализа криптоаналитиками. Обилие шифрованного материала позволило успешно применять статистические методы его обработки, хотя это делалось вручную и было весьма трудоёмко. Ручным оставалось и шифрование, что заметно сдерживало развитие и усложнение его приёмов.
XIX век — это также и время дешифровки обнаруженных археологами древних текстов на утраченных языках различных народов. Многие из этих текстов не были зашифрованы, трудность прочтения заключалась в определении прототипов современных языков, использованных в сообщении, и в выявлении различных закономерностей.
22
Уже в 1802 году Г.Ф. Гротефенду удалось прочитать начала двух древнеперсидских надписей. При этом ему пригодились сведения, почёрпнутые из книг древнегреческих историков. По-существу, он рассуждал также, как в примере дешифровки письма царевича Фёдора Алексеевича. Изучая начала двух официальных надписей, найденных в руинах царского дворца в Персеполе, Гротефенд предположил, что они содержат имя, родословную и титулы древнеперсидских царей. Он знал, что персидского царя называли «царь великий» и «царь царей». Сопоставляя множество фактов, Гротефенд прочитал:
(1)Дарий, царь великий, царь царей… Гистаспа сын.
(2)Ксеркс, царь великий, царь царей, Дария царя сын.
Это был первый успех в области дешифровки древних письменностей, затем последовали новые удачи. И в наши дни ещё многие надписи, сделанные 5-6 тысяч лет назад, ждут своей дешифровки.
23
ТАБЛИЧНЫЕ, КНИЖНЫЕ И МАШИННЫЕ ШИФРЫ
Изобретение радио А. С. Поповым в 1895 г. и стремительное развитие радиосвязи по всему миру привели к появлению таких понятий как радиоперехват сообщений и радиоразведка. Уже в начале ХХ века каждый обладатель чувствительного радиоприёмника получил возможность наблюдения за чужими посланиями в радиоэфире. Радиосвязь, в том числе шифрованная, особенно энергично развивалась на флотах. Прежде всего потому, что морские перевозки приносили основной доход прибрежным государствам, а военные флоты обеспечивали установившийся порядок судоходства. Военные применения радиосвязи были так значимы, что с началом Первой мировой войны в 1914 г. появляется новый, тайный, криптографический фронт борьбы противников.
Особенно ярко новый фронт проявился в войне на море, где не было колючей проволоки, разделяющей противников. Полем боёв, источником побед и поражений там стал радиоэфир.
Военно-морские силы (ВМС) противоборствующих государств использовали при организации связи в основном кодирование посредством кодовых книг с последующим шифрованием сообщения. Кодовая книга не являлась собственно шифром, а использовалась для формализации содержания передаваемых сообщений. Она позволяла заменить отдельные слова, фразы, числа из первоначального текста (так называемые словарные величины) на условные обозначения (кодовые величины).
24
Это уменьшало общий объем передаваемого сообщения и делало его удобным для передачи. Полученный таким образом текст из буквенных или цифровых групп затем шифровали. Слабость самих словарных кодов с точки зрения засекречивания сообщений прекрасно понимали еще в XIX веке. Поэтому при передаче секретных сведений радиограмма, составленная по кодовой книге, дополнительно «закрывалась» каким-либо шифром. Для этого обычно использовали шифр простой замены и уже в таком виде сообщение передавали в эфир. При этом следует признать, что использование в сложных военных условиях более надёжных, но и более трудоёмких в применении криптографических средств не представлялось возможным, так как шифрование и расшифрование переписки осуществлялось вручную.
Шифровальных машин в тот период времени ещё не было, но период ручной криптографии заканчивался. Применение шифровальных машин, получивших распространение уже в 20-е годы ХХ столетия, выполнялось с учётом опыта минувших войн, в том числе Первой мировой войны.
Интересно, что в 1914-18 годах дешифровальщики имели явное преимущество перед связистами, обеспечивающими засекреченную связь. Огромный объём шифрперехвата, многочисленные ошибки и нарушения режима шифрованной переписки открыли перед криптографами новые возможности, в частности, был сделан вывод о целесообразности в ряде случаев использования для взлома шифра всего перехваченного массива шифрованной информации, а не одной лишь шифртелеграммы.
«Магдебургская» история. Среди ярких эпизодов криптографической борьбы 1914–18 годов особенно впечатляет последствиями «магдебургская» история, начавшаяся в балтийскую ночь на 26 августа 1914 года. Эти оцененные по достоинству последствия американский
25
историк криптографии Д. Кан назвал «самой счастливой удачей во всей истории криптоанализа».
В ту ночь германские крейсеры «Аугсбург» и «Магдебург» под прикрытием трех эскадренных миноносцев попытались проникнуть в устье Финского залива. Однако в условиях сильного тумана крейсер «Магдебург» выскочил на камни у острова Оденсхольм. Попытки сняться с мели успехом не увенчались, и командир корабля приказал начальнику радиосвязи сжечь в топках уже не нужные секретные документы, кроме двух кодовых книг. После неудачных попыток стащить крейсер с камней был отдан приказ об эвакуации экипажа.
Инцидент произошел недалеко от русского наблюдательного поста, оттуда своевременно сообщили по телефону начальнику Службы связи Балтийского флота, что предположительно на риф выскочил неприятельский корабль. Немедленно к месту аварии были направлены боевые корабли. Их быстрое появление у Оденсхольма помешало выполнить эвакуацию «Магдебурга». Некоторое время «Магдебург» отвечал огнём из своих орудий, но затем его экипаж подорвал заряды, заложенные в носовых помещениях, и прекратил сопротивление. Большая часть моряков бросилась вплавь на берег. Всё это происходило в условиях сильного тумана. О секретных документах в суматохе, видимо, забыли. С одного из русских эсминцев к «Магдебургу» был послан вельбот с офицером морской разведки. Лейтенант М.В. Гамильтон так описывал дальнейшее: «Я швырял ногами различные вещи, в изобилии валявшиеся на палубе. И вдруг под пакетом с рубашками заметил сигнальный код. Не желая привлекать внимание немцев, я стал толкать его ногами к борту и, когда наш вельбот оказался под нами, сбросил его в вельбот». Поиск криптографически значимых документов вели целенаправленно. Особая команда из водолазов и минеров на дне обнаружила погибшего связиста, сжимавшего в руках «Сигнальную книгу» (2-й экземпляр).
26
Наибольшую ценность для русских радиоразведчиков и криптографов среди обнаруженных документов представляли два экземпляра «Сигнальной книги германского флота», секретные карты квадратов Балтийского моря, шифры и радиотелеграфные журналы крейсера. Вероятно, противник осознавал цену своей потери. Но замена кодовой книги дело весьма непростое, да и попадание секретных документов в руки противника не было установлено, в результате немцы свой код не сменили.
В штабе Балтийского флота достаточно быстро разобрались в тонкостях организации радиосвязи германских кораблей. Приведём пример прочтения с помощью германской «Сигнальной книги» шифрованной радиограммы, принятой радиостанцией крейсера «Магдебург» утром 2 августа 1914 года. В результате дешифрования был получен итоговый текст:
Аn «Augsburg» und «Magdeburg». Kriegszustand mit Russland. Feindseligkeit beginnen. Vorgehen nach Plan.
Перевод гласит: на «Аугсбург» и «Магдебург». Война с Россией. Начать военные действия. Действовать согласно плану.
Для передачи особо важной информации, радиограммы, составленные по «Сигнальной книге», дополнительно «закрывались» шифром простой замены. Уже к середине октября 1914 г. И.И. Ренгартену и его помощникам удалось наладить дешифрование немецкого радиообмена и читать составленные по сигнальной книге радиограммы. В дальнейшем в составе Службы связи были созданы сеть разведывательных радиостанций и дешифровальное управление. В результате умелого использования добываемой информации уже к концу 1915 года потери немецкого флота по боевым кораблям превосходили аналогичные русские потери в 3,4 раза.
Спасённый из воды экземпляр сигнальной книги передали союзникам. Вот как оценивал это событие в своих
27
мемуарах У. Черчилль: «Русские считали, что Адмиралтейству Англии, ведущей морской державы, следовало бы иметь эти книги и карты. И если бы мы прислали корабль, то русские офицеры, в ведении которых находились книги, доставили бы их в Англию. Мы незамедлительно отправили такой корабль, и октябрьским вечером получили из рук наших верных союзников слегка попорченные морем бесценные документы».
С этого момента началась деятельность британской дешифровальной службы, известной впоследствии как «Комната 40».
Своеобразным ответом со стороны криптографов на успехи дешифровальщиков стало развитие идеи Виженера в направлении идеальной случайности лозунга. Американский служащий компании AT&T, инженер Дж. Вернам изобретел в 1917 г. новый способ шифрования телеграфных сообщений, названный «одноразовым блокнотом». В дальнейшем шифр Вернама был отнесен к классу совершенно стойких шифров. Алгоритм шифрования Вернама заключался в том, что последовательность открытого текста представлялась в двоичном коде и побитово складывалась с ключом — случайной двоичной последовательностью. Сложение битов открытого текста и ключа выполнялось по правилам сложения по модулю
2: 0+0=0; 0+1=1; 1+0=1; 1+1=0. Вернам справедливо посчи-
тал, что криптографические качества предложенного им шифра весьма высоки, но доказать это математически не смог в силу особенности своего инженерного образования. Явный недостаток шифра Вернама — это большая длина ключа, она равна длине сообщения. Отсюда следуют все негативные свойства «одноразового блокнота», связанные с генерацией больших объемов ключевых массивов и их хранением. При использовании шифра Вернама сильно усложняется и задача снабжения ключами всех сторон, ведущих переписку. Для многих случаев так
28
называемая задача распределения ключей является практически нереальной.
Вместе с тем, шифр Вернама закрепил новую тенденцию в способах шифрования, заключающуюся в том, что знак шифрованного сообщения получался как результат вычисления, а не как результат считывания символа из некоей таблицы.
Начиная с 20-х годов XX века разведчиками-нелега- лами Германии, а после и других стран активно использовался шифр Вернама по модулю 10.
Рассмотрим правило шифрования на примере русского языка. Открытое сообщение из буквенной записи переводится в цифровую запись по правилу: А=00, Б=01, …, Ю=31, Я=32. Таким образом, любое сообщение заменяется на последовательность цифр от 0 до 9. Ключом является случайная последовательность тех же цифр, которая записана в специально изготовленном «шифрблокноте». Шифр сообщение получается как результат сложения по модулю 10 первого знака текста с первым знаком ключа, второго знака текста со вторым знаком ключа и т.д. Правило сложения по модулю 10 задано следующей таблицей сложения (Рисунок 7), где сумма первого числа из строки с номером n и первого числа из столбца с номером m записана на пересечении указанной строки с указанным столбцом:
29
10 |
|
|
|
|
|
|
|
|
|
|
|
по |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
|
+ |
|||||||||||
|
|
|
|
|
|
|
|
|
|
||
модулю |
|
|
|
|
|
|
|
|
|
|
|
0 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
|
1 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
0 |
|
2 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
0 |
1 |
|
3 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
0 |
1 |
2 |
|
4 |
4 |
5 |
6 |
7 |
8 |
9 |
0 |
1 |
2 |
3 |
|
5 |
5 |
6 |
7 |
8 |
9 |
0 |
1 |
2 |
3 |
4 |
|
6 |
6 |
7 |
8 |
9 |
0 |
1 |
2 |
3 |
4 |
5 |
|
7 |
7 |
8 |
9 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
|
8 |
8 |
9 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
|
9 |
9 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
Рисунок 7. Таблица сложения чисел по модулю 10
Заметим, если в этой таблице удалить первую строку и первый столбец, то оставшаяся часть таблицы совпадет с таблицей Вижинера размера 10×10, построенной по ал-
фавиту {0,1,…,9}.
Правило сложения цифр от 0 до 9 по модулю 10 можно, не используя таблицу, сформулировать иначе: если сумма двух цифр меньше 10, то эта сумма и есть результат сложения, если сумма двух цифр не меньше 10, то результат сложения получается из суммы цифр вычитанием числа 10. Например, открытый текст «ОПЕРАЦИЯ» переводится в цифровую запись 1516051700230932 и зашифровывается с помощью ключа 5170246783967501 в шифрованное цифровое сообщение 6686297483197433.
Для использования этого метода шифрования одинаковые блокноты должны быть у отправителя и получателя. Для «подсказки» получателю об использованном
30
