Моноалфавитный шифр
Моноалфавитный шифр — это разновидность шифра подстановки, в котором каждый символ открытого текста заменяется на один и тот же символ шифротекста на протяжении всего сообщения. В отличие от полиалфавитных шифров, где соответствие между буквами меняется в зависимости от позиции, в моноалфавитных системах используется фиксированное отображение алфавита открытого текста на алфавит шифротекста. Ключом шифрования является правило замены, которое может быть представлено в виде таблицы, формулы или перестановки. Моноалфавитные шифры являются одними из древнейших криптографических методов и лежат в основе многих исторических систем, включая шифр Цезаря и шифр Атбаш.
История
Древние шифры
Первые известные моноалфавитные шифры появились в Древнем Египте, где иероглифические надписи иногда содержали нестандартные замены символов для сокрытия смысла. Однако наиболее систематическое применение таких шифров зафиксировано в Древней Греции и Риме. Около 100 года до н. э. римский полководец Юлий Цезарь использовал шифр, названный впоследствии его именем: каждая буква латинского алфавита заменялась на букву, отстоящую от неё на фиксированное число позиций (обычно на 3). Этот метод описан в сочинении римского историка Светония «Жизнь двенадцати цезарей».
Средневековье и эпоха Возрождения
В средневековой Европе моноалфавитные шифры применялись в дипломатической переписке и религиозных текстах. Например, в IX веке арабский учёный Аль-Кинди в трактате «О расшифровке криптографических сообщений» описал метод частотного анализа, который позволял взламывать моноалфавитные шифры. В эпоху Возрождения итальянские города-государства активно использовали шифры подстановки для защиты государственных тайн. В 1466 году архитектор Леон Баттиста Альберти предложил шифровальный диск, который, однако, был полиалфавитным. Тем не менее, простые моноалфавитные системы оставались популярными до XVII века.
Кризис доверия
К середине XIX века моноалфавитные шифры перестали считаться надёжными из-за развития криптоанализа. В 1863 году прусский офицер Фридрих Казиски опубликовал метод взлома шифра Виженера, что также подорвало доверие к более простым системам. В XX веке, с появлением электромеханических шифровальных машин (например, «Энигмы»), моноалфавитные шифры утратили практическое значение для военной и государственной переписки, но продолжали использоваться в любительской криптографии и головоломках.
Классификация
По типу замены
Моноалфавитные шифры делятся на несколько основных типов в зависимости от способа отображения символов:
- Шифр простой замены — каждая буква открытого текста заменяется на произвольную букву или символ из того же алфавита. Ключом является таблица соответствия, например: A→Q, B→W, C→E и так далее. Число возможных ключей для алфавита из 33 букв (русский язык) составляет 33! (около 8,68×10³⁶), что делает полный перебор практически невозможным, но уязвимость к частотному анализу остаётся.
- Шифр Цезаря — частный случай простой замены, где сдвиг фиксирован. Например, при сдвиге на 3 буква «А» становится «Г», «Б» — «Д» и так далее. Ключом является число сдвига (от 1 до 25 для латиницы).
- Шифр Атбаш — древнееврейский шифр, где первая буква алфавита заменяется на последнюю, вторая — на предпоследнюю и так далее. Например, в латинском алфавите A→Z, B→Y, C→X. Этот шифр является инволюцией (двойное применение возвращает исходный текст).
- Шифр с ключевым словом — алфавит шифротекста формируется на основе ключевого слова, после которого добавляются оставшиеся буквы в алфавитном порядке. Например, для ключа «КЛЮЧ» русский алфавит может выглядеть как К, Л, Ю, Ч, А, Б, В, Г, Д, Е, Ё, Ж, З, И, Й, М, Н, О, П, Р, С, Т, У, Ф, Х, Ц, Ш, Щ, Ъ, Ы, Ь, Э, Я.
По способу представления
- Буквенные шифры — используют только буквы алфавита.
- Цифровые шифры — буквы заменяются на числа (например, A=1, B=2).
- Символьные шифры — буквы заменяются на произвольные знаки (например, иероглифы, геометрические фигуры).
Устройство и принцип работы
Математическая модель
Пусть имеется алфавит открытого текста \(A = \{a_1, a_2, \dots, a_n\}\) и алфавит шифротекста \(B = \{b_1, b_2, \dots, b_n\}\), где \(n\) — мощность алфавита. Моноалфавитный шифр задаётся биективным отображением \(f: A \rightarrow B\). Для шифрования символ \(a_i\) заменяется на \(f(a_i)\). Дешифрование осуществляется обратным отображением \(f^{-1}\). Ключом является либо сама функция \(f\), либо параметры, её определяющие (например, сдвиг для шифра Цезаря).
Пример шифрования
Рассмотрим шифр Цезаря со сдвигом 3 для русского алфавита (без буквы «Ё»). Открытый текст: «ПРИВЕТ». Замена:
- П → С (сдвиг на 3: П→Р→С→Т, но с учётом сдвига на 3: П→С)
- Р → У
- И → Л
- В → Е
- Е → З
- Т → Х
Шифротекст: «СУЛЕЗХ».
Дешифрование
Для дешифрования применяется обратный сдвиг (в данном случае -3). Получатель, зная ключ (сдвиг 3), восстанавливает исходный текст.
Криптоанализ
Частотный анализ
Основной метод взлома моноалфавитных шифров — частотный анализ, впервые описанный Аль-Кинди в IX веке. В любом естественном языке частоты появления букв неравномерны. Например, в русском языке наиболее частые буквы — «О», «Е», «А», «И», «Н», «Т», «С». В английском — «E», «T», «A», «O», «I», «N», «S». Криптоаналитик подсчитывает частоты символов в шифротексте и сопоставляет их с известными частотами языка. Дополнительно используются биграммы (пары букв, например, «СТ», «НО») и триграммы.
Другие методы
- Анализ повторяющихся слов — если в шифротексте встречаются одинаковые последовательности символов, они могут соответствовать часто повторяющимся словам (например, артиклям, предлогам, союзам).
- Метод «вероятного слова» — если известно, что в тексте присутствует определённое слово (например, «атака» или «Пётр»), криптоаналитик пытается подобрать замену для этого слова.
- Полный перебор — для шифра Цезаря с латинским алфавитом достаточно проверить 25 вариантов сдвига, что тривиально. Для шифра простой замены перебор 33! вариантов практически невозможен, но частотный анализ сокращает пространство поиска.
Уязвимости
Моноалфавитные шифры уязвимы к частотному анализу, особенно при достаточно длинных текстах (от 100–200 символов). Короткие сообщения (менее 50 символов) могут быть более устойчивы, так как статистические закономерности проявляются слабее. Кроме того, шифры с ключевым словом или сдвигом не защищают от анализа контекста.
Применение
Историческое
До XIX века моноалфавитные шифры были основным средством защиты переписки в дипломатии, армии и торговле. Например, в Российской империи в XVIII веке использовались «цифирные азбуки» — таблицы замены букв на цифры или специальные знаки. В 1812 году в переписке русских военачальников применялись простые шифры подстановки.
Современное
В настоящее время моноалфавитные шифры не используются для защиты конфиденциальной информации из-за низкой криптостойкости. Однако они находят применение в следующих областях:
- Образование — для изучения основ криптографии и частотного анализа.
- Головоломки и игры — в кроссвордах, квестах, настольных играх (например, в игре «Шифровальщик»).
- Литература — в романах и фильмах как элемент сюжета (например, «Золотой жук» Эдгара По, «Пляшущие человечки» Артура Конан Дойля).
- Эзотерика — в некоторых оккультных системах (например, шифр Атбаш используется в каббалистических текстах).
Примеры
Шифр Цезаря
Самый известный пример. Ключ: сдвиг на 3. Открытый текст: «VENI, VIDI, VICI» (лат. «Пришёл, увидел, победил»). Шифротекст: «YHQL, YLGL, YLFL».
Шифр Атбаш
Для латиницы: A→Z, B→Y, C→X. Открытый текст: «HELLO». Шифротекст: «SVOOL». В русском варианте: А→Я, Б→Ю, В→Э и так далее.
Шифр с ключевым словом
Ключевое слово: «КРИПТОГРАФИЯ». Русский алфавит без «Ё»: А, Б, В, Г, Д, Е, Ж, З, И, Й, К, Л, М, Н, О, П, Р, С, Т, У, Ф, Х, Ц, Ч, Ш, Щ, Ъ, Ы, Ь, Э, Ю, Я. Алфавит шифротекста: К, Р, И, П, Т, О, Г, А, Ф, Я, Б, В, Д, Е, Ж, З, Й, Л, М, Н, С, У, Х, Ц, Ч, Ш, Щ, Ъ, Ы, Ь, Э, Ю. Открытый текст: «ШИФР». Замена: Ш→Ч, И→И, Ф→Ф, Р→Р. Шифротекст: «ЧИФР».
Интересные факты
- Шифр Цезаря с сдвигом 13 (ROT13) для латиницы является инволюцией: двойное применение возвращает исходный текст. Он часто используется в интернет-форумах для скрытия спойлеров.
- В романе «Золотой жук» Эдгара По (1843) главный герой взламывает моноалфавитный шифр с помощью частотного анализа, что стало одним из первых литературных описаний криптоанализа.
- В 1960-х годах моноалфавитные шифры использовались в советских детских журналах для публикации загадок и головоломок.
- В 2011 году в ходе археологических раскопок в Иерусалиме была найдена глиняная табличка с шифром Атбаш, датируемая VII веком до н. э.
Источники
- Светоний, «Жизнь двенадцати цезарей» (ок. 121 г. н. э.)
- Аль-Кинди, «О расшифровке криптографических сообщений» (IX век)
- Сингх С., «Книга шифров: Тайная история шифров и их взлома» (2000)
- Кан Д., «Взломщики кодов: История криптографии» (1967)
- Шнайер Б., «Прикладная криптография» (1996)
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →