Вообще все шифры могут быть разделены на два вида: перестановка и замена. При перестановке буквы сообщения просто переставляются, образовывая анаграмму. Для очень короткого сообщения, которое складывается, например, из одного слова, такой способ достаточно ненадежный, поскольку существует крайне ограниченное число возможных способов перестановки букв. Так, 3 буквы могут быть расставлены всего лишь 6 разными способами. Однако по мере увеличения численности букв количество возможных перестановок стремительно растет, и возобновить исходное сообщение становится невозможно, если неизвестен точный способ шифрования. Например, если фраза состоит из 35 букв, то количество их разных перестановок составляет больше 50 000 000 000 000 000 000 000 000 000 000.
Если бы один человек смог проверять одну перестановку в секунду, и если бы все люди на Земле работали круглые сутки, чтобы проверить все возможные перестановки, нужно было бы времени в тысячу раз больше, чем срок существования Вселенной.
Создается впечатление, что случайная перестановка букв гарантирует очень высокую степень безопасности, поскольку для противника дешифровать даже короткое предложение окажется невыполнимым. Однако при перестановке может образоваться невероятно сложная анаграмма, и если буквы случайно, ни с того, ни с сего перепутаются, то ни получатель, ни перехватчик не смогут ее расшифровать. Поэтому способ перестановки букв должен быть предварительно обсужден отправителем сообщения и его получателем, но вместе с тем сохраняться в тайне от противника.
Первым шифровальным устройством, которое дошло до нас и реализовывало шифр перестановки, была так называемая «скитала» или «сцитала» (около VI-V ст. до н.э.), которая использовалась в античный период спартанцами.
Скитала представляла собой деревянный цилиндр, вокруг которого наматывалась полоска кожи или пергамента. Отправитель писал сообщение по всей длине скиталы, а затем разматывал полоску, на которой после этого оставался бессмысленный набор букв. Таким образом сообщение оказывалось зашифрованным. Вестник брал эту полоску и прятал сообщение, используя полоску как пояс, буквами вовнутрь, то есть кроме криптографии использовалась также и стеганография. Чтобы получить исходное сообщение, адресат просто наматывал полоску кожи вокруг скиталы того же диаметра, какой был и у скиталы отправителя.
В 404 году до н.э. к спартанскому полководцу Лисандру привели одного из 5-ти вестников, который остался живым после крайне опасного путешествия из Персии, был окровавлен и едва держался на ногах. Он передал свой пояс Лисандру, который намотал его вокруг своей скиталы и прочитал, что персидский военачальник Фарнабаз собирается напасть на него. Благодаря скитале Лисандр успел подготовиться к нападению и отбил его.
Греческий историк Плутарх так описал этот способ шифрования: «Отправляя к месту службы начальника флота или сухопутного войска, эфоры вручают отъезжающему круглую палку. Другую, совершенно одинаковой длины и толщины, оставляют себе. Эти палки и называют скиталами. Когда эфорам нужно сообщить какую-нибудь важную тайну, они вырезают длинную и узкую, вроде ремня, полосу папируса, плотно, без промежутков наматывают ее на свою скиталу и пишут на нем текст. Затем снимают полосу и без палки отправляют ее военачальнику. Так как буквы на ней стоят без всякой связи, разбросаны в беспорядке, прочитать написанное он может, только взяв свою скиталу и намотав на нее вырезанную полосу, чтобы, водя глазами вокруг палки и переходя от предыдущего к последующему, иметь перед собой связное сообщение».
Это то же самое, что и буквы писать не подряд, а через определенное число, по кругу до тех пор, пока весь текст не закончится. Сообщение «ВЫСТУПАЙТЕ» при окружности палочки в 3 буквы даст шифровку «ВУТИПЕСАТЙ».
Для прочтения шифровки нужно было не только знать систему засекречивания, но и иметь ключ в виде палки определенного диаметра. Зная тип шифра, но не имея ключ, расшифровать сообщение было бы сложно. Шифр был достаточно популярен в Спарте и многократно совершенствовался в более поздние времена. О его важном значении и большом распространении говорит свидетельство Плутарха в «Сравнительных жизнеописаниях», когда историк сообщает о жизни греческого полководца Алкивиада: «Однако Лисандр обратил внимание на эти слова не раньше, чем получил из дома скиталу с приказанием отделаться от Алкивиада… »
Этот нехитрый способ часто использовался из-за своей простоты и возможности оперативного расшифровывания сообщений. В то же время стойкость данного шифра была небольшой, потому что позже Архимед предложил устройство («антискитала»), с помощью которого расшифровка подобного сообщения без нужного цилиндра была достаточно простой и быстрой. Ремень наматывали на коническое «копье» и двигали верх и вниз до тех пор, пока не находили нужный диаметр, а текст сообщения становился понятным.
Альтернативным шифру перестановки был шифр замены, в котором каждая буква в исходном тексте замещалась другой буквой. Одно из первых описаний шифра замены было приведено в трактате «Камасутра», написанном в IV веке н.э. священником-брамином Ватсьяяной Малланага, но основанному на манускриптах, которые относятся к IV веку до н.э.
В соответствии с «Камасутрой» женщины должны владеть 64 искусствами, такие как приготовление еды и напитков, искусство одевания, массажа, приготовления ароматов. В этот список также входили менее очевидные искусства: колдовство, игра в шахматы, переплетное дело и плотничество. Под номером 45 в списке находилось искусство тайнописи «mlecchita-vikalpa», предназначенное для того, чтобы помочь женщинам скрыть подробности своих любовных связей.
Один из таких способов заключался в том, чтобы расположить попарно буквы алфавита случайным образом, а затем замещать каждую букву в исходном сообщении ее парной (симметричной). Если применить этот принцип к латинскому алфавиту, то можно составить такую таблицу (линейку) шифрования:
D A M H I K O Z S U W Y
X B T V G J C L N E Q F P
Тогда вместо слова «UKRAINE» отправитель напишет слово «QJNBGRS».
На Ближнем Востоке один из первых шифров замены был разработан древними евреями и назывался «темура» – «обмен». 22 буквы еврейского алфавита делились на две части, причем одна содержалась над другой; потом верхние буквы замещались на нижние или наоборот. Можно было установить всевозможные комбинации в зависимости от места деления алфавита и направления перемещаемых букв.
Самый простой способ заключался в делении алфавита посередине так, чтобы первые две буквы, «А» и «Б», совпадали с двумя последними, «Т» и «Ш». Эти буквы и дали название методу шифровки – «Атбаш» (англ. Atbash). Это был простой шифр одноалфавитной замены для еврейского алфавита. Таблица (линейка) шифровки этим методом для латинского алфавита будет выглядеть таким образом:
A B C D E F G H I J K L M
Z Y X W V U T S R Q P O N
Видим, что в этом шифре замена имеет симметричный вид. Таким образом слово «UZHGOROD» превращалось в слово «FASTLILW».
Другой шифр «Альбам» заключался в разбивке алфавита на две части и расположении одной части под другой, но применялось другое направление расстановки букв:
A B C D E F G H I J K L M
N O P Q R S T U V W X Y Z
Слово «UZHGOROD» превращалось уже в слово «HMUTBEBQ».
Первое документально подтверждено использование шифра замены в военных целях появилось в «Записках о галльской войне» (лат. Commentarii de Bello Gallico) Гая Юлия Цезаря (I века до н.э.). Цезарь описывал, как он послал сообщение Цицерону, который находился в осаде и был на грани капитуляции. В этих листьях латинские буквы были заменены греческими, потому враг его не смог бы понять.
Цезарь так часто пользовался тайнописью, что Марко Валерий Проб написал целый трактат о применяемых им шифрах, который, к сожалению, не дошел до наших дней. Однако благодаря произведению Гая Транквилла Светония «Жизнь 12 Цезарей», написанному во ІІ веке н.э., у нас есть подробное описание одно из шифров замены, которые применялись Юлием Цезарем. Он просто замещал каждую букву в послании буквой, которая находилась в алфавите на три позиции дальше.
Вот как об этом сообщает Рощу Светоний: «Существуют и его письма Цицерону и письма к близким о домашних делах: у них, если нужно было сообщить что-либо негласно, он пользовался тайнописью, то есть менял буквы так, чтобы из них не состояло ни одно слово. Чтобы разобрать и прочитать их, нужно читать каждый раз четвертую букву вместо первой».
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
Сначала выписывался алфавит в естественном порядке, а затем под ним выписывался тот же алфавит, но с сдвигом на 3 буквы влево. При зашифровании буква «А» замещалась буквой «D», «B» замещалась на «E», «C» – на «F» и так далее. Таким образом слово «UZHGOROD» превращалось в шифротекст «XCKJRURG», а «UKRAINE» – в «XNUDLQH». Получатель зашифрованного сообщения искал эти буквы в нижней строке и по буквам над ними возобновлял исходное слово. Ключом в шифре Цезаря была величина сдвига нижней строки алфавита, то есть цифра 3. Наследник Юлия Цезаря – Цезарь Август – использовал тот же шифр, но с ключом сдвига 4.
Уже в IV веке до н.э. делались попытки «механизации» криптологического дела, связанные в первую очередь с именем древнегреческого полководца Энея Тактики, защитника Трои, друга Гектора. Он создал так называемый «диск Энея», который получил в Древней Греции широкое применение. В диске диаметром 10-15 см и толщиной 1-2 см высверливались отверстия, которые соответствовали буквам алфавита, через которые протягивалась нить в соответствии с буквами шифрованного текста. Для расшифровывания нить вытягивали, получая обратную последовательность букв. Этот примитивный на первый взгляд способ шифрования был достаточно эффективен, потому что противнику, который перехватил сообщение, было неизвестно, какая буква отвечает каждому отверстию. Кроме того, если возникала опасность перехвата сообщения, нить можно было легко порвать, тем самым уничтожив его.
Идея Энея была использована при создании и других оригинальных шифров замены. В частности, в одном из вариантов вместо диска использовалась линейка с количеством отверстий, равным количеству букв алфавита. Каждое отверстие соответствовало своей букве, а буквы по отверстиям располагались в произвольном порядке. К линейке была прикреплена катушка с намотанной на нее нитью. Рядом с катушкой была прорезь.
При шифровании нить протягивалась через прорезь, а затем через отверстие, которое отвечало первой букве шифрованного текста, при этом на нити завязывался узелок в месте прохождения ее через отверстие. Потом нить возвращалась в прорезь и аналогично зашифровывалась вторая буква текста и так далее.
По окончании шифровки нить вытягивалась и передавалась получателю сообщения. Тот, имея идентичную линейку, протягивал нить через прорез к отверстиям, обусловленным узлами, и возобновлял исходный текст по буквам отверстий.
Это устройство получило название «линейка Энея». Шифр, реализованный линейкой Энея, был одним из примеров шифра замены: когда буквы замещались на расстоянии между узелками с учетом прохождения через прорез. Ключом шифра был порядок расположения букв по отверстиям в линейке.
Противник, который получил нить (даже, имея линейку, но без нанесенных на ней букв), не мог прочитать переданное сообщение. Аналогичное «линейке Энея» «узелковое письмо» получило распространение у индейцев Центральной Америки. Свои сообщения они также передавали в виде нити, на которой завязывались разноцветные узелки, которые определяли содержание сообщения.
Еще одно изобретение древних греков – так называемый «квадрат Полибия». Греческий писатель Полибий (около 200 – 120 до н.э.) использовал систему сигнализации, которая была широко принята как метод шифровки. Он записывал буквы греческого алфавита в квадратную таблицу и замещал их числовыми координатами в таблице номером строки и номером столбца. Пары чисел передавались с помощью факелов. В варианте с латинским алфавитом для передачи, например, буквы «U» нужно было взять 4 факела в правую руку и 5 – в левую, или записать как цифру «45» (см. таблицу).
Например, слово «UKRAINE» можно записать как цифровой шифротекст «45254211243315» или «54522411423351».
Интересно, что шифр Полибия дошел до наших дней и получил своеобразное название «шифра узников». Для его использования нужно было только знать естественный порядок расположения букв алфавита (как в вышеупомянутом примере для английского языка). Число 3, например, передавалось путем тройного стука. При передаче буквы сначала отстукивалось число номера строки, в которой находилась буква, а затем число номера соответствующего столбца. Например, буква «F» передавалась двойным стуком (вторая строка) и потом одинарным (первый столбец).
С применением этого шифра связаны некоторые исторические казусы. Да, российские «декабристы», которые были заключены после неудачного восстания, не смогли установить связь с князем Одоевским. Оказалось, что он (хорошо образованный при тех временах) не помнил естественный порядок расположения букв в российском и французском алфавитах (другими языками он не владел). «Декабристы» для российского алфавита использовали прямоугольник размера 5x6 (5 строк и 6 столбцов) и сокращен до 30 букв алфавит.
Позже буквы стали располагать в квадрате хаотически, но это требовало наличие такого квадрата у получателя сообщения, которое также было опасно. Выход был найден в применении так называемого ключевого слова, которое легко запоминалось. Избиралось недолгое слово (например, «UKRAINE»), из него забирались буквы, что повторялись, а те, которые оставались, записывались в первые клетки квадрата по строкам. Пустые клетки заполнялись буквами алфавита, которые остались, в естественном порядке (см. таблицу).
В результате такой шифровки слово «UZHGOROD» превращается в цифровой шифротекст «11553332414125».
Полибийский квадрат стал одной из наиболее широко распространенных криптосистем, которые употреблялись в то время. Этому способствовала его достаточно высокая стойкость (во всяком случае, к автоматизации дешифровальных систем): квадрат 5х5 для латинского алфавита содержит 15511210043331000000000000 (расчет достаточно приблизителен) возможных положений, что практически исключает его дешифрацию без знания ключа.
Ленивые и потому изобретательные римляне в IV веке до н.э., чтобы упростить процедуру шифрования, начали применять два шифровальных диска. Каждый из дисков, размещенных на общей оси, содержал на своём ободе алфавит в случайной последовательности. Каждой букве первого диска отвечала буква второго, что и составляло шифр. Найдя на одном диске букву текста, из другого диска считывали соответствующую ей букву шифра. Такие приборы, которые создавали шифр простой замены, использовались вплоть до эпохи Возрождения.
Эти криптосистемы активно применялись в Древней Греции и Риме и надолго определили характер криптологии. В условиях необходимости ручного расшифровывания, полибийский квадрат был практически неуязвимым шифром, а скитала и диск Энея были достаточно простыми. Однако они позволяли оперативно зашифровывать и расшифровывать информацию, что делало их выгодными, скажем, в полевых условиях для оперативной передачи приказов.
С упадком античной цивилизации и образованием в Европе варварских государств, криптология обветшала. Большой вред её развитию был нанесён во времена средневековой инквизиции. Все лучшие достижения цивилизации, а вместе с ними и криптология, были утеряны. По свидетельству святого Джерома «весь мир окунулся в руины». В условиях, когда грамотность была крайне низкой, зашифровывать сообщение не было необходимости, потому и самих письменных сообщений практически не было.
Так, король франков Карл Великий, основавший в 800 году Священную Римскую империю, научился читать и писать только в 50 лет. Тем не менее он знал и использовал в переписке со своими генералами шифр замены букв алфавита группой символов.
Образование и грамотность в те времена сосредоточились в церкви, поэтому тайнопись стала её монополией. Церковь постановила, что простым парафиянам нельзя скрывать тайны от «Господа», а тайнопись – это «ересь». При использовании тайнописи предусматривались жестокие виды наказания, вплоть до казни.
Кроме вышеперечисленных причин, криптология находилась в упадке ещё и потому, что в ней видели элементы колдовства. Набор непонятных букв или символов, сам по себе похожий на заклинание, воспринимался как что-то магическое, а люди, понимавшие в этом наборе символов содержание, расценивались как колдуны или маги, что не могло не наложить свой отпечаток на отношение к ним в христианской Европе.
С первых дней своего существования криптология была нацелена на утаивание содержания важных разделов письменных документов, имевших отношение к таким сферам магии, как мысль и заклинание. В одной из рукописей о магии, которая датируется III веком н.э., был использован шифр для утаивания важных частей колдовских рецептов. Криптология часто служила магии во времена средневековья, и даже в эпоху Возрождения с помощью шифров алхимики засекречивали важные части формул получения «философского камня».
К шифрованию информации «призывались» и мистические силы. Так, например, рекомендовалось использовать «магические квадраты». В квадрат размером 4 х 4 вписывались числа от 1 до 16. Его магия заключалась в том, что сумма чисел по строкам, столбцам и диагоналям равнялась одному и тому же числу, равному 34. Впервые эти квадраты появились в Китае, где им и была приписана некоторая «магическая сила».
Для зашифрования слова «ЗАКАРПАТЬЕ» буквы вписывались последовательно в квадрат в соответствии с записанными в них цифрами, а в пустые клетки вписывались любые буквы (см. таблицу).
После этого буквы записывались в строку и получался такой шифротекст: ЖКАГРЯБТТПАВАЕДЗ. Данный шифр – это обычный шифр перестановки, но считалось, что особую стойкость ему придают свойства «магического квадрата».
На первый взгляд кажется, что магических квадратов очень мало. Однако их число очень быстро растёт с увеличением размера квадрата. Так, существует лишь один магический квадрат размером 3х3, если не принимать во внимание его повороты. Магических квадратов 4х4 насчитывается уже 880, а их число размером 5х5 около 250 тысяч. Поэтому магические квадраты больших размеров могли быть красивой основой для надёжной системы шифрования того времени, потому что ручной перебор всех вариантов ключа для этого шифра был немыслим.
Подобие между магией и криптологией обусловливалась и другими факторами. Кроме криптологии, таинственные символы использовались и в таких сферах магических знаний, как астрология и алхимия, где каждая планета и каждое химическое вещество обозначались своим специальным символом. Как и зашифрованные слова, заклинания и магические формулы напоминали бессмыслицу, но в действительности имели важное значение.
То, что писали или рисовали астрологи и маги, было похоже на кодограмму, где каждый символ или иероглиф имел свое как экзотерическое (материальное), так и эзотерическое (духовное) значение. Например, символ Солнца – это индивидуальность и духовность, Луны – мягкость и душевность, Меркурия – мышление и интеллектуальность, Венеры – женственность и любовь, Марса – мужество и активность, Юпитера – законопослушание и религиозность, Сатурна – одиночество и целенаправленность и т.д.
Даже места символов, где они были нарисованы, тоже определяли их влияние на события жизни и взаимоотношения с другими факторами судьбы. А то, что одним рисунком (гороскопом) можно было отобразить судьбу и всю жизнь человека или страны, казалось настоящей магией или колдовством.
Мысль о том, что криптоанализ является также по своей сути какой-то магией, складывалась в связи с поверхностным подобием криптоанализа и размышления. Добывание истинного содержания шифротекста казалось точно таким же делом, что и получение знаний путём изучения расположения звёзд и планет (астрология), длины линий и мест их пересечения на ладони (хиромантия), положения кофейного осадка в чашке (гадание). Видимость брала верх над реальностью. Простодушные люди видели магию даже в обычном процессе расшифровывания. Другие видели её в криптоанализе, потому что раскрытие чего-то глубоко спрятанного казалось им непостижимым и сверхъестественным.
Не таким сильным был упадок криптологии в Византии, которая сохранила много античных традиций. Но и здесь криптосистемы очень упростились и были легко читаемыми. Очень часто сообщение просто писали в обратном порядке или замещали каждую букву на следующую по алфавиту. Для засекречивания сообщений также использовали малоизвестные иностранные языки, чаще всего армянский или древнееврейский. Но в целом, в сравнении с эпохой античности, криптология находилась на крайне низком уровне.
В китайском трактате «Основы классической военной науки», составленном в XI веке н.э., присутствовали лишь рекомендации по кодированию. В них рекомендовалось соотнести с разными простыми сообщениями первые 40 знаков какого-либо стихотворения, известного как отправителю, так и получателю. По первому знаку стихотворения, поставленному в условленном месте полностью невинного сообщения, получатель «считывал» информацию, например, что нужно послать больше провианта. Такие коды практически не поддавались расшифрованию, но могли использоваться лишь в очень ограниченном масштабе.
Некоторые религиозные организации использовали для шифрования переписки свои алфавитные шифры замены. Так, шифры тамплиеров и розенкрейцеров были очень похожими и нашли своих почитателей в лице масонов (некоторые исследователи, в частности, Е.П. Блаватская, так их и называли – масонские). Масонский шифр использовался их «ложами» для тайной переписки между посвящёнными высших степеней.
В XVIII веке франкмасонами использовался для обеспечения секретности своих документов так называемый шифр «Pigpen». В нём каждая буква заменялась определённым символом: чтобы зашифровать букву, определялось её местонахождение в одной из четырех сеток, а затем рисовалась та часть сетки, которая отвечала этой букве.