Зоопарк шифров: классическая криптография

← Назад к материалам
Средняя школа 17 Залы Криптография

Дидактические цели

У каждого есть секреты, и каждый хочет их защитить. Как? Шифруя сообщения.

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

Чему учимся

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

  • Шифры моноалфавитной замены: Цезарь (фиксированный сдвиг, поворотный диск + гистограмма частот), Атбаш (A↔Z, зашифровать и расшифровать — одна и та же операция), масонский Пигпен (каждая буква — это форма её клетки в 4 решётках).
  • Шифры перестановки: скитала (слайдер столбцов, перераспределяющий буквы) и изгородь из рельсов (зигзаг по N рельсам, чтение по строкам).
  • Стеганография: шифр Бэкона (1605) с 5-битным двоичным кодом, скрытым в двух шрифтах.
  • Виженер (XVI в.): ключ, меняющийся на каждой позиции, ручная операция с диском Цезаря и систематический взлом с помощью теста Казиски (поиск длины L ключа) и 6 гистограммных колёс для подбора каждой буквы ключа.
  • Комбинаторный анализ: подсчёт возможных ключей у Цезаря, Виженера и произвольной замены; объяснение, почему большое число ключей не спасает, если не скрыть частоты.
  • Взлом по частотам: сопоставление частых букв шифртекста с наиболее частыми буквами языка-источника (О, Е, А в русском; E, T, A в английском; E, A, O в испанском) до тех пор, пока текст не прочитается.
  • Три финальные миссии (Цезарь, Пигпен, Бэкон) закрепляют все изученные техники.

Ключевые математические идеи

  • Шифр моноалфабетной замены — это биекция алфавита на себя; двойное применение возвращает исходный текст (инволюция у Атбаша).
  • Сдвиг Цезаря — это модульная арифметика: шифровать = прибавить mod 26, расшифровать = вычесть mod 26.
  • Перестановка меняет порядок букв, не изменяя их; ключ — это геометрическая форма расположения (столбцы или зигзагообразные рельсы).
  • Код Бэкона назначает каждой букве 5-битное число (A=00000 … Z=11001): это двоичное кодирование фиксированной длины.
  • Виженер = поэлементная сумма двух алфавитов (mod 26); ломает частотный анализ, потому что каждая буква открытого текста может быть зашифрована 26 разными способами.
  • Тест Казиски: повторения в шифртексте появляются через промежутки, кратные L (длина ключа), что позволяет оценить L и свести Виженер к L независимым шифрам Цезаря.
  • Число ключей растёт от 26 (Цезарь) до 26^L (Виженер длины L) до 26! ≈ 4 × 10^26 (произвольная замена); тем не менее 26! ключей не защищают, если язык оставляет след в частотах.

Содержание по залам

Зал 1 · Добро пожаловать в зоопарк

Вступительный экран, объявляющий 6 экспонатов зоопарка (исторические шифры) и 3 финальные миссии. Ученик читает карту маршрута и ориентируется перед началом.

Задания для ученика

  • Прочитать описание маршрута и перейти к первому экспонату.

Зал 2 · Диск Цезаря

Интерактивный вращающийся диск, реализующий шифр Цезаря (фиксированный сдвиг алфавита). Сопровождается гистограммой частот испанского языка для первого знакомства со статистическим анализом.

Задания для ученика

  • Вращать кольцо диска, пробуя разные сдвиги.
  • Ввести текст и понаблюдать за шифрованием/дешифрованием.
  • Использовать частоту букв испанского языка для расшифровки сообщения зала.

Зал 3 · Атбаш: алфавит наоборот

Древнееврейский библейский шифр (700 до н.э.), где А↔Я, Б↔Ю, В↔Э... Зал выделяет уникальное свойство: шифрование и дешифрование — ровно одна и та же операция.

Задания для ученика

  • Применить Атбаш к примерному тексту и убедиться, что двойное шифрование восстанавливает оригинал.
  • Ответить на вопрос о симметрии шифра.

Зал 4 · Спартанская скитала

Транспозиция с помощью цилиндра, применявшаяся в Спарте (450 до н.э.): кожаная лента, обёрнутая вокруг жезла. Ползунок позволяет менять число колонок и наблюдать, как буквы перераспределяются.

Задания для ученика

  • Двигать ползунок колонок, чтобы увидеть, как текст упорядочивается или разрушается.
  • Найти число колонок, восстанавливающее исходное сообщение.

Зал 5 · Решётчатая ограда

Транспозиционный шифр зигзагом (американские телеграфы, XIX в.): сообщение записывается на N направляющих и читается строка за строкой, каждая направляющая своим цветом.

Задания для ученика

  • Зашифровать короткий текст, выбрав число направляющих.
  • Расшифровать зашифрованный текст, определив паттерн зигзага.

Зал 6 · Масонский шифр (Pigpen)

Масонский шифр XVIII века: каждая буква представляется формой ячейки одной из четырёх решёток (две сетки 3×3 и два крестообразных, с точкой и без). Ученик учится читать и писать на алфавите символов.

Задания для ученика

  • Определить четыре решётки и соответствующие им буквы.
  • Расшифровать сообщение, записанное символами Pigpen.

Зал 7 · Бэкон: невидимое послание

Фрэнсис Бэкон (1605) кодирует каждую букву как 5-битный двоичный код (А=00000, Я=11001) и прячет его в тексте-носителе, используя два шрифта (обычный и жирный). Стеганография: сокрытие самого факта существования сообщения.

