Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Кpиптогpафия от папиpуса до компьютеpа 7 страница



что случилось бы при отсутствии избыточности. Заметьте, у

компьютера наиболее часто встречаемые символы ETOANIRSHDLU (даны

в порядке убывания частот в английском языке) вынесены в центр

клавиатуры, чтобы при наборе текстов движение пальцев было бы

минимальным. Это расположение клавиш было предложено

изобретателем линотипа Оттомаром Мергенталером, который

использовал избыточность языка для облегчения работы.

Утверждение, что вероятность появления символа в связном

тексте не зависит от его предыстории, неверно и статистически, и

лингвистически. Уже давно литераторы заметили, что обычно за

согласной буквой следует гласная, а за гласной согласная. Поэтому

в конце XIX века петербургский математик Марков предложил текст

рассматривать как цепочку символов, где вероятность появления

буквы зависит от предыдущей и только от нее. Таким образом, он

стал рассматривать не вероятности Pj появления в сообщении знака

i, а вероятности Pij появления знака j при условии, что перед ним

стоит знак i. Теория марковских цепей оказалась чрезвычайно

продуктивной для криптографии, и к отдельным ее применениям мы

будем возвращаться позже. Пока же достаточно отметить, что первое

свое опробование она имела при анализе текстов "Евгения Онегина"

самим Андреем Андреевичем Марковым. Объем информации в одном

символе марковской цепи определяется следующей формулой:

 

H= См. Pi(См. Pij*Ld(Pij))

 

В этом случае нет противоречия с требованием независимости

знаков, так как знаком здесь считается не отдельный символ, а

биграмма. В приложении приведена таблица вероятности встречи

биграмм в русском техническом тексте по программированию.

Вероятности их представлены десятью классами от 0 до 9 в порядке

возрастания и образуют по средним значениям геометрическую

прогрессию. Справа в этой таблице даны вероятности встречи

отдельных символов. Так, из нее следует, что биграмма АЙ

встречается довольно часто (класс 7), а биграмма ЙА почти совсем

не попадается (класс 0). Среднее количество информации,

приходящееся на один символ, определяемое по этой таблице равно

3.5 бит, что эквивалентно примерно II буквам в русском алфавите

или возможности сжатия текстов примерно на 57% при их оптимальном

кодировании.

 

Описанное свойство зависимости буквы в тексте от предыдущей

называется марковостью первого порядка, а независимость букв друг



от друга марковостью нулевого порядка. Естественно, что можно

рассматривать также и марковости высших порядков, например

второго, когда буква зависит от двух предыдущих. Для того, чтобы

оценить порядок марковости в связном тексте, проведем случайное

моделирование, используя сначала вероятности отдельных букв,

потом биграмм, триграмм и так далее. Примеры марковского синтеза

текстов разных порядков марковости от 0 до 4 приведены в

следующей таблице:

 

0 ПАВЛНТ И ОАБУТ ЕИИЕТК ЖМЕ КСВИДАИВ

1 МОЙ ОГЛЬ ТАМАНУ ЧТЕТОГАНЕ СТА СЛИНА

2 КРУЖБЫ И ОТЧАЕТОНЕИСТАК ПЕХ ЭТОГО 3

3 В ДЕПАРЫ ЧТО НАСТЯМИ РАСПРОИСХОДИН

4 ПОНЯЛ О ГЛУБОКОЙ СИСТЕМ И ДЕЛЕ ВОДЫ

 

Из нее видно, что увеличение порядка марковости повышает

схожесть отрывка случайного текста с естественным. Повышение

порядка марковости позволяет доуточнить объем информации в

сообщениях, но это очень скользкая тема есть масса разных точек

зрения на нее. Действительно, вводя понятие шенноновской

информации, мы похоронили понятие смысла, который связывает

символы в слога, слога в слова, слова в предложения, а

предложения в сообщение. Практически нет разницы, как сказать

ребенку: "Нужно есть кашу!" или "Надо есть кашу!", а вот

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

оценка объема информации, содержащейся в сообщении и полученной

по приведенным формулам, явно завышена. А ведь в жизни нередко

бывает, что за целый день так и не узнаешь ничего нового!

Теперь рассмотрим одно приложение знаний свойств

естественного текста сообщения для нужд криптографии. Требуется

