Европейская криптология. История спецсвязи
Шрифт:
Объясняя широкое распространение тайнописи среди учёных средневековья, Александр Иванович Герцен писал: «гонимые, скитальцы из страны в страну, окруженные опасностями, они не зарыли из благоразумного страха истины, о которой были призваны свидетельствовать; они высказывали её везде; где не могли высказывать прямо – одевали её в маскарадное платье, облекали аллегориями, прятали под условными знаками, прикрывали тонким флером, который для зоркого, для желающего ничего не скрывал, но скрывал от врага: любовь догадливее и проницательнее ненависти. Иногда они это делали, чтоб не испугать робкие души современников; иногда – чтоб не тотчас попасть на костёр».
Наибольшего расцвета криптология достигла в период Эпохи Возрождения. Творческие
Леонардо да Винчи (Leonardo da Vinci) (1452-1519) также шифровал большинство своих личных записей. Самым простым видом шифра, которым он пользовался, было обратное (зеркальное) написание текста так, что прочитать его можно было лишь в отражении зеркала, например: слово «UKRAINE» превращается в шифротекст «ENIARKU». Однако Леонардо иногда использовал и более серьёзные шифры, поэтому далеко не все его записи расшифрованы и изучены до сих пор. Неслучайно вышли в свет книга и фильм с названием «Код да Винчи».
Одним из ведущих европейских криптологов был известный английский писатель, астроном-любитель, таможенный чиновник Джефри Чосер (Geoffrey Chaucer) (1343-1400). В 1370-х годах он выполнял секретные дипломатические поручения своего короля в Италии и Франции. Всю тайную переписку Чосер осуществлял, используя шифр простой замены. Его книга «Экватор Планет», вышедшая в 1390 году, содержала отдельные шифрованные главы.
В 1401 году в Мантуанском герцогстве был найден шифр с использованием «омофонов» для гласных букв. Тот факт, что «омофоны» применялись не для всех букв, а только для гласных свидетельствовал о знании криптоаналитических методов, основанных на частоте появления знаков шифротекста.
Широкое развитие торговли в средние века спровоцировало появление специфических шифров, очень простых и удобных, которыми могли бы пользоваться купцы для передачи, например, даты приезда или цены товара. Это были простые шифры замены цифр на буквы, основанные на ключевом слове. Торговцы заранее договаривались об использовании общего ключевого слова, буквы которого соответствовали бы цифрам.
Например, для ключа «ШИФРОВАННЫЙ» цифра 0 означает букву «Ш», цифра 1 означает «И», 2 – «Ф», 3 – «Р» и т.д. Поэтому получив от корреспондента сообщение «ПРИБЫВАЮ ИФШАЙР», они его читали как «ПРИБЫВАЮ 12/06/93». Простота и удобство этой системы шифрования позволили ей дожить до начала XIX века без всяких изменений. Кроме этих шифров, чаще всего использовался шифр простой замены, заключавшийся в замене каждой буквы сообщения на соответствующую ей букву шифра.
В ручных шифрах того времени часто использовались таблицы, которые давали простые шифры перестановки. Ключом в них служил размер таблицы и фраза, которая задавала перестановку или специальную особенность таблиц. Простая перестановка без ключа – один из самых простых методов шифрования, соответствующий шифру «скитала».
Например, сообщение «ВСТРЕТИМСЯ В ШЕСТЬ» записывалось в таблицу размером 4х4 по столбцам (см. таблицу).
После того, как открытый текст был записан по столбцам, для образования шифровки он считывался по строкам. В результате получался шифротекст: «ВЕСЕСТЯСТИВТРМШЬ». Для использования этого шифра отправителю и получателю нужно было договориться об общем ключе в виде размера таблицы. Объединение букв в группы не входило в ключ шифра и использовалось лишь для удобства записи текста.
Более практичным был метод
В результате считывания по строкам сообщение «ВСТРЕТИМСЯ В ШЕСТЬ» преобразовывалось в шифротекст «ЕЕСВТСЯСИТВТМЬШР».
Кроме одиночных перестановок использовались еще двойные перестановки столбцов и строк таблицы с сообщением в соответствии с заранее определённым порядком нумерации строк и столбцов таблицы, что и было ключом шифра. При этом перестановки определялись отдельно для столбцов и отдельно для строк. В таблицу вписывался текст по столбцам, после чего осуществлялись перестановки столбцов и строк (см. 3 квадрата).
В результате конечного считывания по строкам сообщение «ВСТРЕТИМСЯ В ШЕСТЬ» превращалось в такой шифротекст: СТСЯЕЕВСЬМРШТИТВ. При расшифровывании порядок перестановок был обратным. Однако даже шифры двойной перестановки были слабым видом шифра, потому что легко читались при любом размере таблицы шифрования.
Новый этап развития криптологии начался во второй половине XV века с введением в практику многоалфавитных шифров замены. Отцом этого шифра оказался теоретик искусства Леон Баттиста Альберти (Leone Battista Alberti) (1404-72), который обобщил опыт гуманистической науки в изучении античного наследия, написал трактаты «О статуе», «О живописи», «О зодчестве», 10 книг о зодчестве, построил палаццо Ручеллаи, церковь Иль Джезу и ряд других замечательных достижений зодчества средневековой Италии.
В 1466 году Альберти предоставил папской канцелярии также и трактат о шифрах, где осуществил анализ частоты букв, исследовал шифры замены и перестановки, коснулся вопросов стойкости шифров. Подмеченная Альберти разная частота появления букв в осмысленных текстах дала толчок к изучению синтаксических свойств письменных сообщений. При этом основное внимание уделялось буквам, которые чаще всего встречались в тексте.
Альберти впервые выдвинул идею «двойного» шифрования – текст, полученный в результате первого шифрования, поддавался повторному шифрованию. Он предложил использовать два или больше шифралфавитов, переходя от одного к другому в процессе шифрования и запутывая этим возможных криптоаналитиков (см. таблицу).
Здесь, например, есть два возможных шифралфавита, и мы можем зашифровать сообщение, используя по очереди то один, то другой. Таким образом, чтобы зашифровать слово «UKRAINE», зашифруем первую букву с помощью первого шифралфавита, так что «U» превратится в «Z», вторую же букву зашифруем, используя второй шифралфавит, при этом «K» станет «E». Для шифрования третьей буквы вернёмся опять к первому шифралфавиту (R – U), а, чтобы зашифровать четвёртую букву, опять обратимся ко второму шифралфавиту (A – U) и так далее: I – M, N – H, E – H. В результате получим такой шифротекст: ZEUUMHH.