Как шифр Плейфера защищал секреты до эпохи компьютеров

4

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

Самый известный пример? Шифр Плейфера.

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

Вот как это работает на практике.

Вы начинаете с сетки 5×5. В алфавите 26 букв. Вам нужно 25 ячеек. Поэтому I и J разделяют одну ячейку. Вы выбираете ключевое слово. Давайте используем MONARCHY. Вы записываете его первым. Затем заполняете остальное оставшимися буквами в алфавитном порядке.

Шифр Плейфера снижал эффективность сырого частотного распределения, обрабатывая диграфы как единые единицы.

Это не просто теория. Лорд Питер Вимзи взламывает шифр Плейфера в романе Дороти Л. Сейерс Have His Carcase. Это изящный трюк. Но он не идеален. Диграфы коррелируют. Вы все еще можете взломать его, если у вас достаточно текста.

Так почему это важно сегодня?

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

Шифр Плейфера был шагом вперед. Он был сложнее, чем сдвиг Цезаря. Но он не был не взламываемым.

И вот в чем дело со старыми технологиями. Они элегантны. Они просты. Они также несовершенны.

Мы больше не используем его. У нас есть лучшие инструменты. Но понимание этого помогает. Это показывает, как мы сюда попали. Это демонстрирует борьбу между секретностью и разоблачением.

Сетка исчезла. Ключевые слова забыты. Но игра продолжается.

Навигация по правилам матрицы Плейфера

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

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

Разные строки и столбцы

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

W переходит в ту же строку, но в столбец, где находится E. E переходит в свой столбец, но в строку W. В массиве Сэйерса W становится U, а E становится G. Результат — UG. Это простой обмен, основанный на геометрии.

Одна строка

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

A становится R. R становится M, с переходом в начало строки при необходимости. Это сдвиг, а не обмен.

Один столбец

Вертикальное выравнивание запускает другую механику. Рассмотрим I и S. Если они стоят друг над другом в одном столбце, вы не двигаетесь вправо. Вы двигаетесь вниз.

I становится S. S становится X, опять же, с правилом перехода в начало столбца, если вы достигаете нижней части сетки. Шифр движется вертикально, а не горизонтально.

Обработка двойных букв и нечетной длины

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

Если у вас есть слово SUMMER, вы не можете сгруппировать его как SU-MM-ER. Вместо этого вы вставляете букву-заполнитель, обычно Q, между двойными буквами. MM превращается в MQ и ME. Таким образом, SUMMER распадается на SU-MQ-ME-R (с добавлением заполнения, см. ниже).

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

Затем возникает проблема длины. Плейфер требует четного количества букв. Если ваше сообщение заканчивается нечетным количеством символов, вы добавляете X (или иногда Q) в конец. Это грубое решение структурного ограничения.

Результат

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

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

Что происходит, когда буква-заполнитель сама образует двойную букву с следующим символом?

Почему шифр Плейфера всё ещё протекает данные

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

Но с шифром Плейфера происходит не так.

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

Криптоаналитики используют эту структуру. Это его ключевая слабость.

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

Как корреляции строк и столбцов помогают взломщикам

Шифр Плейфера работает с диграфами (парами букв). Он использует сетку размером 5×5. Расположение букв в этой сетке определяет правила шифрования.

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

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

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

Сравнение шифра Плейфера с моноалфавитными системами

Моноалфавитный шифр сопоставляет каждую букву открытого текста одной букве шифротекста. A становится X, B становится Y. Частотный анализ тривиален. Вы считаете буквы. Сопоставляете самые частые с E, T, A. Готово.

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

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

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

Так что, он безопасен?

Нет, по современным стандартам. Это был шаг вперед по сравнению с простой подстановкой. Он выиграл время. Заставил атакующих думать парами, а не отдельными буквами. Но структура всё ещё присутствует. Отклонение от плоского распределения — это признак.

Сетка остается. Геометрия остается. И пока сохраняется геометрия, можно найти закономерности.

Попередня статтяКак Auto-GPT превращает GPT-4 в автономного агента, который действительно выполняет работу
Наступна статтяПочему облачное хранилище заменяет ваш жесткий диск