по отрезку текста решить, что он из себя представляет,

осмысленное сообщение или последовательность случайных символов.

Ряд шифров приходится на ЭВМ вскрывать перебором ключей, а

вручную просмотреть свыше тысячи фрагментов вдень просто не под

силу, да и скорость мала. Поэтому нужно эту задачу реализовать на

ЭВМ. Пусть предстоит перебрать примерно миллиард ключей на машине

со скоростью тысяча ключей в секунду, на что уйдет около 10 дней.

В этом случае мы рискуем впасть в две крайности. Если будем

чрезмерно осторожны в оценках, то часть несмысловых текстов будет

воспринята как сообщения и передана человеку. Эта ошибка обычно

называется "ложная тревога" или ошибка первого рода. При

количестве таких ошибок свыше 1000 в день человек устанет и может

начать проверять тексты невнимательно. Значит, допускается не

более одной ошибки такого рода на сто тысяч проверок. Далее, если

подойти к проверке поверхностно, то можно пропустить смысловой

текст и по окончании полного перебора его опять придется

повторить. Чтобы не рисковать необходимостью повторения всей

работы, ошибки второго рода или "пропуски сообщения" допустимы

лишь одном случае из ста или тысячи.

Самый простой критерий, который приходит в голову, связан с

использованием алфавита сообщения. Если учитывать, что в нем

могут встретиться лишь знаки препинания, цифры, заглавные и малые

русские буквы, то в тексте сообщения встретится не больше

половины набора кодовой таблицы ASCII. Следовательно, встретив в

тексте недопустимый символ можно уверенно говорить о том, что он

несмысловой - ошибки второго рода почти исключены при нормально

работающем канале связи. Для того, чтобы снизить вероятность

"ложных тревог" до принятой выше величины, требуется, чтобы текст

состоял не менее чем из двадцати трех символов. Дело усложняется,

если используемый код букв не избыточен, как представление в

ASCII русского текста, а содержит ровно столько символов, сколько

их в алфавите. Тогда приходится вести оценку по вероятностям

встречи символов. Чтобы обеспечить принятые вероятности ошибок

первого и второго рода при оценке максимального правдоподобия,

необходимо анализировать уже около сотни символов, а анализ

вероятностей биграмм лишь несколько снижает эту величину. Таким

образом, короткие сообщения при большой длине ключа вообще

невозможно расшифровать однозначно, так как появляющиеся

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

Аналогичную задачу приходится решать и при контроле качества

шифрования. В этом случае, правда, вероятность ложной тревоги

можно повысить, приняв ее не свыше одной тысячной, при той же

самой вероятности пропуска сообщения. А это позволит ограничиться

для проверки лишь 20-30 символами.

 

Испытания шифров

 

Начинают взлом шифров обыкновенно со статистических испытаний

текста шифровки, что дает общие данные об их стойкости на

начальном этапе анализа. Так как цель криптографии состоит в том,

чтобы преобразовать открытый текст в шифровку, смысл которой

недоступен незаконному получателю информации, то можно в идеале

представить шифровальную систему, как "черный ящик", вход и выход

которого взаимонезависимы, так как для установления ключа,

согласующего входной текст с шифром, потребуется перебор всех

допустимых вариантов. Если пространство поиска ключа очень велико

и невозможно с помощью имеющихся вычислительных средств проверить

каждый ключ за ограниченное разумное время, то шифр является

вычислительно безопасным. Надлежит сделать следующие важные

замечания.

 

1. Текст и шифр лишь кажутся независимыми, по-

тому что имеются детерминированные алгорит-

мы, отображающие их друг в друге - шифрова-

ния и расшифрования. Однако, предположив

независимость текста и его шифровки, пытаются

ее опровергнуть, беря пары выборок {текст,

шифр} и вычисляя их статистику. Так можно

заменить криптографическую стойкость шифра

на статистическую безопасность и считать, что

шифр статистически безопасен, если пары вы-

борок {текст, шифр} статистически независимы.

Одно из испытаний заключается в установлении

статистической связи изменения шифровки при

изменении символов и бит в исходном тексте

или ключе. Это испытание дает меру "эффекта

размножения" ошибок в шифре, который счита-

ется хорошим лишь в том случае, если малей-

шие изменения исходного текста или ключа вле-

кут большие изменения шифровки. Смысл такого

рода тестов состоит в том, что безопасная система

обязательно безопасна и статистически.

 

2. Статистические испытания являются единствен-

ной стратегией испытаний больших криптогра-

фических систем с секретным ключом, постро-

енных в виде чередующихся слоев блоков заме-

ны и перестановок, как блоки вносящие нели-

нейность в системах Lucifer и DES. Это объяс-

няется трудностью составления уравнений, свя-

зывающих вход и выход системы, которые мож-

но было бы решать другими методами. В крип-

тографических системах, не имеющих таких бло-

ков, например, в системах RSA и ЭльГамаля,

уравнения, связывающие вход и выход, являют-

ся частью самой криптографической системы,

поэтому легче сосредоточить внимание на ана-

лизе этих уравнений.

 

3. Статистические проверки являются, пожалуй,

единственным общим и быстрым методом выяв-

ления плохих шифров. Вместо того, чтобы тра-

тить много времени на их аналитическую про-

верку, чтобы в конце концов убедиться в том,

что они не стойкие криптографически, с помо-

щью статистики можно быстро определить, за-

служивает ли эта система дальнейшей проверки.

Так, алгоритм FEAL-4 был сначала вскрыт

обычным методом криптоанализа, и независимо

от этого было показано, что он является стати-

стически слабым.

 

Важное значение для статистических испытаний имеет

случайность текста шифровки конечной длины. Практическую меру

случайности такой последовательности ввели Лемпел и Зив, авторы

общеупотребимого алгоритма сжатия данных, применяемого во всех

архиваторах IBM PC. Она указывает, на сколько можно сжать

последовательность при использовании алгоритма Лемпела-Зива.

Практически, если текст шифровки сжимается одним из архиваторов

больше, чем на 10%, то шифровальная система очевидно не

состоятельна. Если сжатие шифра оказалось меньше этой величины,

то... все может быть. Отметим, что алгоритмам архивирования

удается сжимать даже случайные последовательности символов, хотя

сжатие в этом случае не превышает единиц процентов. Столь

пространное описание статистического подхода к криптоанализу дано

потому, что в этой главе ему будет уделено мало внимания, а

вскрытие шифров будет показано лишь с точки зрения аналитического

подхода. Итак, рассмотрим наиболее употребительные виды атак на

некоторые известные уже шифры.

 

Вскрытие шифров перестановки

 

Сначала возьмем тот пример шифровки двойной перестановки, что

изложен выше. Пусть имеется шифровка АЗЮЖЕ СШГГООИПЕР, которая

так укладывается в таблицу 4 х 4:

 

1 2 3 4

1 A З Ю Ж

2 E С Ш

3 Г T О О

4 И П E P

 

Рассматривая маловероятные сочетания букв, легко найти

истинную последовательность столбцов. Так, сочетание ГТ в 3

строке шифровки указывает на то, что после 1 столбца вряд ли

следует 2 столбец. Рассчитаем статистически, какой столбец скорее

всего следует за 1. Для этого воспользуемся таблицей логарифмов

вероятностей биграмм русского текста, приведенной в приложении.

Вероятность следования одного столбца за другим равна

произведению вероятностей биграмм в строках этих столбцов.

Поскольку в таблице даны логарифмы биграмм, то их достаточно

суммировать, а потом выбрать сочетание столбцов с максимальной

вероятностью. Для вероятностей следования за первым столбцом 2, 3

и 4 имеем выражения:

 

р (1-2) =р(A3) р(Е) р(ГТ) р(ИП)=7+9+0+5=21

р (1-3) =р(АЮ) р(ЕС) р(ГО) р(ИЕ)=6+8+8+8=30

р (1-4)=р(АЖ) р(ЕШ) р(ГО) р(ЯР)=7+5+8+7=27

 

В нашем случае наиболее вероятно, что после столбца 1 следует

столбец 3. Для такой небольшой таблицы шифрования, которую имеем,

можно перебрать все варианты перестановок - их всего лишь 24. В

случае большого числа столбцов целесообразно оценить вероятности

пар сочетаний разных столбцов и решить оптимизационную задачу,

которая укажет перестановку столбцов, дающую фрагменты

естественного текста с большей вероятностью. В нашем случае

наилучший результат достигается при расстановке столбцов (2413),

