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

adm  •  15 April, 2008

Разберем пример В. Никонова, опубликованный в журнале 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 он приобрел такой вид:

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

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

Комментарии

Автор: tract  •  13 April, 2009  •  10:40:54

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

можно поподробнее узнать про "10 этапов обучения"? Как происходит обучение? Есть ли готовые программы для замены по частотности?

Оставить комментарий


Warning: Parameter 1 to NP_Captcha::event_FormExtra() expected to be a reference, value given in /home/bh52645/public_html/hacktheplanet.ru/nucleus/libs/MANAGER.php on line 370