Начальная

Windows Commander

Far
WinNavigator
Frigate
Norton Commander
WinNC
Dos Navigator
Servant Salamander
Turbo Browser

Winamp, Skins, Plugins
Необходимые Утилиты
Текстовые редакторы
Юмор

File managers and best utilites

История шифрования (Криптографии). Древние шифры и шифры средневековья реферат


Криптография в арабском мире

Арабский мир в начале средних веков активно использовал криптографию. Уровень развития математики и других наук в этот период значительно опережал знания других народов.

Наиболее древней считается работа арабского ученого Абу Бакр Ахмед бен-Али бен-Вахшия ан-Набати датируемая 855 годом. В ней упоминаются различные системы шифрования основанных на символах древних народов. Данные шифры применялись в плоть до начала XIXвека для шифрования секретной переписки, донесений шпионов, трактатов по черной магии.

Познания арабов в области криптографии были изложены Шехабехом Калкашанди, автором 14-и томной энциклопедии, написанной в 1412 году. Он включил целый раздел, посвященный использовании систем шифрования основанных как на перестановках, так и на замене (в том числе и множественной) символов. Кроме того большое внимание было уделено вскрытию зашифрованных посланий. Предложенные методы основывались на статистических и лингвистических свойствах языка. На основании текста Корана в энциклопедии был приведена статистика всех символов арабского языка и пример вскрытия чужого сообщения.

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

Криптография в средние века

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

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

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

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

Другим потребителем криптографических знаний была дипломатия. Появление посольств и дипломатических представительств потребовало создания надежных систем шифрования переписки дипломатов. Наиболее полно сохранились сведения об использовании шифрования в Ватикане. В частности шифр номенклатор созданный в XIIвеке дожил доXIXвека. Он основывался на шифре замены с добавлением записи отдельных слов специальными кодами.

В XVвеке вышла работа итальянского архитектора Леон Батиста Альберти «Трактат о шифрах», в которой были приведены сведения о всех известных на тот момент шифрах, обоснованна необходимость их применения. В частности Альберти считается изобретателем шифра позже названногошифром Виженера– английского дипломата XVI века, активно применявшего его на практике. Шифр Виженера основывался на циклическом сдвиге букв в исходном сообщении на установленное число разрядов, как в шифре Цезаря, однако величина сдвига была различна для разных символов. Для лучшего запоминания использовалась ключевая фраза и каждый символ сдвигался на порядковый номер буквы ключа. После того как были использованы все символы ключа, он повторялся снова.. Ключ, при необходимости повторяя, подписывают под сообщением, после чего выполняют сложение по модулют в каждом столбце, который содержит по одной букве сообщения и ключа.

Эта криптографическая система была крайне проста, удобна и практически неуязвима для ручного раскодирования.

В 1508 году германский аббат Иоганн Трисемус предложил улучшение шифра на основе Полибианского квадрата. При этом он использовал шифрование не отдельных символов а пар символов (биграммы). Данный шифр использовала британская армия в Iмировую войну. Работавший в Риме математик Джероламо Кардано создал трафаретную систему шифрования. Данная система использовала квадрат с отверстиями, расположенными так что их последовательные повороты зарывали всю площадь квадрата. При шифровании в отверстия вписывался текст. Расположение отверстий позволяло перемешивать символы исходного сообщения.

В XVIвеке криптография стала отдельным направление в науки, по которому печатались книги, велась подготовка как специалистов как по шифрованию, так и по вскрытию шифров. Криптографические службы были практически при всех дворах Европы.

Криптографией занимались многие известные математики, такие как Виет. Кардано. Лейбниц и. наконец. Френсис Бэкон. Последний предложил двоичное кодирование латинского алфавита

studfiles.net

Криптография в Древнем мире

Криптография в Древнем мире

Имеются свидетельства, что криптография как техника защиты текста возникла вместе с письменностью, и способы тайного письма были известны уже древним цивилизациям Индии, Египта и Месопотамии. В древнеиндийских текстах среди 64-х искусств названы способы изменения текста, некоторые из них можно отнести к криптографическим. Автор таблички с рецептом для изготовления глазури для гончарных изделий из Месопотамии использовал редкие обозначения, пропускал буквы, а имена заменял на цифры, чтобы скрыть написанное.

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

Атбаш — простой шифр подстановки для иврита. Правило шифрования состоит в замене i-й буквы алфавита буквой с номером n - i + 1, где n — число букв в алфавите. Пример для латинского алфавита выглядит так:

Исходный текст: abcdefghijklmnopqrstuvwxyz Зашифрованный текст: ZYXWVUTSRQPONMLKJIHGFEDCBA

Происхождение слова «атбаш» объясняется принципом замены букв. Слово составлено из букв «алеф», «тав», «бет» и «шин», то есть первой и последней, второй и предпоследней букв еврейского алфавита.

Скитала

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

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

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

Таким образом, длина блока n определялась длиной и диаметром палочки, а само шифрование заключалось в перестановке символов исходного текста в соответствии с длиной окружности палочки. Например, используя палочку, по длине окружности которой помещается 4 символа, а длина палочки позволяет записать 6 символов, исходный текст: «это шифр древней спарты» превратится в шифрограмму: «эфвптрнао ер дйтшр ыиес». Схематически это можно изобразить так:

_________________________________________ | | | | | | | | | Э | Т | О | Ш | И | |__| Ф | Р | Д | Р | Е |__ | В | Н | Е | Й | С | | | П | А | Р | Т | Ы | | | | | | | | | _________________________________________

Таким образом, после разматывания ленты, шифротекст будет «ЭФВПТРНАОДЕРШРЙТИЕСЫ».

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

Диск Энея

С именем Энея Тактика, полководца IV века до н. э., связывают несколько техник шифрования и тайнописи.

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

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

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

Квадрат Полибия

Во II веке до н. э. в Древней Греции был изобретён Квадрат Полибия. В нём буквы алфавита записывались в квадрат 5 на 5 (при использовании греческого алфавита одна ячейка оставалась пустой), после чего с помощью оптического телеграфа передавались номер строки и столбца, соответствующие символу исходного текста (на каждую букву приходилось два сигнала: число факелов обозначало разряд буквы по горизонтали и вертикали). Cтолбцы и строки нумеровали цифрами от 1 до 5. В каждую клетку этого квадрата записывалась одна буква. (В греческом варианте одна клетка оставалась пустой, в латинском - в одну клетку помещали две буквы i и j.) В результате каждой букве отвечала пара чисел и шифрованное сообщение превращалось в последовательность пар чисел. Например,

  13 34 22 24 44 34 15 42 22 34 43 45 32           (Cogito ergo sum)

Это сообщение записано при использовании латинского варианта Квадрата Полибия, в котором буквы расположены в алфавитном порядке.

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

Шифр Цезаря

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

Шифр назван в честь римского императора Гая Юлия Цезаря, использовавшего его для секретной переписки. Естественным развитием шифра Цезаря стал шифр Виженера. С точки зрения современного криптоанализа, шифр Цезаря не имеет приемлемой стойкости.

Если сопоставить каждому символу алфавита его порядковый номер (нумеруя с 0), то шифрование и дешифрование можно выразить формулами:

y = (x+k) mod n

x = (y-k) mod n

где x — символ открытого текста, y — символ шифрованного текста, n — мощность алфавита, а k — ключ.

Например, шифрование с использованием ключа k = 3. Буква С «сдвигается» на три буквы вперед и становится буквой «Ф». Твердый знак, перемещённый на три буквы вперед, становится буквой «э», и так далее:

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

kryptography.narod.ru

Библейский шифр

Дальнейшее стимулом к развитии криптографии стало появление более простого в использовании фонетического письма. В частности древнейшим из криптографических методов по всей видимости является метод использованный в тексе Ветхого завета (2-е тысячелетие д.н.э): отдельные слова текста писались в другом порядке. Человек, который не догадывался о таком приеме, воспринимал их как непонятный термин или название. Например: «Если Роткерид любит курс аппаратное обеспечение ЭВМ, то все любят этот предмет».

Развитее торговли, военного дела, дипломатии требовали дальнейшего развития криптографии. Отношения между городами, полисами древней Греции, переписка консулов в Риме, все это требовало разработки простых и надежных шифров. Древнем грекам были известны шифры перестановки и замены. К наиболее известным из них относятся:

Шифр Сциталь

Шифр сциталь был создан в Спарте примерно в VI-V вв. до н.э. Древнегреческому полководцу Лисандру необходимо было передать сообщение своему подразделению с гонцом союзников, которому он не доверял. Лисандр отправил ложное сообщение, а подлинный текст написал на поясе гонца, обмотав предварительно его вокруг цилиндра, по гречески – сциталя. После разматывания пояса, получится бессмысленный набор символов. Ключом криптограммы в этом случае выступал диаметр цилиндра. Командир его отдельного отряда, выслушав гонца взял его пояс, намотал на цилиндр заранее согласованного размера и получил подлинный текст.

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

Шифры Энея

Древне греческий полководец Эней Тактики изобрел целый ряд устройств для шифрования сообщений.

Первым из них стал диск (линейка) Энея. В деревянном диске были просверлены отверстия, соответствующие буквам. Через отверстия продевалась нить, определяющая порядок следования букв. Противник, перехваливший сообщение мог получить только порядок отверстий, но не знал соответствующие им буквы. К тому же сообщение, закодированное с помощью подобного устройства, легко было повредить – достаточно было порвать нить.

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

Шифр Цезаря

Шифр Цезаря основывался на циклическом сдвиге букв в сообщении на установленное количество букв. Иллюстрация данной системы шифрования приведена на. Римляне любили комфорт и для облегчения процесса шифрования и дешифрования использовали простой механизм, состоящий из двух дисков на оси. На каждом из дисков были расположены символы алфавита. Поворотом дисков относительно друг друга задавался ключ шифрования, о котором стороны договаривались заранее. Выбрав на одном из дисков букву исходного сообщения, прикладывали второй диск к восковой дощечке и получали отпечаток символа криптограммы. Известно, что Юлий Цезарь использовал сдвиг на 3 символа для шифрования своих писем к сенату. Император Август применял тот же шифр, но со сдвигом в четыре знака.

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

Наиболее стойким шифром древнего мира явился полибианский квадрат. Данный метод шифрования был изобретен Полибием (ок. II в. до н.э.). Данный шифр использовал, содержавший 5x5=25 клеток для двадцати четырех букв греческого алфавита и пробела, вписанных в произвольном порядке. При шифровании текста нужная буква отыскивалась в квадрате и заменялась на другую букву из того же столбца, но вписанную строкою ниже. Буква, которая находилась в нижней строке квадрата, заменялась на букву из верхней строки того же столбца. Получатель, имевшийточно такой же квадрат, производил расшифровку сообщения.Для лучшего запоминания можно использовать ключевую фразу, удаляя из нее повторяющие символы.

Например, если в качестве ключа использовать этот абзац получится:

0

1

2

3

4

0

Н

А

И

Б

О

1

Л

Е

С

Т

Й

2

К

М

Ш

Ф

Р

3

Д

В

Г

Я

П

4

Ы

З

Э

Ю

Ч

5

Щ

Ц

У

Х

Ж

Строка над таблицей будет в этом случае закодирована в виде:

00 01 34 24 02 21 11 24 11 12 10 02 21

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

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

Простые в использовании шифры сциталь, цезаря и диск Энея использовались в основном для шифрования оперативной информации в полевых условиях (приказов в армии).

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

studfiles.net

Тайные шифры средневековья | Земля

Художника Альберто Росси казнили долго и мучительно. Сначала инквизиторы подвергли его допросу с пристрастием, то пуская в ход вилку еретика (четыре шипа, впивающиеся жертве в подбородок и шею), то усаживая на колыбель Иуды - подобие пирамиды, изобретенной земляком испытуемого, болонским криминалистом Ипполито Марсили.

И только потом, так и не добившись от «богохульника» признаний, его обезглавили, предварительно отрубив живописцу правую, «согрешившую» длань. Какое же злодеяние совершил этот преступник? Несчастный Росси, писавший портрет набожного венецианского дожа Франческо Донато, позволил себе, без согласования с сиятельным заказчиком, изобразить его... на фоне льва.

В западноевропейском Средневековье начиная примерно с XIII века считалось, что любой художник, писатель, архитектор должен в совершенстве владеть знанием тайного «языка птиц» и полностью разбираться в символике бестиариев.

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

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

На первый взгляд, любой бестиарий представляет собой именно то, что сказано о нем в Википедии, - сборник зоологических статей с иллюстрациями, в которых подробно описывались различные животные в прозе и стихах. Однако вот потаенный смысл таких «статей»: в XII-XIII веках европейские христианские теологи приняли за аксиому, что всякая живая тварь была создана Господом не столько даже ради услаждения нутра (взора, а также прочих эстетических потребностей) «венца природы» - человека, сколько в назидание ему.

Читаем об этом у Давида Батке в его «Средневековом бестиарии»: «Животный мир и мир природы были сотворены Богом в виде наглядной инструкции для человечества. Творец наделил животных особенностями, которые должны были служить человеку назиданием и укреплять его в желании изучать Библию».

Но не будем долее интриговать читателя насчет причины казни венецианского живописца, попутно пояснив на примере оной вышеизложенную мысль Батке. Лев в соответствии с Абердинским бестиарием (XII век) - а он считался каноном для людей искусства и инквизиторов (!) на протяжении нескольких столетий - символизирует собой Иисуса Христа.Таким образом, изобразив богобоязненного дожа на фоне льва, Росси - вольно или нет, не имело значения! - уподобил Франческо Донато, во всяком случае с точки зрения инквизиторов, Спасителю.

И потому был лишен буйной головы, то ли «замыслившей богохульство», то ли просто в свое время плохо постигавшей премудрость бестиария.

К счастью, иные образы животных были не столь опасны для средневековых живописцев. Стоит, наверное, заново вглядеться в полотна, созданные ими, дабы понять их тайный смысл.

Так, к примеру, если бы венецианец Росси косвенно сравнил посредством своей кисти Франческо Донато не со львом, а со слоном (!), то удостоился бы похвалы от святых отцов и самого заказчика портрета. Ведь согласно бестиариям слон - символ целомудрия, ибо «это верное животное совокупляется лишь единожды в жизни, для производства потомства на свет».

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

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

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

В действительности в Средние века кит, равно как и черепаха, уподоблялся аспиду, «сатане, стремящемуся обмануть того, кого он собрался сожрать». А вот символ России, медведь.

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

Согласно оным медведь - созидатель, творец будущего мира, вынашивающий его в себе, а затем придающий ему форму.

Такой символизм зиждился на древнем представлении о том, что медведица рожает некое несформированное живое «нечто», тотчас после рождения придавая ему присущий образ посредством своих лап.

Полотна средневековых художников, на которых запечатлен этот зверь, имеют мало общего со знаменитыми мишками («Утро в сосновом лесу»). Средневековые «Нострадамусы от кисти и холста» зашифровывали в своих «медвежьих» картинах собственные представления и пророчества о будущем.

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

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

Отметим: потаенный смысл бестиариев был ведом и нашим с вами далеким предкам. В древнерусской литературе бестиарии именуются «физиологами» -по названию древнейшего из таких сборников, известных в Западной Европе, и, судя по всему, созданного во II или III веке в Александрии.

Однако вот интересный нюанс. «Физиолог» (в перевод - «естествоиспытатель», «натуралист»), созданный изначально неизвестным автором на греческом языке, затем переведенный на латынь, а уже затем и на многие языки БлижнегоВостока, был, судя по всему, вторичен по отношению к неким ныне забытым именно ближневосточным первоисточникам, завезенным путешественниками в Элладу.

Согласно новейшим данным, которые можно почерпнуть в исследованиях уже упомянутого Давида Батке, некие первые бестиарии были привезены в Старый Свет с Востока. Затем, в ходе «переводов с переводов», они утратили первоначальный смысл и наполнились новым - вложенным в них западноевропейскими христианскими теологами, тесно сотрудничавшими в этом вопросе с мистиками рыцарских орденов и братств.

Косвенный довод в пользу сказанного - одновременное вместе с бестиариями распространение в Западной Европе так называемого языка птиц. Только с точки зрения авторов Википедии этот язык - «фразеологизм, которым обозначают речь, перегруженную терминами и затемняющими смысл формулировками».

Но в действительности, будучи создан теми же, кто вкладывал новые смыслы в ближневосточные бестиарии, «язык птиц» достаточно прост и доступен усвоению. Для чего? Да хотя бы для того, чтобы почувствовать всю полифонию средневековых текстов и подлинный, сокрытый в них контекст.

Современные исследователи бьются над дешифровкой многих таинственных манускриптов, зачастую просто не замечая второго и третьего «смысловых слоев» в средневековых картинах, романах, новеллах и даже постройках (как пример одной из таковых: замок Нойшванштайн в Баварии).

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

Для того чтобы стимулировать читателей в поисках таких «учебников птичьего языка» (мы, например, рекомендуем монографию Грасе д’Орсе), еще раз подчеркнем: овладев его основами, вы заново откроете для себя Средневековье в 3D. И тогда окажется, что иная романтическая средневековая новелла на поверку - манускрипт, посвященный военной стратегии, а другая хроника, якобы повествующая о реальных событиях, - не более чем фривольный водевиль.

Между прочим, «язык птиц» - и вовсе не в смысле якобы «свиста, издаваемого дозорными воинами» - в Средние века был известен на Руси. Например, в одной московской грамоте 1508 года можно прочесть: «А пойдет на тебя крымская рать, хоти нам птичьим языком весть подай». Выдающийся ученый, профессор Борис Ларин соглашается с тем, что здесь имеется в виду именно «фразеологическая метафоричность», а не просто лихой посвист русичей-бойцов.

Характерно, что и у этой «полифонии Средневековья» есть восточные аналоги, идет ли речь о бестиариях или о «языке птиц». Так, в Китае среди мистиков тех лет, в ходу свой бестиарий - «Шань хай цзин» («Канон гор и морей»), оказавший и до сих пор оказывающий влияние на символизм китайской литературы.

А в Японии в XV веке происходит расцвет мало известного у нас «воинского хокку». В иных строках о луне и сакуре воины-поэты (не только самураи, но и ниндзя) в предельно сжатом, «заархивированном» виде шифровали, в том числе, отчеты о боевых действиях и аналогичные замыслы на свой грядущий день.

earth-chronicles.ru

История шифрования. История развития Криптографии

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

Античная секретность

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

Одним из самых известных примеров шифрованных сообщений считается переписка Юлия Цезаря. Знаменитый полководец использовал очень простой, но одновременно вполне надежный способ криптографического текста: вместо правильной буквы писалась та, что находилась в латинском алфавите на три позиции дальше. Это позволяло составлять сообщения очень быстро и так же быстро их расшифровывать. Если учесть, что римляне не делали пробелов между словами, то в итоге письмо превращалось во множество ничем не связанных знаков. Соответственно, враги ничего не могли понять из перехваченного сообщения.

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

Для сохранения своего предательства в секрете Павсаний придумал жуткий, но очень надежный способ. По его просьбе персы казнили каждого прибывшего гонца. В конце концов очередной курьер, которого спартанец хотел отправить с посланием, заподозрил неладное. Он вскрыл письмо и с ужасом прочитал в конце приписку: «А гонца, как и прежде, следует убить».

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

Тайны средневековья

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

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

Одним из самых распространенных способов шифрования писем стало использование гибридной системы.

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

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

От возрождения к новому времени

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

С появлением книгопечатания труды по тайнописи (которые выходили все чаще) стали доступны тысячам читателей. Отцом современной криптографии считается итальянский ученый Леон Альберти. Его трактат о методах шифрования стал своеобразной библией для последующих специалистов-криптологов. Кроме того, Альберти придумал и не-1У сколько технических устройств, которые стали прообразом будущих шифровальных механизмов.

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

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

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

А в 1790-е годы под руководством будущего президента США Томаса Джефферсона была построена машина, с помощью которой удавалось производить шифрование очень быстро. Считается, что победа британских колонистов в войне за независимость, а также успехи армии северян в Гражданской войне во многом были обусловлены работой опытных криптографов в их войсках.

Эпоха электричества

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

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

Так, название одной из самых знаменитых шифровальных машин стало нарицательным. Словом «энигма» называли любую задачу, решение которой выглядело невозможным. Так как во время Второй мировой войны устройства из семейства «Энигма» активно использовали войска и флот Германии, то в Британии создали мощную службу для расшифровки перехвачен-ных сообщений. На определенном этапе в этом центре работали почти 12 тысяч сотрудников.

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

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

Вообще же во время Второй мировой войны шифровальные машины использовали все воюющие страны.

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

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

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

Единственной трудностью оказалось отсутствие в словаре навахо таких слов, как «подводная лодка» или «взвод». Пришлось придумать около четырехсот словосочетаний (типа «железная рыба» и «черные овцы»), чтобы закрыть проблемы с военной терминологией.

Понятно, что ни Германиями Япония не имели физической возможности создать подобную систему радистов в своих армиях. А вот Советский Союз, чьи солдаты еще во время Зимней войны несли огромные потери из-за скверной работы радистов-шифроваль-щиков, вполне мог. Ведь в СССР проживали десятки малочисленных народов, чьи сложные языки могли стать надежным средством оперативной связи между штабами самых разных подразделений. По некоторым данным, Иосифу Сталину не раз предлагали привлечь в армию в качестве радистов как представителей народов Крайнего Севера, так и жителей ряда народностей Кавказа. Но будущий генералиссимус, которому заговорщики и предатели гораздо чаще мерещились в среде своих собственных подданных, чем в стане откровенного врага, решительно отверг эту идею.

Последний всплеск активности борьбы различных разведок и контрразведок в вопросах тайнописи связан с периодом холодной войны. Например, в СССР были сняты десятки фильмов о коварных западных шпионах, которые использовали невероятно хитроумные средства коммуникации, но каждый раз оказывались разоблаченными благодаря проницательности мудрых работников КГБ. Но в целом тема криптографии в этот период породила больше мифов, чем оригинальных и надежных решений.

www.spy-soft.net

подстановочно-перестановочный шифр и его применение

Седьмая научная конференция молодых исследователей

«Шаг в будущее, Москва»

 

 

 

                          

                                              

                                                                                                                       регистрационный номер

 

 

 

информационная безопасность

 

криптография:

подстановочно - перестановочный шифр  и его применение

 

 

Автор:                                                     Калашников Алексей Александрович,

                                                                 Школа №1959, 11 класс «А»

 

 

Научный руководитель:                        Троицкий Игорь Иванович, доцент

                                                                 Кафедры «Информационная     

                                                                 Безопасность»(ИУ-8), МГТУ им. Н. Э.       

                                                                 Баумана, кандидат технических наук.

 

 

 

 

 

 

 

 

 

 

 

Москва - 2004

Содержание:

Появление шрифтов………………………….…..…….….стр.3

Становление науки криптологии…………………………стр.3

Криптология в новое время…………….…………...……..стр.12

Шифр Цезаря……………………………….…………..…..стр.15

      -Программный код………………………...……..…….стр.15

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 

 
 
Появление шифров

Ряд систем шифрования дошел до нас из глубокой древности. Скорее всего, они появились одновременно с письменностью в 4 тысячелетии до нашей эры. Методы секретной переписки были изобретены независимо во многих древних обществах, таких как Египет, Шумер и Китай, но детальное состояние криптологии в них неизвестно. Криптограммы выискиваются даже в древние времена, хотя из-за применяемого в древнем мире идеографического письма в виде стилизованных картинок были примитивны. Шумеры, по-видимому, пользовались тайнописью. Археологами найдены глиняные клинописные таблички, где первая запись замазывалась слоем глины, на котором делалась вторая запись. Происхождение таких странных таблиц могло быть вызвано и тайнописью, и утилизацией. Оттого что число знаков идеографического письма было более тысячи, то запоминание их представляло собой трудную задачу - тут не до шифрования. Тем не менее, коды, появившиеся вместе со словарями, были хорошо известны в Вавилоне и Ассирии, а древние египтяне применяли, по меньшей мере, 3 системы шифрования. С развитием фонетического письма письменность резко упростилась. В древнем семитском алфавите во 2-м тысячелетии до нашей эры было всего около 30 знаков. Ими обозначались согласные звуки, а также некоторые гласные и слоги. Упрощение письма стимулировало развитие криптографии.

        Даже в Библии можно найти примеры шифровок, хотя мало кто это замечает. В книге пророка Иеремии (25,26) читаем: "...а царь Сессаха выпьет после них". Такого царя или царства не было - неужели ошибка писца? Нет, просто порой священные иудейские тексты шифровались простой заменой. Вместо первой буквы алфавита писалась последняя, вместо второй - предпоследняя и так далее. Этот древний метод шифрования назывался атбаш. Читая по нему слово СЕССАХ, на языке оригинала получаем слово ВАВИЛОН, и смысл библейского текста может быть принят даже не верящим слепо в истинность писания.

        Вот что об этом сообщает Гай Светоний: "Существуют и его письма к Цицерону и письма к близким о домашних делах: в них, если нужно было сообщить что-нибудь негласно, он пользовался тайнописью, то есть менял буквы так, чтобы из них не складывалось ни одного слова. Чтобы разобрать и прочитать их, нужно читать всякий раз четвертую букву вместо первой, например, D вместо А и так далее". Это означает, что каждая буква шифровки заменялась четвертой по счету от нее в алфавите: А-В-С-D, или D вместо А. Послание сенату VENI VIDI VICI, то есть ПРИШЕЛ, УВИДЕЛ, ПОБЕДИЛ, сделанное Цезарем после однодневной войны с понтийским царем Фарнаком, выглядело бы шифровкой SBKF SFAF SFZF.

        Принципиально иной шифр, более древний, связан с перестановкой букв сообщения по определенному, известному отправителю и получателю правилу. Древние рассказывали: какой-то хитрец из спартанцев обнаружил, что если полоску пергамента намотать спиралью на палочку и написать на нем вдоль палочки текст сообщения, то, после снятия полоски буквы на ней расположатся хаотично. Это то же самое, будто буквы писать не подряд, а через условленное число по кольцу до тех пор, пока весь текст не будет исчерпан. Сообщение ВЫСТУПАЙТЕ при окружности палочки в 3 буквы даст шифровку ВУТЫПЕСАТЙ. Текст ее не понятен, не так ли?

        Для прочтения шифровки нужно не только знать систему засекречивания, но и обладать ключом в виде палочки, принятого диаметра. Зная тип шифра, но, не имея ключа, расшифровать сообщение было сложно. Этот шифр именовался скитала по названию стержня, на который наматывались свитки папируса, что указывает на его происхождение. Он был весьма популярен в Спарте и много раз совершенствовался в позднейшие времена. О его важном значении и большом распространении говорит свидетельство Плутарха в "Сравнительных жизнеописаниях", когда историк сообщает о жизни греческого полководца Алкивиада: "Однако Лисандр обратил внимание на эти слова не раньше, чем получил из дома скиталу с приказанием отделаться от Алкивиада..."

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

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

Приборы для шифрования тоже существовали с древних времен. Спарта, наиболее воинственная из греческих государств, имела хорошо проработанную систему секретной военной связи еще в V веке до нашей эры. С помощью скитала, первого известного криптографического устройства, спартанские эфоры (эфоры - члены коллегиального правительства Спарты.) шифровали послания, используя метод простой перестановки. Ленивые и оттого юбретательные римляне в IV веке до нашей эры, чтобы упростить процедуру шифрования, стали применять шифрующие диски. Каждый из 2 дисков, помещенных на общую ось, содержал на ободе алфавит в случайной последовательности. Найдя на одном диске букву текста, с другого диска считывали соответствующую ей букву шифра. Такие приборы, порождающие шифр простой замены. Использовались вплоть до эпохи Возрождения. Для связи греки и римляне использовали код на основе полибианского квадрата с естественным заполнением алфавитом. Буква кодировалась номером строки и столбца, соответствующим ей в квадрате. Сигнал подавался ночью факелами, а днем флагами.

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

Становление науки криптологии

        В ручных шифрах того времени часто используются таблицы, которые дают простые шифрующие процедуры перестановки букв в сообщении. Ключом в них служат размер таблицы, фраза, задающая перестановку или специальная особенность таблиц. Простая перестановка без ключа - один из самых простых методов шифрования, родственный шифру скитала. Например, сообщение НЕЯСНОЕ СТАНОВИТСЯ ЕЩЕ БОЛЕЕ НЕПОНЯТНЫМ записывается в таблицу по столбцам. Для таблицы из 5 строк и 7 столбцов это выглядит так:

 

Н         О      Н       С        Б        Н       ЯЕ         Е       О       Я        О       Е        ТЯ         С       В       Е        Л       П       НС         Т       И       Щ       Е       О       ЫН        А       Т        Е        Е       Н       М

После того, как открытый текст записан колонками, для образования шифровки он считывается по строкам. Если его записывать группами по 5 букв, то получится: НОНСБ НЯЕЕО ЯОЕТЯ СВЕЛП НСТИЩ ЕОЫНА ТЕЕНМ. Для использования этого шифра отправителю и получателю нужно договориться об общем ключе в виде размера таблицы. Объединение букв в группы не входит в ключ шифра и используется лишь для удобства записи несмыслового текста.

        Более практический метод шифрования, называемый одиночной перестановкой по ключу очень похож на предыдущий. Он отличается лишь тем, что колонки таблицы переставляются по ключевому слову, фразе или набору чисел длиной в строку таблицы. Использовав в виде ключа слово ЛУНАТИК, получим такую таблицу.

Л        У       Н        А       Т        И       К4         7        5         1       6         2        3Н        О       Н        С       Б        Н       ЯЕ        Е        О        Я       О        Е       ТЯ        С        В       Е        Л        П       НС        Т        И       Щ       Е        О       ЫН        А        Т       Е        Е        Н       М                до перестановки А       И       К       Л       Н      Т      У1        2       3        4        5       6       7С       Н       Я      Н      Н       Б       ОЯ       Е       Т       Е      О       О       ЕЕ       П       Н      Я      В       Л       СЩ      О       Ы     С      И       Е       ТЕ       Н       М      Н      Т       Е       А          после перестановки

В верхней строке ее записан ключ, а номера под ключом определены по естественному порядку соответствующих букв ключа в алфавите. Если в ключе встретились бы одинаковые буквы, они бы нумеровались слева направо. Получается шифровка: СНЯНН БОЯЕТ ЕООЕЕ ПНЯВЛ СЩОЫС ИЕТЕН МНТЕА. Для дополнительной скрытности можно повторно шифровать сообщение, которое уже было зашифровано. Этот способ известен под названием двойная перестановка. Для этого размер второй таблицы подбирают так, чтобы длины ее строк и столбцов были другие, чем в первой таблице. Лучше всего, если они будут взаимно простыми. Кроме того, в первой таблице можно переставлять столбцы, а во второй строки. Наконец, можно заполнять таблицу зигзагом, змейкой, по спирали или каким-то другим способом. Такие способы заполнения таблицы если и не усиливают стойкость шифра, то делают процесс шифрования гораздо более занимательным.

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

 

 

         2        4        1       34       П       P        И       Е1       3       Ж       A       Ю2                Ш       Е        С3       Т       О        Г        О                 исходная                таблица          1         2        3         44       И       П        Е         Р1       A        3       Ю       Ж2       Е                  С        Ш3       Г        Т        О        О           перестановка            столбцов          1        2         3      41       A       3        Ю     Ж2       Е                  С      Ш3       Г       Т         О      О4       И       П        Е      Р            перестановка              строк

Получается шифровка АЗЮЖЕ СШГТООИПЕР. Ключом к этому шифру служат номера столбцов 2413 и номера строк 4123 исходной таблицы. Число вариантов двойной перестановки тоже велико: для таблицы 3х3 их 36, для 4х 4 их 576, а для 5 х 5 их уже 14400. Однако двойная перестановка очень слабый вид шифра, легко читаемый при любом размере таблицы шифрования.

Выдающимся английским философом и изобретателем Роджером Бэконом, предвосхитившим многие позднейшие открытия (наиболее значительное из его изобретений - очки, которые он предложил в 1268 году), был найден состав черного пороха. Так почему же традиционно считают его изобретателем Бертольда Шварца, по преданиям казненного императором Венцеславом на пороховой бочке? Карамзин по этому поводу писал: "Нет сомнения, что и монах Рогер Бакон за 100 лет до Бертольда Шварца умел составлять порох: ибо ясно говорит в своем творении de nulitate Magiae о свойстве и силе оного". Дело в том, что средневековые ученые, сделав открытие, отнюдь не всегда спешили его опубликовать в письмах коллегам, как это было тогда принято при отсутствии периодических научных изданий. Нередко ту часть открытия, которую теперь называют know how, они шифровали анаграммой, переставляя буквы сообщения по известному только им ключу. Например, названия древней и современной столиц Японии в русском написании тоже представляют собой анаграмму: КИОТО - ТОКИО.

В упомянутом труде Бэкона состав пороха был приведен в виде зашифрованной анаграммы, которую до появления сверхбыстродействующих ЭВМ не удавалось вскрыть, и слава открытия поэтому приписывалась Шварцу. Гораздо более сложная проблема возникает с приписываемым Галилео Галилею открытием спутников Юпитера. Долгое время приведенная им анаграмма читалась так: "Высочайшую планету двойною наблюдал", но в 1960-х годах с применением компьютеров при расшифровке был получен иной вариант прочтения: "Привет вам, близнецы, Марса порождение!" Конечно, открытие Фобоса и Деймоса на слабеньком телескопе за два с половиной столетия до американца Асафа Холла - событие мало реальное, но кто знает? Описал же Свифт в "Путешествиях Гулливера" спутники Марса за полтораста лет до астрономов с поразительной точностью! Может быть Свифт знал результаты Галилея, которые сейчас неизвестны? Шифры перестановки чрезвычайно коварны в том смысле, что могут дать несколько вариантов осмысленного прочтения, если не знать точного значения ключа.

Какие же шифры применялись еще средневековыми учеными? На известной гравюре Дюрера "Меланхолия" позади грустящего ангела изображен магический квадрат, заполненный цифрами. Магическими квадратами называются квадратные таблицы со вписанными в их клетки последовательными натуральными числами от 1, которые дают в сумме по каждому столбцу, каждой строке и каждой диагонали одно и то же число. Подобные квадраты широко применялись для вписывания шифруемого текста по приведенной в них нумерации. Если потом выписать содержимое таблицы по строкам, то получалась шифровка перестановкой букв. Считалось, что созданные с их помощью шифровки охраняет не только ключ, но и магическая сила. Вот пример магического квадрата и его шифровки:

16      3       2       135       10      11      89       6        7       124       15      14      1 О       И       Р       ТЗ       Ш       Е       Ю         Ж       А       СЕ        Г       О       П

Полученная из ПРИЕЗЖАЮ ШЕСТОГО, шифровка ОИРТЗШЕЮ ЖАСЕГОП представляется довольно основательной. На первый взгляд кажется, будто магических квадратов очень мало. Тем не менее их число очень быстро возрастает с увеличением размера квадрата. Так, существует лишь один магический квадрат размером 3 х 3, если не принимать во внимание его повороты. Магических квадратов 4 х 4 насчитывается уже 880, а число магических квадратов размером 5 х 5 около 250000. Поэтому магические квадраты больших размеров могли быть хорошей основой для надежной системы шифрования того времени, потому что ручной перебор всех вариантов ключа для этого шифра был немыслим.

Широкое развитие торговли в средние века потребовало специфических шифров, предельно простых и удобных, которыми могли бы пользоваться купцы для передачи, например, даты приезда или цены товара. Это были простые шифры замены цифр на буквы, основанные на ключевом слове. Собственно, это коды, а не шифры - вспомните обозначение месяцев на банках консервов, но код, примененный единожды с неизвестной таблицей кодирования, схож по свойствам с шифром. Торговцы заранее договаривались использовать общее ключевое слово, буквы которого соответствовали бы цифрам. Например, для ключа РЕСПУБЛИКА цифра 0 означает букву Р, цифра 1 означает Е, 2 - С, 3-Н и так далее. Поэтому, получив от корреспондента сообщение, ПРИБЫВАЮ ЕЛРПАС, они его читали, как ПРИБЫВАЮ 16/03/92. Простота и удобство этой системы шифрования позволили ей дожить до начала этого века без всяких изменений.

Другой шифр, обычно называемый шифром Гронсфельда, состоит в модификации шифра Цезаря числовым ключом. Для этого под сообщением пишут ключ. Если ключ короче сообщения, то его повторяют циклически. Шифровку получают будто в шифре Цезаря, но отсчитывая необязательно только третью букву по алфавиту, а ту, которая сдвинута на соответствующую цифру ключа. Так, применяя в качестве ключа группу из трех начальных цифр числа "пи", а именно 314, получаем шифровку:

 

сообщение       СОВЕРШЕННО СЕКРЕТНО ключ                 3143143143143143143 шифровка       ФПЖИСЬИОССАХИЛФИУСС 

Чтобы зашифровать первую букву сообщения С используя первую цифру ключа 3, отсчитывается третья по порядку от С в алфавите буква С-Т-У-Ф и получается буква шифровки Ф. Разновидность этого шифра была применена в резидентном англо-русском словаре, составленном студентами МВТУ, и взломка его доставила слушателям лекций по программированию не меньше удовольствия, чем разгадывание кроссворда. Шифр Гронсфелвда имеет массу модификаций, претендующих на его улучшение, от курьезных, вроде записи текста шифровки буквами другого алфавита, до нешуточных, как двойное шифрование разными ключами. Кроме этих шифров, зачастую использовался шифр простой замены, заключающийся в замене каждой буквы сообщения на соответствующую ей букву шифра. Такой шифр, популярный среди школьников, является простым кодом и вскрытие его возможно при длине шифровки всего в 20-30 букв, а при длинах текста свыше 100 символов представляет собой очень простую, но весьма увлекательную задачу приведенную ниже. А сейчас рассмотрим рождение шифра сложной замены, шифры сложной замены называют многоалфавитными, так как для шифрования каждого символа исходного сообщения применяется свой шифр простой замены. Шифр Гронсфельда тоже многоалфавитный шифр (в нем 10 вариантов замены), который используется по сей день.

Архитекторы и исследователи Италии эпохи Возрождения считают, что один из самых важных этапов ренессансной архитектуры связан с именем Леона Батиста Альберти, написавшем десять книг о зодчестве, построившим палаццо Ручеллаи, церковь Иль Джезу и ряд других замечательных произведений зодчества средневековой Италии. Будучи теоретиком искусства, он обобщил опыт гуманистической науки в изучении античного наследия, написав ряд трактатов: "О статуе", "О живописи", "О зодчестве". С другой стороны, криптологи всего мира почитают его отцом своей науки. Главным достижением Альберти в криптологии было изобретение многоалфавитной замены, сделавших шифровку очень устойчивой к вскрытию. Кроме самого шифра он еще подробно описал устройства из вращающихся колес для его реализации. Этот шифр можно описать таблицей шифрования, иногда называемой таблицей Виженера, по имени Блеза Виженера, дипломата XVI века, который развивал и совершенствовал криптографические системы:

        АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯА     АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯБ      _АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯВ     Я_АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮГ     ЮЯ_АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭ           .......Я     ВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ_АБ_      БВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ_А

Каждая строка в этой таблице соответствует одному шифру замены вроде шифра Юлия Цезаря для алфавита, дополненного пробелом. При шифровании сообщения его выписывают в строку, а под ним ключ. Если ключ оказался короче сообщения, то его циклически повторяют. Шифровку получают, находя символ в колонке таблицы по букве текста и строке, соответствующей букве ключа. Этот очень распространенный вид шифра сохранился до наших дней. Например, используя ключ АГАВА, из сообщения ПРИЕЗЖАЮ ШЕСТОГО получаем следующую шифровку:

сообщение: ПРИЕЗЖАЮ ШЕСТОГО     ключ:     АГАВААГАВААГАВАА шифровка: ПНИГЗЖЮЮЮАЕОТМГО  

В компьютере такая операция соответствует сложению кодов ASCII символов сообщения и ключа по некоторому модулю. Кажется, что если таблица будет более сложной, чем циклическое смещение строк, то шифр станет надежнее. Это действительно так, если ее менять почаще, например, от слова к слову. Но составление таких таблиц, представляющих собой латинские квадраты, где любая буква встречается в строке или столбце один раз, трудоемко и его стоит делать лишь на ЭВМ. Для ручного же многоалфавитного шифра полагаются лишь на длину и сложность ключа, используя приведенную таблицу, которую можно не держать в тайне, а это упрощает шифрование и расшифровывание. Итак, помимо ряда строений в античной манере, являющихся шедеврами архитектуры итальянского Возрождения, Альберти еще ввел в практику криптографии многоалфавитные шифры замены. Его книга "Трактат о шифре", написанная в 1466 году, представляла собой первый в мире научный труд по криптологии, если не считать арабских рукописей, с которыми Европа в это время вряд ли была хорошо знакома.

Многие историки считают Иоганна Трисемуса, аббата из Германии, вторым отцом современной криптологии. В 1508 году Трисемус написал "Полиграфию", первую печатную работу по криптологии. В ней он первым систематически описал применение шифрующих таблиц, заполненных алфавитом в случайном порядке. Для получения такого шифра обычно использовались ключевое слово или фраза и таблица, которая для русского языка может иметь размер 5 х 6. Ключевое слово вписывалось в таблицу по строкам, а повторяющиеся буквы отбрасывались. Таблица дозаполнялась не вошедшими в нее буквами алфавита по порядку. Поскольку ключевое слово легко хранить в памяти, то такой подход упрощал процессы шифрования и дешифрования. Для ключа РЕСПУБЛИКА таблица будет иметь следующий вид:

 Р       Е       С       П       У       БЛ       И       К       А       В       ГД       Ж       3       М       Н       ОТ       Ф       Х       Ц       Ч       ШЩ       Ь       Ы       Э       Ю       Я

Для описанного выше шифра Полибия с данной таблицей сообщение ОТПЛЫВАЕМ давало шифровку ШЩАДСНМИЦ. Такие табличные шифры называются монограммными, так как шифрование ведется по одной букве. Трисемус первым заметил, что можно шифровать по две буквы за раз. Такие шифры были названы биграммными. Наиболее известный шифр биграммами называется Playfair. Он применялся Великобританией в Первую мировую войну. Опишем его на примере той же самой таблицы. Открытый текст разбивался на пары букв (биграммы) и текст шифровки строился из него по следующим двум очень простым правилам.

1.                     Если обе буквы биграммы исходного текста принадлежали одной колонке таблицы, то буквами шифра считались буквы, которые лежали под ними. Так биграмма УН давала текст шифровки ВЧ. Если буква открытого текста находилась в нижнем ряду, то для шифра бралась соответствующая буква из верхнего ряда и биграмма ОЯ давала шифр ШБ. (Биграмма из одной буквы или пары одинаковых букв тоже подчинялась этому правилу и текст ЕЕ давал шифр ИИ).

2.                     Если обе буквы биграммы исходного текста принадлежали одной строке таблицы, то буквами шифра считались буквы, которые лежали справа от них. Так биграмма ИВ давала текст шифровки КГ. Если буква открытого текста находилась в правой колонке, то для шифра бралась соответствующая буква из левой колонки и биграмма ОМ давала шифр ДН.

Если обе буквы биграммы открытого текста лежали в разных рядах и колонках, то вместо них брались такие две буквы, чтобы вся четверка их представляла прямоугольник. При этом последовательность букв в шифре была зеркальной исходной паре. Например, СТ шифровалось как РХ, а ТБ шифровалось как ШР. При шифровании фразы ПУСТЬ КОНСУЛЫ БУДУТ БДИТЕЛЬНЫ по биграммам получается такая шифровка:

 

ПУ СТ ЬК ОН СУ ЛЫ БУ ДУ ТБ ДИ ТЕ ЛЬ НЫУБ РХ ЫИ ДО ПБ КЩ РБ HP ШР ЖЛ ФР ИЩ ЗЮ

Шифрование биграммами резко усилило стойкость шифров к вскрытию. При всем при том, что "Полиграфия" была довольно доступной печатной книгой, описанные в ней идеи получили признание лишь тремя веками позже. Скорее всего, это вызвано плохой известностью среди криптографов Трисемуса, который слыл богословом, библиофилом и основателем архивного дела. Среди шифров средневековья встречается много курьезов. Леонардо да Винчи шифровал большинство своих личных записей. Самый простой вид шифра, которым он пользовался, это обратное написание текста так, что прочесть его можно лишь в отражении зеркала. Однако Леонардо иногда использовал шифры и посерьезнее, поэтому далеко не все его заметки и записи расшифрованы и изучены. Люди, умеющие писать левой рукой справа налево зеркальный текст, нередки. Изумительно, но встречаются люди, которые умеют даже произносить фразы "наоборот" и понимать их на слух. Поистине, человеческим способностям нет и не будет предела. В средние века появляются профессиональные и даже потомственные криптографы, вроде семейства Ардженти, служившего у папы Римского.

Тем не менее папы Римские сами не чуждались услуг криптографов и выдающийся итальянский математик Джироламо Кардано, имя которого дошло до нас благодаря изобретенному им шарнирному механизму и первой публикации о методе решения уравнений третьей степени, состоял у них на службе. Его перу принадлежит несколько книг по криптографии и описание метода трафаретов, который будет рассмотрен ниже. Если учесть род занятий Кардано, становится понятным, почему, выведя гороскоп Христа, он остался недоступным инквизиции, сжегшей Бруно и судившей Галилея за куда меньшую ересь: эка, невидаль, что Земля вертится! Жизнь и смерть Джироламо полны легенд. Больше всего современников в Кардано поражал дар предвидения, благодаря которому он безмятежно перенес казнь своего сына и потерю крупного состояния. Вероятно, хотя бы отчасти его мистический талант знать будущее объясняется принадлежностью к криптографической службе, знающей все, что можно узнать. Но вот, предсказав продолжительность своей жизни в 75 лет, он в назначенный год покончил самоубийством, оставив записку: "Если и неверно, то неплохо придумано". Увлечение теорией магических квадратов привело Кардано к открытию нового класса шифров перестановок, названных решетками или трафаретами. Они представляют собой квадратные таблицы, где четверть ячеек прорезана так, что при четырех поворотах они покрывают весь квадрат. Вписывание в прорезанные ячейки текста и повороты решетки продолжаются до тех пор, пока весь квадрат не будет заполнен. Например, на рисунке ниже показан процесс шифровки решеткой 4 х 4. Черными квадратами обозначены непрорезанные ячейки, а повороты осуществляются по часовой стрелке на указанный ниже угол:

**П*     З***     ***        *Т**      ЗТП***Р     *Ж**     **Ш*       О***      ОЖШР  *И**     ***А     Е***       **Г*      ЕИГАЕ***     **Ю*     *C**       ***О      ЕСЮО  0'       90'     180'       270'      шифp

 

 
 

 

 

 

 

 

В результате получается шифровка ЗТП ОЖШРЕИГАЕСЮО. Число подобных решеток быстро растет с их размером. Так, решетка 2 х 2 единственна, решеток 4 х 4 уже 256, а решеток размером 6 х 6 свыше ста тысяч. Несмотря на кажущуюся сложность, шифры типа решеток довольно просто вскрываются и не могут использоваться в виде самостоятельного шифра. Однако они очень удобны и еще долго использовались в практике для усиления шифров замены. Один мой знакомый, остановившись при чтении рукописи книги на этом месте, попытался высказать сомнение в том, что шифры подобного рода легко вскрываются. Поскольку это глубоко ошибочное и обидное для криптологов мнение широко распространилось из популярных математических книг или иных источников дезинформации, то в следующей главе специально приведен пример вскрытия шифровки, сделанной этой решеткой.

В Англии XVII века возглавлял криптографическую службу математик Джон Валлис, основавший исчисление бесконечно малых, но получивший научное признание и профессуру в Оксфорде не за химерические бесконечно малые, а за редкостные успехи в расшифровке. В Германии же лучшим криптографом тогда был Лейбниц, основатель Берлинской академии наук, языковед и математик, один из создателей дифференциального исчисления, к имени которого мы еще вернемся позже в связи с развитием криптографии в России. Одно время его высокий покровитель, ганноверский курфюрст Георг1, став королем Англии, хотел пригласить Лейбница на британскую криптографическую службу, но Валлис был там незаменим и утечка континентальных "мозгов" на запад не состоялась. Лейбницу не подфартило стать главным криптографом Англии может быть и потому, что Ньютон, оспаривающий его авторство в дифференциальном исчислении, единолично заправлял в Королевском научном обществе и изо всех сил преследовал менее именитого иностранного конкурента. Другой раз Лейбницу не повезло с приглашением в Петербург для организации русской криптографической службы. Неожиданная его болезнь и смерть расстроили планы Петра 1, активно вербовавшего нужных России ученых. Человеком, сумевшим завершить развитие криптографии в отдельную научную дисциплину, стал, по-видимому, однофамилец Роджера Бэкона - Френсис Бэкон. Будучи лорд-канцлером, при короле Якове 1, он хорошо знал потребности государства в надежных шифрах, и его первая талантливая работа, относящаяся к 1580 году, в дальнейшем получила блестящее практическое развитие. В частности, именно он впервые предложил двоичное кодирование букв латинского алфавита - то же самое, которое используется сейчас в компьютерах.

Такой заботливый уход за пустившей первые ростки криптографией привел к тому, что она скоро стала давать плоды. Разгром Великой Армады в 1588 году в значительной степени был обусловлен мощью английской криптографической школы, легко ломавшей испанские шифры и сообщавшей о всех передвижениях неприятельских судов. Криптография была известна и применялась во многих слоях общества Британии. Лондонец Самуэль Пепис (1633-1703) всемирно известен своим дневником, по которому историки пишут труды о переходе от Пуританства к Реставрации. Искусствоведы включили это произведение в мировую сокровищницу литературы. Пепис окончил Кембридж благодаря кузену отца - адмиралу Монтегю и имел много друзей: ученого Исаака Ньютона, архитектора Кристофера Рена, поэта и драматурга Джона Драйдена. Пепис был лично свидетелем таких незабываемых для Англии событий, как возвращение короля Чарльза II в Англию, большая чума 1664 года, пожар Лондона 1666 года, революция 1688 года. Интересно, что его мемуары были зашифрованы по системе криптолога Томаса Шелтона и дополнительно собственным шифром Пеписа, поскольку содержали много скандальных фактов о великих современниках. Вместе с его личными книгами и бумагами дневник после смерти писателя попал в Кембридж, где сразу же привлек внимание исследователей. Первый успех в его расшифровке был получен лишь в 1822 году, а полностью она завершена в 1899 году. Таким образом, к XVIII веку криптография окончательно сложилась в виде самостоятельной науки. Однако, несмотря на наличие профессиональных криптологов, находящихся на государственной службе, и постоянного использования шифров в дипломатии и военном деле, криптология еще не вышла из младенческого возраста и ею могли заниматься лишь избранные, одаренные одиночки.

 

 

Криптология в Новое время

Новое время привнесло новые достижения в криптографию. Постоянно расширяющееся применение шифров выдвинуло новое требование к ним - легкость массового использования, а старое требование - устойчивость к взлому не только осталось, но и было усилено. Поэтому 1854 год, когда англичанин Чарльз Уитстон разработал новую шифровку биграммами, которую называют двойной квадрат, открыл новый этап в криптографии. Название шифр получил по аналогии с полибианским квадратом. В отличие от полибиаиского, двойной квадрат использует сразу две таблицы, расположенные по горизонтали, а шифрование идет биграммами, как в шифре Playfair. Эти, казалось бы и не столь уж значительные изменения привели к появлению на свет новой криптографической системы ручного шифрования. Она оказалась так надежна и удобна, что применялась немцами даже в годы Второй мировой войны. По отзыву ее создателя, шифрование двойным квадратом предельно просто и его "можно доверить даже дипломатам". Приведем пример использования шифра двойной квадрат для русских текстов. Имеются две таблицы со случайно расположенными в них алфавитами:

 

 

Ч               В       Ы       ПО       К       :       Д       УГ       Ш       3       Э       ФЛ       Ъ       Х       А       ,Ю       Р       Ж       Щ       НЦ       Б       И       Т       Ь.       С       Я       М       Е Е       Л       Ц       :       П.       Х       Ъ       А       НШ       Д       Э       К       СЫ               Б       Ф       УЯ       Т       И       Ч       ГМ       О       ,       Ж       ЬВ       Щ       3       Ю       Р

 

Для шифрования сообщение разбивают на биграммы. Первая буква биграммы находится в левой таблице, а вторая в правой. Затем, мысленно в таблице строится прямоугольник так, чтобы буквы биграммы лежали в его противоположных вершинах. Другие две вершины этого прямоугольника дают буквы шифровки. Предположим, что шифруется биграмма текста ОЖ. Буква О находится в колонке 1 строки 2 левой таблицы. Буква Ж находится в колонке 4 строки 6 правой таблицы. Значит, прямоугольник образован строками 2 и 6, а также колонками 1 левой и 4 правой таблиц. Следовательно, шифровке соответствуют буквы, лежащие в колонке 1 строки 6 левой таблицы Ц и в колонке 4 строки 2 правой таблицы А - биграмма АЦ. Так парами букв шифруется все сообщение:

Сообщение: ПР ИЕ ЗЖ АЮ Ш  ЕС ТО ГОШифровка : ПЕ МБ КИ ФМ ЕШ РФ ЖБ ДЦ ЩП

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

Во второй половине XIX века появляется множество работ по вскрытию сложных шифров замены для конкретных условий, при использовании повторяющегося короткого ключа, при шифровке нескольких сообщений одним ключом. Тогда же в Англии и США стали выходить периодические издания, посвященные вопросам криптоанализа, где профессионалы и любители, обмениваясь опытом, предлагали новые типы шифров и анализировали их стойкость к взлому. Возможно, одного из самых больших успехов XX века криптоаналитика добилась, когда Британская морская разведка в начале 1917 года передала правительству США текст секретной расшифрованной телеграммы (телеграмма была перехвачена с трансатлантического кабеля.) , известной как послание Циммермана, бывшего министром иностранных дел Германии. В ней немецкому послу в Мексике предлагалось заключить союз, чтобы Мексика захватила американские штаты Техас, Нью-Мехико и Аризону. Эта телеграмма, произвела эффект взрыва и, считают сейчас историки, стала главным поводом для вступления США в Первую мировую войну против Германии, обеспечив ее разгром. Так криптография впервые серьезно заявила о своей исключительно большой значимости в современном мире.

XIX век с расширением связных коммуникаций занялся автоматизацией процесса шифрования. Появился телеграф, нужно шифровать и его. Любопытно, что цифровое шифрующее колесо было изобретено госсекретарем Томасом Джефферсоном в 1790 году, ставшим потом третьим президентом США. Похожие шифрующие устройства применялись армией США и после Второй мировой войны. Принцип работы таких машин, очень похожих на арифмометры, заключается в многоалфавитной замене текста сообщения по длинному ключу. Длина периода ключа определялась наименьшим общим кратным периодов оборотов шифрующих колес. При 4 колесах и периодах их оборотов 13, 15, 17 и 19 получалась большая длина периода ключа 62985, очень затрудняющая расшифровку коротких сообщений. Гораздо более примитивный прибор, цилиндр Базери, был предложен Этьеном Базери в 1891 году. Он состоял из 20 дисков со случайно нанесенным по ободу алфавитом. Перед началом шифрования диски помешались на общую ось в порядке, определяемым ключом. Набрав первые 20 букв текста в ряд на цилиндрах их поворачивали вместе и считывали в другом ряду шифрованное сообщение. Процесс повторялся, пока все сообщение не было зашифровано. Однако первая практически используемая криптографическая машина была предложена Жильбером Вернамом лишь в 1917 году. Применение машин в криптографии расширялось, что привело к созданию частных фирм, занимающихся их серийным выпуском. Шифровальная аппаратура создавалась в Германии, Японии, США и ряде других развитых стран. Предшественницей современных криптографических машин была роторная машина, изобретенная Эдвардом Хеберном в 1917 году и названная впоследствии Энигмой (Слово enigma переводится как загадка, Промышленные образцы этой машины изготовляла фирма Siemens.). Независимая промышленная ее версия создана чуть позже берлинским инженером Артуром Кирхом (некоторые источники называют его Артуром Шербиусом). Она сначала Представляла собой 4 вращающихся на одной оси барабана, обеспечивающих более миллиона вариантов шифра простой замены, определяемого текущим положением барабанов. На каждой стороне барабана по окружности располагалось 25 электрических контактов, столько же, сколько букв в алфавите. Контакты с обеих сторон барабана соединялись попарно случайным образом 25 проводами, формировавшими замену символов. Колеса складывались вместе и их контакты, касаясь друг друга, обеспечивали прохождение электрических импульсов сквозь весь пакет колес. Перед началом работы барабаны поворачивались так, чтобы устанавливалось заданное кодовое слово - ключ, а при нажатии клавиши и кодировании очередного символа правый барабан поворачивался на один шаг. После того, как он делал оборот, на один шаг поворачивался следующий барабан - будто бы в счетчике электроэнергии. Таким образом, получался ключ заведомо гораздо более длинный, чем текст сообщения.

Например, в первом правом барабане провод от контакта, соответствующего букве U, присоединен к контакту буквы F на другой его стороне. Если же барабан поворачивался на один шаг, то этот же провод соответствовал замене следующей за U буквы V на следующую за F букву G. Так как барабаны соприкасались контактами, то электрический импульс от нажатой клавиши с буквой исходного текста, прежде чем достигал выхода претерпевал 4 замены: по одной в каждом барабане. Для затруднения расшифрования барабаны день ото дня переставлялись местами или менялись. Дальнейшее усовершенствование этой машины сделало движение барабанов хаотичным, а число их увеличилось сначала до 5, а потом до 6. Все устройство могло поместиться в портфеле и было так просто, что обслуживалось обычными связистами.

Казалось бы, сделано все для невозможности вскрытия шифровок Энигмы. И все же английские криптографические службы в Блетчли Парке (уединенное поместье в 80 километрах севернее Лондона, отведенное британским криптологам.) почти всю войну читали немецкие шифры. Это стало возможным лишь благодаря польской разведке, которая к злополучному 1939 году смогла получить чертежи Энигмы и разобраться в ее устройстве. После нападения гитлеровцев на Польшу чертежи немецкой шифровальной машины были переданы Англии. Довольно быстро британские криптоаналитики установили, что для взлома шифра, нужно знать распайку проводов в шифрующих колесах. Началась охота британских спецслужб за образцами Энигмы. Первый удалось выкрасть прямо с завода на юго-востоке Германии, второй сняли со сбитого в небе Норвегии немецкого бомбардировщика, третий был найден во время боев за Францию у немецких военных связистов, взятых в плен. Остальные Энигмы сняты водолазами с немецких подводных лодок, за которыми специально стали охотиться и топить на малых глубинах. Взлом шифров Энигмы шел тяжело до тех пор, пока в 1942 году не вступили в строй несколько ЭВМ, специально созданных для этого Аланом Тьюрингом. Это была первая в мире довольно быстродействующая ЭВМ под названием "Колосс", специализированная для взлома шифров. После этого английские криптоаналитики могли меньше чем за день могли расколоть любую шифровку Энигмы, полученную добытыми ранее колесами, методично перебирая все возможные ключи. Немцы рассчитывали на сложность своего шифра, исходя из его ручной дешифровки, в то время как англичане стали его ломать, используя ЭВМ. Отметим, что сами немцы допускали возможность взлома шифра Энигмы. Еще в 1930 году ведущий немецкий криптоаналитик Георг Шредер продемонстрировал такую возможность, едко заметив при этом: "Энигма - дерьмо!" Однако она постоянно усложнялась и были периоды, когда в Блетчли Парке с ней не могли справиться. Перед шифровками Энигмы, которые исходили не от войск, а из немецких криптографических центров, "Колосс" тоже был бессилен.

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

                                               Шифр Цезаря

Гай Юлий Цезарь, римский император, в то же время, известен как изобретатель (не могу сказать "разработчик") своего шифра, поручавшего Марку Туллию Цицерону и своим близким шифровать послания и использовать 50-буквенный алфавит.

Цитирую Гая Светония: "Существуют и его письма к Цицерону и письма к близким о домашних делах: в них, если нужно было сообщить что-нибудь негласно, он пользовался тайнописью, то есть менял буквы так, чтобы из них не складывалось ни одного слова. Чтобы разобрать и прочитать их, нужно читать всякий раз четвертую букву вместо первой, например, D вместо А и так далее".

Выражаясь современной терминологией, номер каждого символа при шифровании увеличивался на 3: А на D, B на E и т.д. Знаменитая фраза Цезаря VENI VIDI VICI (пришел, увидел, победил), посланная сенату после однодневной войны с Фарнаком, царем Понта, после зашифровки превратилось бы в SBKF SFAF SFZF. Для уточнения стоит отметить, что Гай Светоний ошибался, давая этому методу название тайнописи. Тайнопись - это сокрытие самого факта передачи сообщения, изложенное Светонием называется, в современной терминологии, шифром однозначной замены.

Криптоалгоритм будет реализован на ASCII-таблице. Для корректной реализации шифра еще потребуется нормализация, проводимая для того, чтобы множества совпадали и, естественно, размеры множеств открытого и шифротекста были равны (т.н. гомоморфизм). Для этого делается следующее: если сумма текущего номера и тройки выходит за пределы алфавита (размера множества разрешенных символов), то отсчет букв начинается сначала.

 

          Программный код для шифрования текстовых сообщений по принципу «шифра Цезаря» на языке программирования Visual Basic

 

 

Пусть kk = 3 и кодируемой фразой будет «i remember that September». Будем использовать латинские буквы со стандартным следованием букв в алфавите. Результаты шифрования указанной выше фразы показаны ниже в таблице:

 

 

 

1

i

 

r

e

m

e

m

b

e

r

 

t

h

a

t

 

s

e

p

t

e

m

b

e

r

2

9

0

18

5

13

5

13

2

5

18

0

20

8

1

20

0

19

5

16

20

5

13

2

5

18

3

12

3

21

8

16

8

16

5

8

21

3

23

11

4

23

3

22

8

19

23

8

16

5

8

21

4

l

c

u

h

p

h

p

e

h

u

c

w

k

d

w

c

v

h

s

w

h

p

e

h

u

 

Пояснения к таблице:

1-я строка – фраза для шифрования;

2-я строка – номера букв фразы для шифрования в латинском алфавите;

3-я строка – номера букв фразы для шифрования, увеличенные на 3;

4-я строка – зашифрованная фраза.

 

 

 

 

 

 

Спроектируем форму Form1, так чтобы было можно выполнять как кодирование, так и декодирование введенной фразы, рис. 1.

 

 

 

 

 

 

 

 

 

                                                              Рис. 1.                                                            

 

 

 

 

 

 

 

                                                               Рис. 2.

 

 

 

 

 

Подготовим программный код задачи кодирования по «Цезарю», так чтобы при шифровании пользователь мог выбирать величину сдвига kk.

 

Private Sub Command1_Click()

Dim a(27) As String * 1

Dim s$, t$, r$

Dim kk, m, l, i, j As Integer

kk = Text1.Text

s$ = Text2.Text

m = Len(s$)

kk = kk Mod 27

a(0) = " " : a(1) = "a" : a(2) = "b" : a(3) = "c" : a(4) = "d" : a(5) = "e" : a(6) = "f" : a(7) = "g"

a(8) = "h" : a(9) = "i" : a(10) = "j" : a(11) = "k" : a(12) = "l" : a(13) = "m" : a(14) = "n"

a(15) = "o" : a(16) = "p" : a(17) = "q" : a(18) = "r" : a(19) = "s" : a(20) = "t" : a(21) = "u"

a(22) = "v" : a(23) = "w" :a(24) = "x" : a(25) = "y" : a(26) = "z" : a(27) = " "

Rem Кодирование фразы

If Check1.Value = 1 Then

Check1.Caption = "Кодирование"

For i = 1 To m

t$ = Mid(s$, i, 1)

For j = 1 To 27

If (t$ = a(j)) Then l = j

Next j

l = l + kk

l = l Mod 27

r$ = r$ & a(l)

Next i

Text3.Text = r$

End If

 

Rem Декодирование шифровки

If Check1.Value = 0 Then

Check1.Caption = "Декодирование"

For i = 1 To m

t$ = Mid(s$, i, 1)

For j = 1 To 27

If (t$ = a(j)) Then l = j

Next j

l = l - kk

If l <= 0 Then l = l + 27

r$ = r$ & a(l)

Next i

Text3.Text = r$

End If

End Sub

Private Sub Command2_Click()

End

End Sub

 

Запустим программу на выполнение. Наберем число 3 в текстовом окне «Введите сдвиг», а в окне «Введите фразу»: i remember that September. Набор проводим строчными буквами, поскольку работа с прописными буквами в программе не предусмотрена. Проверив состояние контрольного индикатора (Кодирование), закодируем набранную фразу, щелкнув по кнопке «Обработать фразу». Результатом кодирования будет lcuhphpehucwkdwcvhswhpehu, рис. 2. Можно убедиться, что он совпадает с «найденным теоретически».

Декодируем полученную шифровку. Для этого перенесем зашифрованную фразу lcuhphpehucwkdwcvhswhpehu из окна «Результат» в окно «Введите фразу» и изменим состояние контрольного индикатора (уберем флажок). Снова щелкнем по кнопке «Обработать фразу» и в окне «Результат» появится исходная фраза i remember that September, рис. 3.

Теперь можно зашифровать ту же фразу для другого значения сдвига, пусть например kk = 5. Результат кодирования представлен на рис. 4.

 

     

  

                                           Рис. 3.                                                               

 

 

 

 

                                                                  Рис. 4.

 

 

 

 

 

 

 

 

 

 

 

 

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

 

 

 

 

 

 

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Список использованной литературы:

 

 

  1. Ж . Брассар «Современная криптология», изд. «Полимед», 1999г.
  2. Библия , изд.  «Московская патриархия», 1998 г.   
  3.  Учебник по программированию «Visual basic 6.0», изд.  «Эком», 2002г.   
  4. Н. Г. Волчёнков  программирование на «Visual basic 6.0», изд.  Инфра-м, 2002 г.

 

 

 

 

www.referatmix.ru

подстановочно-перестановочный шифр и его применение

Седьмая научная конференция молодых исследователей

«Шаг в будущее, Москва»

регистрационный номер

информационная безопасность

криптография:

подстановочно - перестановочный шифр и его применение

Автор: Калашников Алексей Александрович,

Школа №1959, 11 класс «А»

Научный руководитель: Троицкий Игорь Иванович, доцент

Кафедры «Информационная

Безопасность»(ИУ-8), МГТУ им. Н. Э.

Баумана, кандидат технических наук.

Москва - 2004

Содержание:

Появление шрифтов………………………….…..…….….стр.3

Становление науки криптологии…………………………стр.3

Криптология в новое время…………….…………...……..стр.12

Шифр Цезаря……………………………….…………..…..стр.15

-Программный код………………………...……..…….стр.15

Появление шифров

Ряд систем шифрования дошел до нас из глубокой древности. Скорее всего, они появились одновременно с письменностью в 4 тысячелетии до нашей эры. Методы секретной переписки были изобретены независимо во многих древних обществах, таких как Египет, Шумер и Китай, но детальное состояние криптологии в них неизвестно. Криптограммы выискиваются даже в древние времена, хотя из-за применяемого в древнем мире идеографического письма в виде стилизованных картинок были примитивны. Шумеры, по-видимому, пользовались тайнописью. Археологами найдены глиняные клинописные таблички, где первая запись замазывалась слоем глины, на котором делалась вторая запись. Происхождение таких странных таблиц могло быть вызвано и тайнописью, и утилизацией. Оттого что число знаков идеографического письма было более тысячи, то запоминание их представляло собой трудную задачу - тут не до шифрования. Тем не менее, коды, появившиеся вместе со словарями, были хорошо известны в Вавилоне и Ассирии, а древние египтяне применяли, по меньшей мере, 3 системы шифрования. С развитием фонетического письма письменность резко упростилась. В древнем семитском алфавите во 2-м тысячелетии до нашей эры было всего около 30 знаков. Ими обозначались согласные звуки, а также некоторые гласные и слоги. Упрощение письма стимулировало развитие криптографии.

Даже в Библии можно найти примеры шифровок, хотя мало кто это замечает. В книге пророка Иеремии (25,26) читаем: "...а царь Сессаха выпьет после них". Такого царя или царства не было - неужели ошибка писца? Нет, просто порой священные иудейские тексты шифровались простой заменой. Вместо первой буквы алфавита писалась последняя, вместо второй - предпоследняя и так далее. Этот древний метод шифрования назывался атбаш. Читая по нему слово СЕССАХ, на языке оригинала получаем слово ВАВИЛОН, и смысл библейского текста может быть принят даже не верящим слепо в истинность писания.