что примерно вдвое по вероятностной оценке достовернее ближайшей

к ней по вероятности расстановки (4132). После того, как столбцы

шифровки расставлены, не составит труда правильно расставить и ее

строки по смыслу фрагментов текста:

 

2 4 1 3

1 З Ж A Ю

2 Ш E С

3 T О Г О

4 П P И E

 

Текст в ней уже читается и, расставив строки в порядке

(4123), получим расшифровку ПРИЕЗЖАЮ ШЕСТОГО.

 

Теперь обратимся к приведенному выше примеру шифра решетки:

 

3 Т П

О Ж Ш Р

Е И Г А

Е С Ю О

 

Неужели его так трудно взломать, как это утверждают некоторые

авторы математических изданий? В этой шифровке видимо содержится

2 слова, если учитывать, что она длиной 16 букв, а одно слово

русского языка содержит в среднем 7 букв и имеется пробел.

Расшифровку проще начать с биграммы СТ.

 

Предположение 1. Предположим, что наиболее частая биграмма в

русском языке СТ входит в одно из слов текста. Так как Т

расположена в решетке выше С, это значит, что между ними

произошел поворот решетки таким образом:

 

**** *Т**

**** ****

**** ****

*С** ****

 

0' 90'

 

С учетом того, что эти буквы принадлежат различным прорезям

решетки, получаем такой вид разгаданных частей таблиц:

 

**?? *Т** **П*??** **??

**?? О*** ***Р??** **??

Е*** **????** ***А ***

*С** **????** **Ю* * **

 

0' 90' 180' 270'

 

Проверим правильность этого предположения чтением, заменяя

еще не ясные буквы точками:..ЕСТО..ПР....АЮ. Это очень похоже на

фрагменты текста. Пометив в решетке клетку буквы С цифрой 1,

обозначим с учетом поворота клетку буквы Т цифрой 2.

 

Предположение 2. При составлении решеток прорези обычно

размещают так, чтобы их было по одной в каждой колонке и каждом

столбце, что гарантирует хаотичное и равномерное заполнение

квадрата буквами. В этом случае имеется всего два варианта: 1234

и 123'4', изображенных на следующем макете решетки:

 

* * 3' 4

* * 3 4'

2 * * *

* 1 * *

 

Второй вариант 123'4' не подходит, так как не покрывает весь

квадрат при поворотах, и остается 1234, что дает ШЕСТОГОПРИЕЗЖАЮ.

Сообщение уже ясно, хотя расшифровка начата с неправильного

поворота решетки. С учетом этого замечания получим сообщение:

ПРИЕЗЖАЮ ШЕСТОГО.

Реальные шифры этого типа вскрываются еще проще. При

поворотах происходят заметные смещения решетки по месту, которые

весьма помогают при анализе выделить буквы, относящиеся к одному

повороту. Выделив буквы, смещенные в одном направлении, получают

прорезанные клетки трафарета. Если же текст сообщения имеет

достаточно большую длину, то задача вскрытия шифра решетки резко

упрощается из-за этой особенности. Использование ЭВМ для

реконструкции решетки по вероятностям чередования букв в тексте

позволяет полностью автоматизировать этот увлекательный процесс

логического анализа. Однако наилучшая атака на этот шифр

получается, если отгадывать вероятное слово текста, как ПРИБУДУ,

ПРИЕДУ, ПРИБЫВАЮ, ПРИЛЕТАЮ, ПРИЛЕЧУ и тому подобное, так как

обычно лексика сообщения примерно известна.

 

Вскрытие шифра простой замены

 

Разберем пример В. Никонова, опубликованный в журнале 9

"Наука и жизнь" за 1981 год, заменив использованные автором

графические символы шифровки на привычные русские буквы. Итак, на

доске объявлений некого учреждения, название которого популярный

журнал не сообщил, появилась следующая надпись:

 

ТБПО ЩИЧЧЖ ЛНИЬЕЭФЭЕЭВЬ ЭКМНИО ИЩЩСКИЬОЭ

СФБИТЬЛИЬШ ТБПОЧЩЬП ЛНОЭЧЖ Ь ЧЛЭПЛКПЕПООЭ

ЛЭНЛКИВИЫП ФЭБСТПООЖП ЬН ЩИЧЧЖ ЧЧСУЖ

 