Задания для ученика

  • Прочитать текст с двумя шрифтами и извлечь биты A/B для расшифровки скрытого слова.
  • Понять разницу между криптографией и стеганографией.

Зал 8 · Виженер: ключ, который меняется

Введение в шифр Виженера (XVI в.): величина сдвига не фиксирована, а следует повторяющемуся ключу. Ученик шифрует и расшифровывает с помощью интерактивного инструмента и понимает, почему этот шифр ломает частотный анализ.

Задания для ученика

  • Ввести текст и короткий ключ; понаблюдать за результатом шифрования.
  • Расшифровать сообщение, зная ключ.

Зал 9 · Виженер вручную

Ученик должен выполнить операцию Виженера вручную: 6 букв текста и ключ из 3 букв, с диском Цезаря, показывающим сложение (шифрование) и вычитание (дешифрование) для каждого сдвига.

Задания для ученика

  • Использовать диск Цезаря для шифрования каждой буквы, прибавляя соответствующую букву ключа.
  • Расшифровать текст, вычитая ключ побуквенно.

Зал 10 · Виженер без ключа

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

Задания для ученика

  • Пробовать ключи-кандидаты в инструменте и оценивать, имеет ли результат смысл.
  • Найти правильный ключ, расшифровывающий сообщение.

Зал 11 · Взломать Виженер: сколько колёс?

Применение теста Казиски–Бэббиджа: если ключ имеет длину L, то позиции, стоящие на расстоянии L, используют один и тот же шифр Цезаря. Ученик делит зашифрованный текст на группы и сравнивает гистограммы, чтобы найти длину L, при которой каждая группа похожа на английский текст. Шифр работает на латинском алфавите, ключ SUMMER (длина 6), корпус — английский текст (Хемингуэй, «Старик и море»).

Задания для ученика

  • Изменять длину L и наблюдать, как меняются гистограммы каждой группы.
  • Определить значение L, при котором гистограммы соответствуют английскому языку.

Зал 12 · Виженер: настраиваем 6 колёс

Зная длину ключа (6), ученик независимо поворачивает каждое из 6 колёс: при повороте гистограмма соответствующей группы сдвигается, а частичная расшифровка обновляется в реальном времени.

Задания для ученика

  • Поворачивать каждое колесо до совпадения его гистограммы с английской.
  • Прочитать полностью расшифрованное сообщение, когда все 6 колёс стоят в правильных позициях.

Зал 13 · Сколько различных кодов?

Комбинаторное рассуждение о пространстве ключей: Цезарь (25), Виженер из 3 букв (26³), произвольная замена буква-на-букву (26!). Зал показывает, почему размер пространства ключей сам по себе не гарантирует безопасности.

Задания для ученика

  • Вычислить или оценить число возможных шифров для каждого типа.
  • Подумать, почему 26! ключей не препятствует криптоанализу по частотам.

Зал 14 · Взломать замену по частотам

Длинный русский текст (Пушкин, «Евгений Онегин»), зашифрованный произвольной заменой. Наиболее частые буквы шифра выделены оранжевым, а наиболее частые буквы русского языка (О, Е, А) — зелёным. Ученик сопоставляет их кликами до тех пор, пока текст не станет читаемым.

Задания для ученика

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

Зал 15 · Миссия 1: расшифруй Цезаря

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

Задания для ученика

  • Двигать ползунок сдвига до получения читаемого текста.
  • Подтвердить расшифровку для перехода к следующей миссии.

Зал 16 · Миссия 2: масонский шпион

Вторая миссия: перехваченная записка с 7 символами Pigpen. Ученик использует 4 решётки как ключ для расшифровки послания шпиона.

Задания для ученика

  • Обратиться к четырём решёткам Pigpen.
  • Перевести каждый символ в его букву и написать расшифрованное слово.

Зал 17 · Миссия 3: невидимые чернила

Третья миссия: невинный текст скрывает слово в коде Бэкона с помощью двух шрифтов. Ученик извлекает последовательность битов и преобразует её в буквы, чтобы раскрыть скрытое послание.

Задания для ученика

  • Определить буквы обычного шрифта (A) и жирного (B) в тексте-носителе.
  • Разбить биты на группы по 5 и перевести их в буквы по таблице Бэкона.
  • Написать скрытое слово для завершения курса.

Залы для показа

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

★
Зал 2 · Диск Цезаря — Вращающийся диск и гистограмма частот наглядно показывают в реальном времени, почему статистический анализ ломает этот шифр; идеально для открытия дискуссии о том, «что делает шифр надёжным?».
★
Зал 12 · Виженер: настраиваем 6 колёс — 6 параллельно вращающихся колёс с гистограммами — самый зрелищный момент курса: он наглядно показывает, как криптоанализ Казиски превращает «невзламываемый» шифр в 6 независимых Цезарей.
★
Зал 14 · Взломать замену по частотам — Игра сопоставления оранжевых и зелёных букв с постепенным «проявлением» текста захватывает класс и открывает дискуссию о пределах частотного анализа.
★
Зал 7 · Бэкон: невидимое послание — Идея скрыть сам факт существования послания (стеганография) всегда удивляет; проецировать текст-носитель и раскрыть спрятанное слово — реакция в классе мгновенная.