Книга Зодиак. По следам зла, страница 7 – Андрей Залевский

Авторы: А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ч Ш Ы Э Ю Я
Книги: А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ы Э Ю Я
Бесплатная онлайн библиотека LoveRead.in

Онлайн книга «Зодиак. По следам зла»

📃 Cтраница 7

Криптография по своей сути — это наука о разрушении паттернов. Любой язык имеет свою внутреннюю архитектуру, свой неизменный ритм. В английском языке буква «E» встречается с неотвратимой регулярностью — примерно в 12–13 процентах случаев. Буквы «T», «A», «O» следуют за ней плотной группой. Редкие «Z» или «Q» появляются лишь эпизодически. Этот статистический закон — ахиллесова пята любого простого шифра подстановки. Если убийца заменяет букву «E» на символ треугольника, криптоаналитику достаточно посчитать, какой символ встречается чаще всего, чтобы обрушить всю конструкцию.

Зодиак знал это. Когда в 1969 году школьный учитель Дональд Харден с женой Бетти за выходные вскрыли его первый шифр Z408, использовав банальный частотный анализ, эго маньяка получило болезненный удар. Он понял, что недооценил противника. Поэтому, создавая Z340, он решил применить гомофоническую подстановку.

Суть этого метода изящна в своей параноидальной хитрости. Чтобы скрыть частотность буквы «E», создатель шифра назначает ей не один символ, а, скажем, семь разных. Букве «A» — пять символов. Букве «T» — шесть. В результате гистограмма текста становится плоской. Редкие и частые буквы сливаются в единую серую массу. Статистика слепнет. Треугольник, крест и заштрихованный круг могут означать одну и ту же букву, а могут — совершенно разные.

Но для программы Ярла Ван Эйка, знаменитого алгоритма AZdecrypt, гомофонический шифр не был непреодолимой преградой. Программа была натренирована выявлять связи более высокого порядка. Она искала не отдельные буквы, а биграммы (сочетания из двух букв, вроде «TH», «HE», «IN») и триграммы («THE», «AND», «ING»). AZdecrypt использовал метод, известный в информатике как «алгоритм восхождения на холм» (hill-climbing).

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

Внутри AZdecrypt происходило то же самое. Программа брала зашифрованный текст Z340 и назначала символам случайные буквы. Получался абсолютно нечитаемый мусор. Затем программа оценивала этот мусор по системе баллов: чем больше случайных совпадений с типичными английскими биграммами и триграммами, тем выше балл. После этого алгоритм менял значение всего одного символа. Если балл (высота холма) рос, изменение сохранялось. Если падал — отвергалось. Программа карабкалась вверх, делая миллионы таких шагов в секунду.

Однако в случае с Z340 алгоритм раз за разом застревал на так называемых «локальных максимумах» — небольших холмиках, откуда любой шаг вел только вниз, хотя настоящая вершина скрывалась где-то в тумане. Причина была проста: Зодиак не просто заменил буквы, он сломал саму геометрию текста.

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

Матрица Z340 представляла собой сетку: 20 столбцов и 17 строк. Сэм предложил прочитать ее по диагонали. Правило было математически четким: начать с левого верхнего угла, прочитать символ, затем спуститься на одну строку вниз и сдвинуться на два столбца вправо. «Один вниз, два вправо» — как ход коня на шахматной доске, только растянутый.

Вход
Поиск по сайту
Ищем:
Календарь