Несомненно, что это шифр. Каков же его тип? Это не может быть

шифр перестановки, так как в шифровке четко проглядываются слова

с регулярными окончаниями чж, иыи, оэ. Частоты встречи различных

знаков шифровки явно неодинаковы. Знаки ч, и, э встречаются раз

по десять, тогда как У, Ю и М лишь по одному разу, что не бывает

в многоалфавитных шифрах, имеющих близкие вероятности знаков.

Естественно предположить, что применен шифр простой замены.

Читатели помнят, как герой рассказа Эдгара По "Золотой жук"

Легран, анализируя записку о кладе, оставленном пиратами,

обнаружил, что в ней наиболее часто, 7 раз, встречалось сочетание

трех символов. Для английского языка это мог быть лишь

определенный артикль THE (Хемингуэй иногда не реже, чем THE,

использовал союз AND, что отвечало литературной задаче описать

монотонность будней). У Лермонтова же наиболее часто используемое

слово очень коротко - Я.

С чего следует начать расшифровывание? Несомненно, с

установления отправителя и получателя сообщения. Вспомним

рассуждения Холмса из "Пляшущих человечков", который сразу же

отождествил смешную надпись с шифровкой. Что в этой надписи могло

напугать героиню, угроза? Представим, что она прочла текст:

"Готовься к смерти". Не правда ли, такое неприятное сообщение

слишком абстрактно, чтобы заставить ужаснуться спокойного

волевого человека: кто должен готовиться и к чьей смерти? Поэтому

решил Холмс, героиню напугало собственное имя и начал расшифровку

отождествлением слова "Илей" с первыми четырьмя человечками.

Зачастую, кроме имени получателя сообщения содержат еще и имя

отправителя, как это принято в телеграммах: "Приезжаю шестого.

Мама." У нашей шифровки была приписка: "Граждане, ознакомившиеся,

запомнившие и исполнившие, принимаются ежедневно и без

ограничений. Местком." Из нее ясен отправитель - местком. Поэтому

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

же должен быть доуточнен, как обращение: "всем садоводам..." или

"члены кружка...". Однако это - слишком легкий путь. и

предположим, что не удалось конкретизировать получателя, чтобы,

используя его имя, вскрыть шифр.

 

Предположение 1. Внимательно просматривая шифровку, можно

обнаружить интересное удвоение знака Ч в конце последнего слова и

начале последнего: щиччх ЧЧСУХ. Кажется, что этот знак весьма

похож на употребление буквы С в русском тексте, как МАССА ССЫЛОК

или ЛАССО ССУЧИЛ. Например, для буквы В не удается подобрать

хороший пример, чтобы она удваивалась в конце слов, а для буквы Н

- в начале. Отметим, что удвоение С в конце характерно для

заимствованных существительных, где перед ним стоит чаще всего

буква А. Значит, буква шифровки Ч соответствует в тексте С, а И

соответствует русской букве А.

 

Предположение 2. Другое удвоение, знака о, встречается только

в конце слов и типично для русской буквы Н. Поэтому сочетания

знаков на концах слов шифровки ОЭ и ооэ, скорее всего отвечают

русским окончаниям в сообщении НО и ННО. Если это так, то

последнее слово шифровки ЧЧСУЖ, начинающееся с СС и состоящее из

пяти букв может быть лишь одним из двух слов - ССУДЕ или ССУДЫ,

что легко проверить по словарю. Другие варианты прочтения ССУДА,

ССОРА и тому подобные отпадают, так как буквы А иО уже разгаданы.

 

Предположение 3. Знак шифровки ж, стоящий в конце слова ЧЧСУЖ

встречается довольно редко, если учесть, что слово щиччж

повторяется, а одинаковое окончание последнего и предпоследнего

слов представляет собой обычное согласование слов в предложении.

Это означает, что знаку ж скорее отвечает буква Ы, чем более

часто встречаемая в русских текстах Е, а последнее слово - ССУДЫ.

Окончание сообщения?АССЫ ССУДЫ теперь нетрудно отгадать как

КАССЫ ССУДЫ, что весьма близко к осмысленному тексту. Из отгадан-

ных букв пятое слово шифровки складывается как АККУ?А?НО, что

несомненно означает АККУРАТНО, а седьмое слово??НОСЫ из

контекста можно понять как ВЗНОСЫ. Итак, отгадывание идет вроде

бы успешно, что подтверждается частичной расшифровкой:

 

???Н КАССЫ ВЗА??0?0?0?? 0??ЗАН АККУРАТ-

НО У??А??ВАТ????НСК?? ВЗНОСЫ?

СВО?ВР???ННО ВОЗВРА?АТ??0?У??ННЫ??3

КАССЫ ССУДЫ

 

Теперь дальнейшая расшифровка не представляет особого труда и

выполняется быстро, угадыванием отдельных слов и подстановкой

выясненных букв в шифровку. В итоге получаем сообщение:

 

ЧЛЕН КАССЫ ВЗАИМОПОМОЩИ ОБЯЗАН

АККУРАТНО УПЛАЧИВАТЬ ЧЛЕНСКИЕ

ВЗНОСЫ И СВОЕВРЕМЕННО ВОЗВРАЩАТЬ

ПОЛУЧЕННЫЕ ИЗ КАССЫ ССУДЫ

 

Приведенный пример расшифровки не претендует на изящество,

поскольку представляет собой реальный протокол рассуждений

криптоаналитика без тупиковых вариантов, и показывает изнутри

процесс вскрытия шифра простой замены. Возникает вопрос:

насколько можно доверять правильности вскрытия этого шифра

простой замены?

 

Лучше всего на него ответить словами Архимеда из послания к

Эратосфену: "Хотя это всем вышеприведенным рассуждением и не

доказано, но все же производит впечатление, что окончательный

вывод верен".

По ряду свидетельств, опытные криптоаналитики читают такие

шифровки "с листа", потратив на это минуту-другую, что

свидетельствует о профессиональном видении структуры текста в

кажущейся мешанине букв. В этом они сильно превосходят ЭВМ,

которая удовлетворительно читает шифр простой замены лишь при

достаточно большой длине сообщения больше сотни символов. Однако

и здесь ЭВМ может серьезно помочь в раскалывании шифра, например,

разделив буквы на гласные и согласные. Так как гласные и

согласные имеют тенденцию чередоваться, то можно по матрице

чередований символов разделить их на эти классы (для этого на ЭВМ

криптоаналитики традиционно используют так называемое сингулярное

разложение матрицы переходных вероятностей.). Кроме того, можно

программно оценить вероятности принадлежности символов шифра

разным буквам выписать их столбцами по убыванию вероятности, что

даст другую технику вскрытия этого шифра. Применение

распознавания, основанного на оценке лишь вероятностей отдельных

символов в тексте и биграмм, за 10 этапов обучения дало по

приведенной шифровке следующий текст:

 

ЧРЕН КАССЫ ВЗАИМОПОМОБИ ОДЯЭАН АККУЛАТНО

УПРАЧИВАТЬ ЧРЕНСКИЕ ВЫНОСЫ И СВОЕВЛЕМЕННО

ВОЗВЛАБАТЬ ПОРУЧЕННЫЕ ИЗ КАССЫ ССУШ

 

Получился довольно хорошо читаемый текст, хотя и за время,

превысившее ручную расшифровку (эксперимент производился в 1991

году на машине IBM PC XT 6 MHz - как это было давно!)

 

После корректировки написания по словарю русского языка в Word

6.0 он приобрел такой вид:

 

ЧЛЕН КАССЫ ВЗАИМОПОМОЩИ ОБЯЗАН АККУРАТНО

УПРОЧИВАТЬ ЧЛЕНСКИЕ ВЫНОСЫ И СВОЕВРЕМЕННО

ВОЗВРАЩАТЬ ПОРУЧЕННЫЕ ИЗ КАССЫ ССУДЫ

 

Машинное вскрытие шифров простой замены вряд ли в близком

будущем потеряет свою актуальность. Криптоаналитики широко им

пользуются, поскольку атаки на сложные шифры заканчиваются обычно

вскрытием шцфра простой замены.

 

Взлом многоалфавитных шифров

 

Шифр Гронсфельда вскрывается довольно легко, если учесть

следующее обстоятельство: так как цифр всего 10, то имеется лишь

10 вариантов прочтения каждой буквы. Выпишем их столбцами так,

что одной строке соответствуют буквы одного значения ключа. Номер

варианта будет определяться цифрой ключа от 0 до 9. При этом