Вот что об этом сообщает Гай Светоний: "Существуют и его письма к Цицерону и письма к близким о домашних делах: в них, если нужно было сообщить что-нибудь негласно, он пользовался тайнописью, то есть менял буквы так, чтобы из них не складывалось ни одного слова. Чтобы разобрать и прочитать их, нужно читать всякий раз четвертую букву вместо первой, например, D вместо А и так далее". Это означает, что каждая буква шифровки заменялась четвертой по счету от нее в алфавите: А-В-С-D, или D вместо А. Послание сенату VENI VIDI VICI, то есть ПРИШЕЛ, УВИДЕЛ, ПОБЕДИЛ, сделанное Цезарем после однодневной войны с понтийским царем Фарнаком, выглядело бы шифровкой SBKF SFAF SFZF.

Принципиально иной шифр, более древний, связан с перестановкой букв сообщения по определенному, известному отправителю и получателю правилу. Древние рассказывали: какой-то хитрец из спартанцев обнаружил, что если полоску пергамента намотать спиралью на палочку и написать на нем вдоль палочки текст сообщения, то, после снятия полоски буквы на ней расположатся хаотично. Это то же самое, будто буквы писать не подряд, а через условленное число по кольцу до тех пор, пока весь текст не будет исчерпан. Сообщение ВЫСТУПАЙТЕ при окружности палочки в 3 буквы даст шифровку ВУТЫПЕСАТЙ. Текст ее не понятен, не так ли?

Для прочтения шифровки нужно не только знать систему засекречивания, но и обладать ключом в виде палочки, принятого диаметра. Зная тип шифра, но, не имея ключа, расшифровать сообщение было сложно. Этот шифр именовался скитала по названию стержня, на который наматывались свитки папируса, что указывает на его происхождение. Он был весьма популярен в Спарте и много раз совершенствовался в позднейшие времена. О его важном значении и большом распространении говорит свидетельство Плутарха в "Сравнительных жизнеописаниях", когда историк сообщает о жизни греческого полководца Алкивиада: "Однако Лисандр обратил внимание на эти слова не раньше, чем получил из дома скиталу с приказанием отделаться от Алкивиада..."

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

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

Приборы для шифрования тоже существовали с древних времен. Спарта, наиболее воинственная из греческих государств, имела хорошо проработанную систему секретной военной связи еще в V веке до нашей эры. С помощью скитала, первого известного криптографического устройства, спартанские эфоры (эфоры - члены коллегиального правительства Спарты.) шифровали послания, используя метод простой перестановки. Ленивые и оттого юбретательные римляне в IV веке до нашей эры, чтобы упростить процедуру шифрования, стали применять шифрующие диски. Каждый из 2 дисков, помещенных на общую ось, содержал на ободе алфавит в случайной последовательности. Найдя на одном диске букву текста, с другого диска считывали соответствующую ей букву шифра. Такие приборы, порождающие шифр простой замены. Использовались вплоть до эпохи Возрождения. Для связи греки и римляне использовали код на основе полибианского квадрата с естественным заполнением алфавитом. Буква кодировалась номером строки и столбца, соответствующим ей в квадрате. Сигнал подавался ночью факелами, а днем флагами.

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

Становление науки криптологии

В ручных шифрах того времени часто используются таблицы, которые дают простые шифрующие процедуры перестановки букв в сообщении. Ключом в них служат размер таблицы, фраза, задающая перестановку или специальная особенность таблиц. Простая перестановка без ключа - один из самых простых методов шифрования, родственный шифру скитала. Например, сообщение НЕЯСНОЕ СТАНОВИТСЯ ЕЩЕ БОЛЕЕ НЕПОНЯТНЫМ записывается в таблицу по столбцам. Для таблицы из 5 строк и 7 столбцов это выглядит так:

Н О Н С Б Н Я

Е Е О Я О Е Т

Я С В Е Л П Н

С Т И Щ Е О Ы

Н А Т Е Е Н М

После того, как открытый текст записан колонками, для образования шифровки он считывается по строкам. Если его записывать группами по 5 букв, то получится: НОНСБ НЯЕЕО ЯОЕТЯ СВЕЛП НСТИЩ ЕОЫНА ТЕЕНМ. Для использования этого шифра отправителю и получателю нужно договориться об общем ключе в виде размера таблицы. Объединение букв в группы не входит в ключ шифра и используется лишь для удобства записи несмыслового текста.

Более практический метод шифрования, называемый одиночной перестановкой по ключу очень похож на предыдущий. Он отличается лишь тем, что колонки таблицы переставляются по ключевому слову, фразе или набору чисел длиной в строку таблицы. Использовав в виде ключа слово ЛУНАТИК, получим такую таблицу.

Л У Н А Т И К

4 7 5 1 6 2 3

Н О Н С Б Н Я

Е Е О Я О Е Т

Я С В Е Л П Н

С Т И Щ Е О Ы

Н А Т Е Е Н М

до перестановки

А И К Л Н Т У

1 2 3 4 5 6 7

С Н Я Н Н Б О

Я Е Т Е О О Е

Е П Н Я В Л С

Щ О Ы С И Е Т

Е Н М Н Т Е А

после перестановки

В верхней строке ее записан ключ, а номера под ключом определены по естественному порядку соответствующих букв ключа в алфавите. Если в ключе встретились бы одинаковые буквы, они бы нумеровались слева направо. Получается шифровка: СНЯНН БОЯЕТ ЕООЕЕ ПНЯВЛ СЩОЫС ИЕТЕН МНТЕА. Для дополнительной скрытности можно повторно шифровать сообщение, которое уже было зашифровано. Этот способ известен под названием двойная перестановка. Для этого размер второй таблицы подбирают так, чтобы длины ее строк и столбцов были другие, чем в первой таблице. Лучше всего, если они будут взаимно простыми. Кроме того, в первой таблице можно переставлять столбцы, а во второй строки. Наконец, можно заполнять таблицу зигзагом, змейкой, по спирали или каким-то другим способом. Такие способы заполнения таблицы если и не усиливают стойкость шифра, то делают процесс шифрования гораздо более занимательным.

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

2 4 1 3

4 П P И Е

1 3 Ж A Ю

2 Ш Е С

3 Т О Г О

исходная

таблица

1 2 3 4

4 И П Е Р

1 A 3 Ю Ж

2 Е С Ш

3 Г Т О О

перестановка

столбцов

1 2 3 4

1 A 3 Ю Ж

2 Е С Ш

3 Г Т О О

4 И П Е Р

перестановка

строк

Получается шифровка АЗЮЖЕ СШГТООИПЕР. Ключом к этому шифру служат номера столбцов 2413 и номера строк 4123 исходной таблицы. Число вариантов двойной перестановки тоже велико: для таблицы 3х3 их 36, для 4х 4 их 576, а для 5 х 5 их уже 14400. Однако двойная перестановка очень слабый вид шифра, легко читаемый при любом размере таблицы шифрования.

Выдающимся английским философом и изобретателем Роджером Бэконом, предвосхитившим многие позднейшие открытия (наиболее значительное из его изобретений - очки, которые он предложил в 1268 году), был найден состав черного пороха. Так почему же традиционно считают его изобретателем Бертольда Шварца, по преданиям казненного императором Венцеславом на пороховой бочке? Карамзин по этому поводу писал: "Нет сомнения, что и монах Рогер Бакон за 100 лет до Бертольда Шварца умел составлять порох: ибо ясно говорит в своем творении de nulitate Magiae о свойстве и силе оного". Дело в том, что средневековые ученые, сделав открытие, отнюдь не всегда спешили его опубликовать в письмах коллегам, как это было тогда принято при отсутствии периодических научных изданий. Нередко ту часть открытия, которую теперь называют know how, они шифровали анаграммой, переставляя буквы сообщения по известному только им ключу. Например, названия древней и современной столиц Японии в русском написании тоже представляют собой анаграмму: КИОТО - ТОКИО.

В упомянутом труде Бэкона состав пороха был приведен в виде зашифрованной анаграммы, которую до появления сверхбыстродействующих ЭВМ не удавалось вскрыть, и слава открытия поэтому приписывалась Шварцу. Гораздо более сложная проблема возникает с приписываемым Галилео Галилею открытием спутников Юпитера. Долгое время приведенная им анаграмма читалась так: "Высочайшую планету двойною наблюдал", но в 1960-х годах с применением компьютеров при расшифровке был получен иной вариант прочтения: "Привет вам, близнецы, Марса порождение!" Конечно, открытие Фобоса и Деймоса на слабеньком телескопе за два с половиной столетия до американца Асафа Холла - событие мало реальное, но кто знает? Описал же Свифт в "Путешествиях Гулливера" спутники Марса за полтораста лет до астрономов с поразительной точностью! Может быть Свифт знал результаты Галилея, которые сейчас неизвестны? Шифры перестановки чрезвычайно коварны в том смысле, что могут дать несколько вариантов осмысленного прочтения, если не знать точного значения ключа.

Какие же шифры применялись еще средневековыми учеными? На известной гравюре Дюрера "Меланхолия" позади грустящего ангела изображен магический квадрат, заполненный цифрами. Магическими квадратами называются квадратные таблицы со вписанными в их клетки последовательными натуральными числами от 1, которые дают в сумме по каждому столбцу, каждой строке и каждой диагонали одно и то же число. Подобные квадраты широко применялись для вписывания шифруемого текста по приведенной в них нумерации. Если потом выписать содержимое таблицы по строкам, то получалась шифровка перестановкой букв. Считалось, что созданные с их помощью шифровки охраняет не только ключ, но и магическая сила. Вот пример магического квадрата и его шифровки:

16 3 2 13

5 10 11 8

9 6 7 12

4 15 14 1

О И Р Т

З Ш Е Ю

Ж А С

Е Г О П

Полученная из ПРИЕЗЖАЮ ШЕСТОГО, шифровка ОИРТЗШЕЮ ЖАСЕГОП представляется довольно основательной. На первый взгляд кажется, будто магических квадратов очень мало. Тем не менее их число очень быстро возрастает с увеличением размера квадрата. Так, существует лишь один магический квадрат размером 3 х 3, если не принимать во внимание его повороты. Магических квадратов 4 х 4 насчитывается уже 880, а число магических квадратов размером 5 х 5 около 250000. Поэтому магические квадраты больших размеров могли быть хорошей основой для надежной системы шифрования того времени, потому что ручной перебор всех вариантов ключа для этого шифра был немыслим.

Широкое развитие торговли в средние века потребовало специфических шифров, предельно простых и удобных, которыми могли бы пользоваться купцы для передачи, например, даты приезда или цены товара. Это были простые шифры замены цифр на буквы, основанные на ключевом слове. Собственно, это коды, а не шифры - вспомните обозначение месяцев на банках консервов, но код, примененный единожды с неизвестной таблицей кодирования, схож по свойствам с шифром. Торговцы заранее договаривались использовать общее ключевое слово, буквы которого соответствовали бы цифрам. Например, для ключа РЕСПУБЛИКА цифра 0 означает букву Р, цифра 1 означает Е, 2 - С, 3-Н и так далее. Поэтому, получив от корреспондента сообщение, ПРИБЫВАЮ ЕЛРПАС, они его читали, как ПРИБЫВАЮ 16/03/92. Простота и удобство этой системы шифрования позволили ей дожить до начала этого века без всяких изменений.

Другой шифр, обычно называемый шифром Гронсфельда, состоит в модификации шифра Цезаря числовым ключом. Для этого под сообщением пишут ключ. Если ключ короче сообщения, то его повторяют циклически. Шифровку получают будто в шифре Цезаря, но отсчитывая необязательно только третью букву по алфавиту, а ту, которая сдвинута на соответствующую цифру ключа. Так, применяя в качестве ключа группу из трех начальных цифр числа "пи", а именно 314, получаем шифровку:

сообщение СОВЕРШЕННО СЕКРЕТНО

ключ 3143143143143143143

шифровка ФПЖИСЬИОССАХИЛФИУСС

Чтобы зашифровать первую букву сообщения С используя первую цифру ключа 3, отсчитывается третья по порядку от С в алфавите буква С-Т-У-Ф и получается буква шифровки Ф. Разновидность этого шифра была применена в резидентном англо-русском словаре, составленном студентами МВТУ, и взломка его доставила слушателям лекций по программированию не меньше удовольствия, чем разгадывание кроссворда. Шифр Гронсфелвда имеет массу модификаций, претендующих на его улучшение, от курьезных, вроде записи текста шифровки буквами другого алфавита, до нешуточных, как двойное шифрование разными ключами. Кроме этих шифров, зачастую использовался шифр простой замены, заключающийся в замене каждой буквы сообщения на соответствующую ей букву шифра. Такой шифр, популярный среди школьников, является простым кодом и вскрытие его возможно при длине шифровки всего в 20-30 букв, а при длинах текста свыше 100 символов представляет собой очень простую, но весьма увлекательную задачу приведенную ниже. А сейчас рассмотрим рождение шифра сложной замены, шифры сложной замены называют многоалфавитными, так как для шифрования каждого символа исходного сообщения применяется свой шифр простой замены. Шифр Гронсфельда тоже многоалфавитный шифр (в нем 10 вариантов замены), который используется по сей день.

Архитекторы и исследователи Италии эпохи Возрождения считают, что один из самых важных этапов ренессансной архитектуры связан с именем Леона Батиста Альберти, написавшем десять книг о зодчестве, построившим палаццо Ручеллаи, церковь Иль Джезу и ряд других замечательных произведений зодчества средневековой Италии. Будучи теоретиком искусства, он обобщил опыт гуманистической науки в изучении античного наследия, написав ряд трактатов: "О статуе", "О живописи", "О зодчестве". С другой стороны, криптологи всего мира почитают его отцом своей науки. Главным достижением Альберти в криптологии было изобретение многоалфавитной замены, сделавших шифровку очень устойчивой к вскрытию. Кроме самого шифра он еще подробно описал устройства из вращающихся колес для его реализации. Этот шифр можно описать таблицей шифрования, иногда называемой таблицей Виженера, по имени Блеза Виженера, дипломата XVI века, который развивал и совершенствовал криптографические системы:

АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ

А АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ

Б _АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ

В Я_АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮ

Г ЮЯ_АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭ

.......

Я ВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ_АБ

_ БВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ_А

Каждая строка в этой таблице соответствует одному шифру замены вроде шифра Юлия Цезаря для алфавита, дополненного пробелом. При шифровании сообщения его выписывают в строку, а под ним ключ. Если ключ оказался короче сообщения, то его циклически повторяют. Шифровку получают, находя символ в колонке таблицы по букве текста и строке, соответствующей букве ключа. Этот очень распространенный вид шифра сохранился до наших дней. Например, используя ключ АГАВА, из сообщения ПРИЕЗЖАЮ ШЕСТОГО получаем следующую шифровку:

сообщение: ПРИЕЗЖАЮ ШЕСТОГО

ключ: АГАВААГАВААГАВАА

шифровка: ПНИГЗЖЮЮЮАЕОТМГО

В компьютере такая операция соответствует сложению кодов ASCII символов сообщения и ключа по некоторому модулю. Кажется, что если таблица будет более сложной, чем циклическое смещение строк, то шифр станет надежнее. Это действительно так, если ее менять почаще, например, от слова к слову. Но составление таких таблиц, представляющих собой латинские квадраты, где любая буква встречается в строке или столбце один раз, трудоемко и его стоит делать лишь на ЭВМ. Для ручного же многоалфавитного шифра полагаются лишь на длину и сложность ключа, используя приведенную таблицу, которую можно не держать в тайне, а это упрощает шифрование и расшифровывание. Итак, помимо ряда строений в античной манере, являющихся шедеврами архитектуры итальянского Возрождения, Альберти еще ввел в практику криптографии многоалфавитные шифры замены. Его книга "Трактат о шифре", написанная в 1466 году, представляла собой первый в мире научный труд по криптологии, если не считать арабских рукописей, с которыми Европа в это время вряд ли была хорошо знакома.

Многие историки считают Иоганна Трисемуса, аббата из Германии, вторым отцом современной криптологии. В 1508 году Трисемус написал "Полиграфию", первую печатную работу по криптологии. В ней он первым систематически описал применение шифрующих таблиц, заполненных алфавитом в случайном порядке. Для получения такого шифра обычно использовались ключевое слово или фраза и таблица, которая для русского языка может иметь размер 5 х 6. Ключевое слово вписывалось в таблицу по строкам, а повторяющиеся буквы отбрасывались. Таблица дозаполнялась не вошедшими в нее буквами алфавита по порядку. Поскольку ключевое слово легко хранить в памяти, то такой подход упрощал процессы шифрования и дешифрования. Для ключа РЕСПУБЛИКА таблица будет иметь следующий вид:

Р Е С П У Б

Л И К А В Г

Д Ж 3 М Н О

Т Ф Х Ц Ч Ш

Щ Ь Ы Э Ю Я

Для описанного выше шифра Полибия с данной таблицей сообщение ОТПЛЫВАЕМ давало шифровку ШЩАДСНМИЦ. Такие табличные шифры называются монограммными, так как шифрование ведется по одной букве. Трисемус первым заметил, что можно шифровать по две буквы за раз. Такие шифры были названы биграммными. Наиболее известный шифр биграммами называется Playfair. Он применялся Великобританией в Первую мировую войну. Опишем его на примере той же самой таблицы. Открытый текст разбивался на пары букв (биграммы) и текст шифровки строился из него по следующим двум очень простым правилам.

  1. Если обе буквы биграммы исходного текста принадлежали одной колонке таблицы, то буквами шифра считались буквы, которые лежали под ними. Так биграмма УН давала текст шифровки ВЧ. Если буква открытого текста находилась в нижнем ряду, то для шифра бралась соответствующая буква из верхнего ряда и биграмма ОЯ давала шифр ШБ. (Биграмма из одной буквы или пары одинаковых букв тоже подчинялась этому правилу и текст ЕЕ давал шифр ИИ).

  2. Если обе буквы биграммы исходного текста принадлежали одной строке таблицы, то буквами шифра считались буквы, которые лежали справа от них. Так биграмма ИВ давала текст шифровки КГ. Если буква открытого текста находилась в правой колонке, то для шифра бралась соответствующая буква из левой колонки и биграмма ОМ давала шифр ДН.

Если обе буквы биграммы открытого текста лежали в разных рядах и колонках, то вместо них брались такие две буквы, чтобы вся четверка их представляла прямоугольник. При этом последовательность букв в шифре была зеркальной исходной паре. Например, СТ шифровалось как РХ, а ТБ шифровалось как ШР. При шифровании фразы ПУСТЬ КОНСУЛЫ БУДУТ БДИТЕЛЬНЫ по биграммам получается такая шифровка:

ПУ СТ ЬК ОН СУ ЛЫ БУ ДУ ТБ ДИ ТЕ ЛЬ НЫ

УБ РХ ЫИ ДО ПБ КЩ РБ HP ШР ЖЛ ФР ИЩ ЗЮ

Шифрование биграммами резко усилило стойкость шифров к вскрытию. При всем при том, что "Полиграфия" была довольно доступной печатной книгой, описанные в ней идеи получили признание лишь тремя веками позже. Скорее всего, это вызвано плохой известностью среди криптографов Трисемуса, который слыл богословом, библиофилом и основателем архивного дела. Среди шифров средневековья встречается много курьезов. Леонардо да Винчи шифровал большинство своих личных записей. Самый простой вид шифра, которым он пользовался, это обратное написание текста так, что прочесть его можно лишь в отражении зеркала. Однако Леонардо иногда использовал шифры и посерьезнее, поэтому далеко не все его заметки и записи расшифрованы и изучены. Люди, умеющие писать левой рукой справа налево зеркальный текст, нередки. Изумительно, но встречаются люди, которые умеют даже произносить фразы "наоборот" и понимать их на слух. Поистине, человеческим способностям нет и не будет предела. В средние века появляются профессиональные и даже потомственные криптографы, вроде семейства Ардженти, служившего у папы Римского.

Тем не менее папы Римские сами не чуждались услуг криптографов и выдающийся итальянский математик Джироламо Кардано, имя которого дошло до нас благодаря изобретенному им шарнирному механизму и первой публикации о методе решения уравнений третьей степени, состоял у них на службе. Его перу принадлежит несколько книг по криптографии и описание метода трафаретов, который будет рассмотрен ниже. Если учесть род занятий Кардано, становится понятным, почему, выведя гороскоп Христа, он остался недоступным инквизиции, сжегшей Бруно и судившей Галилея за куда меньшую ересь: эка, невидаль, что Земля вертится! Жизнь и смерть Джироламо полны легенд. Больше всего современников в Кардано поражал дар предвидения, благодаря которому он безмятежно перенес казнь своего сына и потерю крупного состояния. Вероятно, хотя бы отчасти его мистический талант знать будущее объясняется принадлежностью к криптографической службе, знающей все, что можно узнать. Но вот, предсказав продолжительность своей жизни в 75 лет, он в назначенный год покончил самоубийством, оставив записку: "Если и неверно, то неплохо придумано". Увлечение теорией магических квадратов привело Кардано к открытию нового класса шифров перестановок, названных решетками или трафаретами. Они представляют собой квадратные таблицы, где четверть ячеек прорезана так, что при четырех поворотах они покрывают весь квадрат. Вписывание в прорезанные ячейки текста и повороты решетки продолжаются до тех пор, пока весь квадрат не будет заполнен. Например, на рисунке ниже показан процесс шифровки решеткой 4 х 4. Черными квадратами обозначены непрорезанные ячейки, а повороты осуществляются по часовой стрелке на указанный ниже угол:

**П* З*** *** *Т** ЗТП

***Р *Ж** **Ш* О*** ОЖШР *И** ***А Е*** **Г* ЕИГА

Е*** **Ю* *C** ***О ЕСЮО

0' 90' 180' 270' шифp

В результате получается шифровка ЗТП ОЖШРЕИГАЕСЮО. Число подобных решеток быстро растет с их размером. Так, решетка 2 х 2 единственна, решеток 4 х 4 уже 256, а решеток размером 6 х 6 свыше ста тысяч. Несмотря на кажущуюся сложность, шифры типа решеток довольно просто вскрываются и не могут использоваться в виде самостоятельного шифра. Однако они очень удобны и еще долго использовались в практике для усиления шифров замены. Один мой знакомый, остановившись при чтении рукописи книги на этом месте, попытался высказать сомнение в том, что шифры подобного рода легко вскрываются. Поскольку это глубоко ошибочное и обидное для криптологов мнение широко распространилось из популярных математических книг или иных источников дезинформации, то в следующей главе специально приведен пример вскрытия шифровки, сделанной этой решеткой.

В Англии XVII века возглавлял криптографическую службу математик Джон Валлис, основавший исчисление бесконечно малых, но получивший научное признание и профессуру в Оксфорде не за химерические бесконечно малые, а за редкостные успехи в расшифровке. В Германии же лучшим криптографом тогда был Лейбниц, основатель Берлинской академии наук, языковед и математик, один из создателей дифференциального исчисления, к имени которого мы еще вернемся позже в связи с развитием криптографии в России. Одно время его высокий покровитель, ганноверский курфюрст Георг1, став королем Англии, хотел пригласить Лейбница на британскую криптографическую службу, но Валлис был там незаменим и утечка континентальных "мозгов" на запад не состоялась. Лейбницу не подфартило стать главным криптографом Англии может быть и потому, что Ньютон, оспаривающий его авторство в дифференциальном исчислении, единолично заправлял в Королевском научном обществе и изо всех сил преследовал менее именитого иностранного конкурента. Другой раз Лейбницу не повезло с приглашением в Петербург для организации русской криптографической службы. Неожиданная его болезнь и смерть расстроили планы Петра 1, активно вербовавшего нужных России ученых. Человеком, сумевшим завершить развитие криптографии в отдельную научную дисциплину, стал, по-видимому, однофамилец Роджера Бэкона - Френсис Бэкон. Будучи лорд-канцлером, при короле Якове 1, он хорошо знал потребности государства в надежных шифрах, и его первая талантливая работа, относящаяся к 1580 году, в дальнейшем получила блестящее практическое развитие. В частности, именно он впервые предложил двоичное кодирование букв латинского алфавита - то же самое, которое используется сейчас в компьютерах.

Такой заботливый уход за пустившей первые ростки криптографией привел к тому, что она скоро стала давать плоды. Разгром Великой Армады в 1588 году в значительной степени был обусловлен мощью английской криптографической школы, легко ломавшей испанские шифры и сообщавшей о всех передвижениях неприятельских судов. Криптография была известна и применялась во многих слоях общества Британии. Лондонец Самуэль Пепис (1633-1703) всемирно известен своим дневником, по которому историки пишут труды о переходе от Пуританства к Реставрации. Искусствоведы включили это произведение в мировую сокровищницу литературы. Пепис окончил Кембридж благодаря кузену отца - адмиралу Монтегю и имел много друзей: ученого Исаака Ньютона, архитектора Кристофера Рена, поэта и драматурга Джона Драйдена. Пепис был лично свидетелем таких незабываемых для Англии событий, как возвращение короля Чарльза II в Англию, большая чума 1664 года, пожар Лондона 1666 года, революция 1688 года. Интересно, что его мемуары были зашифрованы по системе криптолога Томаса Шелтона и дополнительно собственным шифром Пеписа, поскольку содержали много скандальных фактов о великих современниках. Вместе с его личными книгами и бумагами дневник после смерти писателя попал в Кембридж, где сразу же привлек внимание исследователей. Первый успех в его расшифровке был получен лишь в 1822 году, а полностью она завершена в 1899 году. Таким образом, к XVIII веку криптография окончательно сложилась в виде самостоятельной науки. Однако, несмотря на наличие профессиональных криптологов, находящихся на государственной службе, и постоянного использования шифров в дипломатии и военном деле, криптология еще не вышла из младенческого возраста и ею могли заниматься лишь избранные, одаренные одиночки.

Криптология в Новое время

Новое время привнесло новые достижения в криптографию. Постоянно расширяющееся применение шифров выдвинуло новое требование к ним - легкость массового использования, а старое требование - устойчивость к взлому не только осталось, но и было усилено. Поэтому 1854 год, когда англичанин Чарльз Уитстон разработал новую шифровку биграммами, которую называют двойной квадрат, открыл новый этап в криптографии. Название шифр получил по аналогии с полибианским квадратом. В отличие от полибиаиского, двойной квадрат использует сразу две таблицы, расположенные по горизонтали, а шифрование идет биграммами, как в шифре Playfair. Эти, казалось бы и не столь уж значительные изменения привели к появлению на свет новой криптографической системы ручного шифрования. Она оказалась так надежна и удобна, что применялась немцами даже в годы Второй мировой войны. По отзыву ее создателя, шифрование двойным квадратом предельно просто и его "можно доверить даже дипломатам". Приведем пример использования шифра двойной квадрат для русских текстов. Имеются две таблицы со случайно расположенными в них алфавитами:

Ч В Ы П

О К : Д У

Г Ш 3 Э Ф

Л Ъ Х А ,

Ю Р Ж Щ Н

Ц Б И Т Ь

. С Я М Е

Е Л Ц : П

. Х Ъ А Н

Ш Д Э К С

Ы Б Ф У

Я Т И Ч Г

М О , Ж Ь

В Щ 3 Ю Р

