Играем в квантовую криптографию: разбираем протокол BB84
Меня зовут JSSemeone. Я делаю проект Ludus Lab — визуализации сложных вещей на стыке науки и игр. Моя цель простая: превращать теорию и сложные практические реализации
в интерактивные эксперименты, где идеи можно не только прочитать, но и «пощупать» руками.
У читателя может возникнуть вопрос: «Кто такие «мы»?» Честный ответ — по сути я делаю всё один. Идеи визуализаций, общий подход и направление проекта принадлежат мне.
При этом я не программист, и изначально не было задачи писать какой-то уникальный код
или «изобретать велосипед» на уровне разработки.
Появление вайбкодинга и быстрый прогресс нейросетей стали для Ludus Lab мощным толчком: они позволили мне сосредоточиться на главном — на смысле, подаче и интерактивности —
и сделать ресурс реальным, а не просто задумкой.
Сегодня я хочу рассказать о первой игре из нашей лаборатории — визуализации протокола квантового распределения ключей BB84. Это не просто рассказ о протоколе, а разбор
его игровой реализации: как мы переложили теоретические шаги на механики, какие допущения при этом сделали и зачем, и что в итоге может почувствовать и понять игрок.
Немного теории: в чём суть BB84?
Представьте классическую проблему: Алиса хочет передать секретное сообщение Бобу,
но есть Ева, которая может подслушивать. В классической криптографии если Ева перехватит ключ шифрования, она сможет незаметно скопировать его и прочитать всё сообщение.
Задача BB84, предложенного в 1984 году Чарльзом Беннетом и Жилем Брассаром, — создать общий секретный ключ между Алисой и Бобом так, чтобы любая попытка подслушивания обязательно была обнаружена. Безопасность здесь основана
не на вычислительной сложности (как в RSA и прочих алгоритмов с открытым ключом),
а на фундаментальных законах квантовой механики.
Ключевой принцип: нельзя измерить квантовое состояние (например, поляризацию фотона),
не изменив его (если только не знать заранее, как именно его измерять).
Как это работает? Кратко по шагам:
Кодирование: Алиса генерирует случайную последовательность битов (0 и 1). Для каждого бита она случайно выбирает базис (способ кодировки): «прямой» (+; 0° или 90°)
или «диагональный» (× 45° или 135°). Она отправляет фотоны в этих состояниях Бобу.Измерение: Боб, получив фотон, тоже случайно выбирает базис для измерения.
Если его базис совпал с базисом Алисы — он получает верный бит. Если не совпал — результат случайный (50/50).Обсуждение базисов: По открытому (классическому, незащищённому!) каналу Алиса и Боб говорят друг другу, какие базисы они использовали для каждого фотона. Значения битов
при этом не раскрываются.Просеивание: Они оставляют только те биты, где базисы совпали (примерно 50% от всех). Это и есть основа их будущего секретного ключа.
Обнаружение Евы: Чтобы проверить, не подслушивала ли Ева, они сравнивают
по открытому каналу случайную часть из этих оставшихся битов. Если Ева пыталась измерить фотоны, она неизбежно внесла ошибки (в ~25% случаев). Высокий уровень ошибок (QBER) — сигнал, что ключ скомпрометирован, и его нужно выбросить.
Переходим к практике: что представляет собой игровая симуляция?
В игре наша основная задача — дать вам почувствовать себя наблюдателем-экспериментатором, который видит процесс генерации ключа со всех сторон одновременно.
Вы не просто Алиса или Боб — вы видите и их действия, и (в образовательных целях!)
действия Евы.
Миссия игры: успешно сгенерировать общий 8-битный секретный ключ, поняв логику каждого этапа.
Интерфейс игры делится на несколько логических зон:
Лабораторная установка: Слева Алиса, справа Боб, между ними — квантовый
и классический каналы связи.Панель управления Алисой: Здесь вы, как Алиса, выбираете состояние фотона
(бит 0/1 и базис +/×). Ключевая особенность — три режима работы, которые переключаются кнопками:Ручной режим: Полный контроль. Каждый фотон отправляется только по вашему нажатию, вы самостоятельно выбираете его состояние. Идеален для первого знакомства
и медленного, осмысленного прохождения каждого шага.Полуавтоматический режим: Фотоны отправляются автоматически с интервалом, но базис и значение для каждого фотона вы выбираете вручную. Позволяет быстрее набрать статистику, сохраняя контроль над кодированием.
Автоматический режим: Полная симуляция. И фотоны отправляются, и их состояния (базис и бит) выбираются случайным образом автоматически. Полезен для наблюдения «чистой» статистики процесса и быстрого накопления данных для анализа.
Визуализация передачи: Анимация движения фотона, появление индикаторов выбранных базисов.
История и статистика: Таблицы отправленных («сырой ключ») и итоговых битов, счётчики совпадений и перехватов.
Панель протокола: Свёрнутое текстовое описание шагов BB84 для справки.
Механика и геймплей: как проходит эксперимент?
Игра ведётся в несколько фаз, повторяющих этапы протокола, но с возможностью интерактивного контроля.
Фаза 1: Накопление данных
Вы выбираете состояние фотона (например, «0 в прямом базисе | ») и нажимаете «Отправить».
На экране разворачивается анимация: фотон летит по квантовому каналу. Над каналом могут появиться индикаторы: какой базис выбрала Алиса (ваш выбор) и какой случайный базис выбрал для измерения Боб.
Важный образовательный момент: Если в канале ненадолго появляется иконка Евы 👁️🗨️ — это значит, что в этой итерации произошёл перехват. Игра честно показывает вам, когда Ева активна.
Результат (бит Боба, факт перехвата) записывается в таблицу «сырого ключа». Цвет ячейки показывает, совпали ли базисы (синий — да, красноватый — нет). Иконка «E» отмечает перехваченные кубиты.
Фаза 2: Анализ и просеивание
Накопив достаточно битов (минимум 8 совпадающих и не перехваченных), вы нажимаете кнопку «Просеять ключ».
Происходит визуальное переключение: квантовый канал гаснет, активируется классический (по нему начинают «бегать» пакеты данных — символ обмена служебной информацией).
Игра автоматически сравнивает базисы Алисы и Боба для каждого отправленного фотона. Кубиты с совпавшими базисами (и без перехвата) переносятся в окно «Квантовый ключ», формируя конечный 8-битный секрет.
Фаза 3: Изучение
Ключевая фишка: Вы можете кликнуть на любой кубит в «сыром ключе». Всплывёт подробная история этого конкретного фотона: что отправила Алиса, что измерил Боб,
был ли перехват, совпали ли базисы, и почему этот бит вошёл (или не вошёл) в итоговый ключ. Это позволяет точечно разобрать каждую ситуацию.
Режимы игры:
Ручной: Полный контроль для понимания каждого шага.
Полуавтоматический: Фотоны отправляются сами, но базис вы выбираете. Позволяет быстрее набрать статистику.
Автоматический: Всё происходит само. Полезно, чтобы увидеть «чистую» статистику процесса.
Самый важный раздел: допущения и упрощения (Игра vs Реальность)
Здесь мы вскрываем «кухню» и честно говорим, где и ради чего наша симуляция отступает от реального протокола.
Резюме по упрощениям: Наша цель — не создать точный симулятор для инженеров КРК (QKD), а визуализировать и сделать осязаемым фундаментальный принцип BB84: безопасность, основанную на невозможности незаметного измерения квантового состояния. Все упрощения служат этой дидактической цели.
Что в итоге? Какие инсайты даёт игра?
После 10-15 минут с симуляцией у игрока (даже далёкого от физики) формируется чёткая интуиция:
Случайность — это система. Становится очевидно, почему хаотичный выбор базисов —
не баг, а краеугольный камень безопасности.Цена подслушивания. Видно, как попытка Евы «просто посмотреть» необратимо портит данные и в итоге делает перехваченные кубиты бесполезными для формирования ключа.
Разделение каналов. Чётко разделяются роли «квантового» канала (для хрупких состояний) и «классического» (для смелого обмена служебной информацией).
Связь с реальностью сегодня: модификации BB84 лежат в основе первых коммерческих систем квантовой связи, пилотных проектов защищённых банковских транзакций и спутниковой квантовой передачи данных.
Теория — это здорово, но квантовая механика оживает только в действии.
Попробовать провести сеанс связи в игровой симуляции: Игра «Квантовый ключ: BB84» на Ludus Lab
В следующих статьях разберём протокол E91, основанный на запутанности, и другие. Интересно услышать ваше мнение: насколько такой игровой формат помогает в понимании сложных тем? Какие ещё протоколы или концепции было бы интересно увидеть в подобной визуальной форме? Критика и идеи по поводу допущений в симуляции особенно приветствуются в комментариях!