получим таблицу, правильно выбрав по одной букве из каждой

колонки которой можно получить исходный текст:

 

ключ???????????????????

вариант 0 ФПЖИСЬИОССАХИЛФИУСС

вариант 1 УОЕЗРЫЗНРР ФЗКУЗТРР

вариант 2 ТНДЖПЪЖМППЯУЖЙТЖСПП

вариант 3 СМГЕОЩЕЛООЮТЕИСЕРОО

вариант 4 РЛВДНШДКННЭСДЗРДПНН

вариант 5 ПКБГМЧГЙММЬРГЖПГОММ

вариант 6 ОЙАВЛЦВИЛЛЫПВЕОВНЛЛ

вариант 7 НИ БКХБЗККЪОБДНБМКК

вариант 8 МЗЯАЙФАЖЙЙЩНАГМАЛЙЙ

вариант 9 ЛЖЮ ИУ ЕИИШМ ВЛ КИИ

сообщение???????????????????

 

Предположение 1. Если прочесть исходный текст напрямую не

удалось, то попробуем немного порассуждать. Самый частый символ

текста - пробел, а разбиение фразы на слова порой может оказать

большую помощь в расшифровке, как это уже было в случае вскрытия

шифра решетки. Так как длина шифровки равна 19 символам, то она

состоит из двух или трех слов, разделенных пробелами. Хорошее

положение для пробела дает лишь вариант 1, а другие варианты, 7 и

9 или их сочетания маловероятны. Поэтому будем считать, что текст

шифровки разбивается на два слова: ФПХИСЫЮСС ХИЛФИУСС. Из этого

следует, что в 11 позиции текста стоит пробел и в той же позиции

ключа находится цифра 1.

 

Предположение 2. У выделенных слов шифровки одинаковое окончание

ее, и, весьма вероятно, что период ключа делит 9 - длину второго

слова вместе с пробелом. Будем считать, что в этом случае

одинаковые окончания слов (Одинаковые окончания часто появляются

из-за согласования слов в предложениях на русском языке. Это

хорошо видно в поговорках: одИН в поле не воИН, наняЛСЯ -

продаЛСЯ.) текста попали на одинаковые участки ключа и дали

одинаковые символы шифровки. На первый взгляд может показаться,

что это слишком маловероятно, чтобы встречаться в практике.

Однако таких находок, помогающих расшифровке, всегда бывает

предостаточно в сообщениях большой длины и, порой, приходится

жалеть скорее об их обилии, чем отсутствии. Если нет никаких идей

о длине ключа, не беда - ее можно подобрать вслепую. Итак, есть

два выбора для периода ключа: 3 и 9. Попробуем период длины 3:

 

ключ?1??1??1??1??1??1??

вариант 0 Ф ЖИ ЬИ СС ХИ ФИ СС

вариант 1 УОЕЗРЫЗНРР ФЗКУЗТРР

вариант 2 Т ДЖ ЪЖ ПП УЖ ТЖ ПП

вариант 3 С ГЕ ЩЕ ОО ТЕ СЕ ОО

вариант 4 Р БД ШД НН СД РД НН

вариант 5 П БГ ЧГ ММ РГ ПГ ММ

вариант 6 О АВ ЦБ ЛЛ ПВ ОВ ЛЛ

вариант 7 Н Б ХБ КК ОБ НБ КК

вариант 8 М ЯА ФА ЙЙ НА МА ЙЙ

вариант 9 Л Ю У ИИ МЛ ИИ

сообщение?о??р??н????к??т??

 

Таблица существенно поредела, но остается все-таки сложной

для непосредственного прочтения (Криптоаналитики вряд ли сочтут

прямое чтение ее сложным, так как достаточно перебрать лишь 100

вариантов для двух оставшихся цифр ключа вручную за несколько

минут.). Поэтому попробуем подобрать символ ключа, стоящий в

первой позиции, перебрав 10 вариантов. Так как ключ длиной 3

циклически повторяется, то этот же символ стоит в 4, 7, 10, 13,

16 и 19 позициях ключа. Вероятность варианта для первой цифры


Дата добавления: 2015-08-28; просмотров: 21 | Нарушение авторских прав







mybiblioteka.su - 2015-2024 год. (0.084 сек.)







<== предыдущая лекция | следующая лекция ==>