Для шифрования сообщение разбивают на биграммы. Первая буква биграммы находится в левой таблице, а вторая в правой. Затем, мысленно в таблице строится прямоугольник так, чтобы буквы биграммы лежали в его противоположных вершинах. Другие две вершины этого прямоугольника дают буквы шифровки. Предположим, что шифруется биграмма текста ОЖ. Буква О находится в колонке 1 строки 2 левой таблицы. Буква Ж находится в колонке 4 строки 6 правой таблицы. Значит, прямоугольник образован строками 2 и 6, а также колонками 1 левой и 4 правой таблиц. Следовательно, шифровке соответствуют буквы, лежащие в колонке 1 строки 6 левой таблицы Ц и в колонке 4 строки 2 правой таблицы А - биграмма АЦ. Так парами букв шифруется все сообщение:

Сообщение: ПР ИЕ ЗЖ АЮ Ш ЕС ТО ГО

Шифровка : ПЕ МБ КИ ФМ ЕШ РФ ЖБ ДЦ ЩП

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

Во второй половине XIX века появляется множество работ по вскрытию сложных шифров замены для конкретных условий, при использовании повторяющегося короткого ключа, при шифровке нескольких сообщений одним ключом. Тогда же в Англии и США стали выходить периодические издания, посвященные вопросам криптоанализа, где профессионалы и любители, обмениваясь опытом, предлагали новые типы шифров и анализировали их стойкость к взлому. Возможно, одного из самых больших успехов XX века криптоаналитика добилась, когда Британская морская разведка в начале 1917 года передала правительству США текст секретной расшифрованной телеграммы (телеграмма была перехвачена с трансатлантического кабеля.) , известной как послание Циммермана, бывшего министром иностранных дел Германии. В ней немецкому послу в Мексике предлагалось заключить союз, чтобы Мексика захватила американские штаты Техас, Нью-Мехико и Аризону. Эта телеграмма, произвела эффект взрыва и, считают сейчас историки, стала главным поводом для вступления США в Первую мировую войну против Германии, обеспечив ее разгром. Так криптография впервые серьезно заявила о своей исключительно большой значимости в современном мире.

XIX век с расширением связных коммуникаций занялся автоматизацией процесса шифрования. Появился телеграф, нужно шифровать и его. Любопытно, что цифровое шифрующее колесо было изобретено госсекретарем Томасом Джефферсоном в 1790 году, ставшим потом третьим президентом США. Похожие шифрующие устройства применялись армией США и после Второй мировой войны. Принцип работы таких машин, очень похожих на арифмометры, заключается в многоалфавитной замене текста сообщения по длинному ключу. Длина периода ключа определялась наименьшим общим кратным периодов оборотов шифрующих колес. При 4 колесах и периодах их оборотов 13, 15, 17 и 19 получалась большая длина периода ключа 62985, очень затрудняющая расшифровку коротких сообщений. Гораздо более примитивный прибор, цилиндр Базери, был предложен Этьеном Базери в 1891 году. Он состоял из 20 дисков со случайно нанесенным по ободу алфавитом. Перед началом шифрования диски помешались на общую ось в порядке, определяемым ключом. Набрав первые 20 букв текста в ряд на цилиндрах их поворачивали вместе и считывали в другом ряду шифрованное сообщение. Процесс повторялся, пока все сообщение не было зашифровано. Однако первая практически используемая криптографическая машина была предложена Жильбером Вернамом лишь в 1917 году. Применение машин в криптографии расширялось, что привело к созданию частных фирм, занимающихся их серийным выпуском. Шифровальная аппаратура создавалась в Германии, Японии, США и ряде других развитых стран. Предшественницей современных криптографических машин была роторная машина, изобретенная Эдвардом Хеберном в 1917 году и названная впоследствии Энигмой (Слово enigma переводится как загадка, Промышленные образцы этой машины изготовляла фирма Siemens.). Независимая промышленная ее версия создана чуть позже берлинским инженером Артуром Кирхом (некоторые источники называют его Артуром Шербиусом). Она сначала Представляла собой 4 вращающихся на одной оси барабана, обеспечивающих более миллиона вариантов шифра простой замены, определяемого текущим положением барабанов. На каждой стороне барабана по окружности располагалось 25 электрических контактов, столько же, сколько букв в алфавите. Контакты с обеих сторон барабана соединялись попарно случайным образом 25 проводами, формировавшими замену символов. Колеса складывались вместе и их контакты, касаясь друг друга, обеспечивали прохождение электрических импульсов сквозь весь пакет колес. Перед началом работы барабаны поворачивались так, чтобы устанавливалось заданное кодовое слово - ключ, а при нажатии клавиши и кодировании очередного символа правый барабан поворачивался на один шаг. После того, как он делал оборот, на один шаг поворачивался следующий барабан - будто бы в счетчике электроэнергии. Таким образом, получался ключ заведомо гораздо более длинный, чем текст сообщения.

Например, в первом правом барабане провод от контакта, соответствующего букве U, присоединен к контакту буквы F на другой его стороне. Если же барабан поворачивался на один шаг, то этот же провод соответствовал замене следующей за U буквы V на следующую за F букву G. Так как барабаны соприкасались контактами, то электрический импульс от нажатой клавиши с буквой исходного текста, прежде чем достигал выхода претерпевал 4 замены: по одной в каждом барабане. Для затруднения расшифрования барабаны день ото дня переставлялись местами или менялись. Дальнейшее усовершенствование этой машины сделало движение барабанов хаотичным, а число их увеличилось сначала до 5, а потом до 6. Все устройство могло поместиться в портфеле и было так просто, что обслуживалось обычными связистами.

Казалось бы, сделано все для невозможности вскрытия шифровок Энигмы. И все же английские криптографические службы в Блетчли Парке (уединенное поместье в 80 километрах севернее Лондона, отведенное британским криптологам.) почти всю войну читали немецкие шифры. Это стало возможным лишь благодаря польской разведке, которая к злополучному 1939 году смогла получить чертежи Энигмы и разобраться в ее устройстве. После нападения гитлеровцев на Польшу чертежи немецкой шифровальной машины были переданы Англии. Довольно быстро британские криптоаналитики установили, что для взлома шифра, нужно знать распайку проводов в шифрующих колесах. Началась охота британских спецслужб за образцами Энигмы. Первый удалось выкрасть прямо с завода на юго-востоке Германии, второй сняли со сбитого в небе Норвегии немецкого бомбардировщика, третий был найден во время боев за Францию у немецких военных связистов, взятых в плен. Остальные Энигмы сняты водолазами с немецких подводных лодок, за которыми специально стали охотиться и топить на малых глубинах. Взлом шифров Энигмы шел тяжело до тех пор, пока в 1942 году не вступили в строй несколько ЭВМ, специально созданных для этого Аланом Тьюрингом. Это была первая в мире довольно быстродействующая ЭВМ под названием "Колосс", специализированная для взлома шифров. После этого английские криптоаналитики могли меньше чем за день могли расколоть любую шифровку Энигмы, полученную добытыми ранее колесами, методично перебирая все возможные ключи. Немцы рассчитывали на сложность своего шифра, исходя из его ручной дешифровки, в то время как англичане стали его ломать, используя ЭВМ. Отметим, что сами немцы допускали возможность взлома шифра Энигмы. Еще в 1930 году ведущий немецкий криптоаналитик Георг Шредер продемонстрировал такую возможность, едко заметив при этом: "Энигма - дерьмо!" Однако она постоянно усложнялась и были периоды, когда в Блетчли Парке с ней не могли справиться. Перед шифровками Энигмы, которые исходили не от войск, а из немецких криптографических центров, "Колосс" тоже был бессилен.

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

Шифр Цезаря

Гай Юлий Цезарь, римский император, в то же время, известен как изобретатель (не могу сказать "разработчик") своего шифра, поручавшего Марку Туллию Цицерону и своим близким шифровать послания и использовать 50-буквенный алфавит.

Цитирую Гая Светония: "Существуют и его письма к Цицерону и письма к близким о домашних делах: в них, если нужно было сообщить что-нибудь негласно, он пользовался тайнописью, то есть менял буквы так, чтобы из них не складывалось ни одного слова. Чтобы разобрать и прочитать их, нужно читать всякий раз четвертую букву вместо первой, например, D вместо А и так далее".

Выражаясь современной терминологией, номер каждого символа при шифровании увеличивался на 3: А на D, B на E и т.д. Знаменитая фраза Цезаря VENI VIDI VICI (пришел, увидел, победил), посланная сенату после однодневной войны с Фарнаком, царем Понта, после зашифровки превратилось бы в SBKF SFAF SFZF. Для уточнения стоит отметить, что Гай Светоний ошибался, давая этому методу название тайнописи. Тайнопись - это сокрытие самого факта передачи сообщения, изложенное Светонием называется, в современной терминологии, шифром однозначной замены.

Криптоалгоритм будет реализован на ASCII-таблице. Для корректной реализации шифра еще потребуется нормализация, проводимая для того, чтобы множества совпадали и, естественно, размеры множеств открытого и шифротекста были равны (т.н. гомоморфизм). Для этого делается следующее: если сумма текущего номера и тройки выходит за пределы алфавита (размера множества разрешенных символов), то отсчет букв начинается сначала.

Программный код для шифрования текстовых сообщений по принципу «шифра Цезаря» на языке программирования Visual Basic

Пусть kk = 3 икодируемойфразойбудет «i remember that September». Будем использовать латинские буквы со стандартным следованием букв в алфавите. Результаты шифрования указанной выше фразы показаны ниже в таблице:

 

1

i

 

r

e

m

e

m

b

e

r

 

t

h

a

t

 

s

e

p

t

e

m

b

e

r

2

9

0

18

5

13

5

13

2

5

18

0

20

8

1

20

0

19

5

16

20

5

13

2

5

18

3

12

3

21

8

16

8

16

5

8

21

3

23

11

4

23

3

22

8

19

23

8

16

5

8

21

4

l

c

u

h

p

h

p

e

h

u

c

w

k

d

w

c

v

h

s

w

h

p

e

h

u

 

Пояснения к таблице:

1-я строка – фраза для шифрования;

2-я строка – номера букв фразы для шифрования в латинском алфавите;

3-я строка – номера букв фразы для шифрования, увеличенные на 3;

4-я строка – зашифрованная фраза.

Спроектируем форму Form1, так чтобы было можно выполнять как кодирование, так и декодирование введенной фразы, рис. 1.

Рис. 1.                                                            

Рис. 2.

Подготовим программный код задачи кодирования по «Цезарю», так чтобы при шифровании пользователь мог выбирать величину сдвига kk.

 

Private Sub Command1_Click()

Dim a(27) As String * 1

Dim s$, t$, r$

Dim kk, m, l, i, j As Integer

kk = Text1.Text

s$ = Text2.Text

m = Len(s$)

kk = kk Mod 27

a(0) = " " : a(1) = "a" : a(2) = "b" : a(3) = "c" : a(4) = "d" : a(5) = "e" : a(6) = "f" : a(7) = "g"

a(8) = "h" : a(9) = "i" : a(10) = "j" : a(11) = "k" : a(12) = "l" : a(13) = "m" : a(14) = "n"

a(15) = "o" : a(16) = "p" : a(17) = "q" : a(18) = "r" : a(19) = "s" : a(20) = "t" : a(21) = "u"

a(22) = "v" : a(23) = "w" :a(24) = "x" : a(25) = "y" : a(26) = "z" : a(27) = " "

Rem Кодирование фразы

If Check1.Value = 1 Then

Check1.Caption = "Кодирование"

For i = 1 To m

t$ = Mid(s$, i, 1)

For j = 1 To 27

If (t$ = a(j)) Then l = j

Next j

l = l + kk

l = l Mod 27

r$ = r$ & a(l)

Next i

Text3.Text = r$

End If

 

Rem Декодирование шифровки

If Check1.Value = 0 Then

Check1.Caption = "Декодирование"

For i = 1 To m

t$ = Mid(s$, i, 1)

For j = 1 To 27

If (t$ = a(j)) Then l = j

Next j

l = l - kk

If l <= 0 Then l = l + 27

r$ = r$ & a(l)

Next i

Text3.Text = r$

End If

End Sub

Private Sub Command2_Click()

End

End Sub

 

Запустим программу на выполнение. Наберем число 3 в текстовом окне «Введите сдвиг», а в окне «Введите фразу»: i remember that September. Набор проводим строчными буквами, поскольку работа с прописными буквами в программе не предусмотрена. Проверив состояние контрольного индикатора (Кодирование), закодируем набранную фразу, щелкнув по кнопке «Обработать фразу». Результатом кодирования будет lcuhphpehucwkdwcvhswhpehu, рис. 2. Можно убедиться, что он совпадает с «найденным теоретически».

Декодируем полученную шифровку. Для этого перенесем зашифрованную фразу lcuhphpehucwkdwcvhswhpehu из окна «Результат» в окно «Введите фразу» и изменим состояние контрольного индикатора (уберем флажок). Снова щелкнем по кнопке «Обработать фразу» и в окне «Результат» появится исходная фраза i remember that September, рис. 3.

Теперь можно зашифровать ту же фразу для другого значения сдвига, пусть например kk = 5. Результат кодирования представлен на рис. 4.

 

     

Рис. 3.                                                               

Рис. 4.

 

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

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

Список использованной литературы:

  1. Ж . Брассар «Современная криптология», изд. «Полимед», 1999г.

  2. Библия , изд. «Московская патриархия», 1998 г.

  3. Учебник по программированию «Visual basic 6.0», изд. «Эком», 2002г.

  4. Н. Г. Волчёнков программирование на «Visual basic 6.0», изд. Инфра-м, 2002 г.

nreferat.ru


Смотрите также

 

..:::Новинки:::..

Windows Commander 5.11 Свежая версия.

Новая версия
IrfanView 3.75 (рус)

Обновление текстового редактора TextEd, уже 1.75a

System mechanic 3.7f
Новая версия

Обновление плагинов для WC, смотрим :-)

Весь Winamp
Посетите новый сайт.

WinRaR 3.00
Релиз уже здесь

PowerDesk 4.0 free
Просто - напросто сильный upgrade проводника.

..:::Счетчики:::..

 

     

 

 

.