Русская Википедия:BB84
BB84 — первый протокол квантового распределения ключей, который был предложен в 1984 году Чарльзом Беннетом и Жилем Брассаром. Протокол использует для кодирования информации четыре квантовых состояния двухуровневой системы, формирующие два сопряжённых базиса.Шаблон:Sfn Носителями информации являются 2-уровневые системы, называемые кубитами (квантовыми битами).
История
Стивен Визнер (Шаблон:Lang-en), являясь студентом Колумбийского университета, в 1970 подал статью по теории кодирования в журнал IEEE Information Theory, но она не была опубликована, потому что изложенные в ней предположения казались фантастическими, а не научными.Шаблон:Sfn В статье была описана концепция использования квантовых состояний для защиты денежных банкнот.Шаблон:Sfn Впоследствии на основе принципов работы С. Визнера учёные Чарльз Беннет (Шаблон:Lang-en) из фирмы IBM и Жиль Брассард (Шаблон:Lang-en) из Монреальского университета разработали способ кодирования и передачи сообщений. Ими был сделан доклад на тему «Квантовая криптография: Распределение ключа и подбрасывание монет» на конференции IEEE International Conference on Computers, Systems, and Signal Processing. Описанный в работе протокол впоследствии признан первым и базовым протоколом квантовой криптографии и был назван в честь его создателей.Шаблон:Sfn
Описание протокола
Введение
Протокол использует 4 квантовых состояния, образующих 2 базиса, например поляризационные состояния света. Состояния внутри одного базиса ортогональны, но состояния из разных базисов — попарно неортогональны. Эта особенность протокола позволяет определить возможные попытки нелегитимного съёма информации.
Носителями информации в протоколе являются фотоны, поляризованные под углами 0°, 45°, 90°, 135°. С помощью измерения можно различить только 2 ортогональных состояния:
- фотон поляризован вертикально или горизонтально (0° или 90°);
- фотон поляризован диагонально (45° или 135°).
Достоверно отличить за одно измерение горизонтальный фотон от фотона, поляризованного под углом 135°, невозможно.Шаблон:Sfn
Кодирование состояний
В протоколе BB84 кодирование состояний осуществляется следующим образом:Шаблон:Sfn
- <math>|0\rangle</math>
- <math>|{\leftrightarrow}\rangle</math>
- <math>|{\nearrow}\rangle = \frac{1}{\sqrt{2}}\big(|{\updownarrow}\rangle + |{\leftrightarrow}\rangle\big)</math>
- <math>|1\rangle</math>
- <math>|{\updownarrow}\rangle</math>
- <math>|{\nwarrow}\rangle = \frac{1}{\sqrt{2}}\big(|{\updownarrow}\rangle - |{\leftrightarrow}\rangle\big)</math>
Алгоритм распределения ключей
Традиционно в работах по криптографии легитимных пользователей принято кратко обозначать как Алису и Боба, а перехватчика называть Евой. Таким образом, описание ситуации в криптографическом протоколе выглядит так: Алиса должна передать Бобу секретное сообщение, а Ева всеми доступными ей средствами старается его перехватить.Шаблон:Sfn
Этапы формирования ключей:Шаблон:Sfn
- Алиса случайным образом выбирает один из базисов. Затем внутри базиса случайно выбирает одно из состояний, соответствующее 0 или 1, и посылает фотоны. Они могут посылаться все вместе или один за другим, но главное, чтобы Алиса и Боб смогли установить взаимно однозначное соответствие между посланным и принятым фотоном.
- Боб случайно и независимо от Алисы выбирает для каждого поступающего фотона: прямолинейный или диагональный базис, и измеряет в нём значение фотона.
- Для каждого переданного состояния Боб открыто сообщает, в каком базисе проводилось измерение кубита, но результаты измерений остаются в секрете.
- Алиса сообщает Бобу по открытому общедоступному каналу связи, какие измерения были выбраны в соответствии с исходным базисом Алисы.
- Пользователи оставляют только те случаи, в которых выбранные базисы совпали. Эти случаи переводят в биты (0 и 1), и составляют ключ.
В таком случае примерно 50 % данных выбрасывается. Оставшийся более короткий ключ называется «просеянным». В случае отсутствия подслушивания и шумов в канале связи Алиса и Боб будут теперь иметь полностью коррелированную строку случайных битов, которая будет в дальнейшем использоваться в схемах классической симметричной криптографии. Если же подслушивание имело место, то по величине ошибки в получившемся классическом канале связи Алиса и Боб могут оценить максимальное количество информации, доступное Еве. Существует оценка, что если ошибка в канале меньше приблизительно 11 %, то информация, доступная Еве, заведомо не превосходит взаимной информации между Алисой и Бобом, и секретная передача данных возможна.Шаблон:Sfn
Эффективный способ обнаружения и исправления ошибок заключается в перемешивании и разбиении последовательностей Алисы и Боба на блоки. Основная идея состоит в проверке чётности блоков: разбивают на блоки и проверяют на чётность в несколько итераций, уменьшая каждый размер именно тех блоков, чётность которых не совпала. Итерации производят, пока не обнаружат и не исправят ошибки. Наиболее мелкие блоки отбрасываются при обнаружении в них ошибки. В результате вероятность ошибки в полученной последовательности ничтожно мала.Шаблон:Sfn
Пример распределения ключей
Условные обозначения
Обозначение Поляризация фотонов Кодируемый бит ↔ Горизонтальная 1 ↕ Вертикальная 0 ↗ Под углом 45° 0 ↖ Под углом 135° 1
Обозначение анализатора Поляризация фотонов + Прямоугольный x Диагональный
Процесс распределения ключей можно проанализировать по шагам. Результат выполнения каждого пункта соответствует строке таблицы:
Последовательность фотонов Алисы ↕ ↗ ↗ ↔ ↖ ↕ ↕ ↔ ↔ Последовательность анализаторов Боба + x + + x x x + x Результаты измерений Боба 0 0 1 1 1 0 1 1 0 Анализаторы выбраны верно да да нет да да нет нет да нет Ключ 0 0 1 1 1
Если бы Ева перехватывала информацию при помощи оборудования, подобного оборудованию Боба, то примерно в 50 % случаев она выберет неверный анализатор, не сможет определить состояние полученного ею фотона, и отправит фотон Бобу в состоянии, выбранном наугад. При этом также в 25 % случаев результаты измерений Боба могут отличаться от результатов Алисы. Это довольно заметно и быстро можно обнаружить. Однако, если Ева перехватывает только 10 % информации, тогда уровень ошибок будет 2,5 %, что менее заметно.Шаблон:Sfn
Практическая реализация
Схематично практическая реализацияШаблон:Sfn представлена на рисунке.
Передатчик формирует одно из четырёх состояний поляризации. Функции ячейки Поккельса — импульсная вариация поляризации потока квантов передатчиком и анализ импульсов поляризации приёмником. Собственно передаваемые данные поступают в виде управляющих сигналов на эти ячейки. В качестве канала передачи данных может использоваться оптическое волокно. В качестве первичного источника света можно использовать лазер. На принимающей стороне после ячейки Поккельса ставится кальцитовая призма, которая расщепляет пучок на два фотодетектора, измеряющие две ортогональные составляющие поляризации.Шаблон:Sfn
Главная проблема формирования передаваемых импульсов квантов заключается в интенсивности.Шаблон:SfnШаблон:Sfn Например, если в импульсе 1000 квантов, то есть вероятность того, что 100 квантов перехватит злоумышленник. Анализируя, он может получить нужную ему информацию. В идеале число квантов в импульсе должно быть не более одного. Здесь любая попытка отвода части квантов злоумышленником приведёт к существенному росту числа ошибок у принимающей стороны. В этом случае принятые данные должны быть отброшены и попытка передачи повторена. Но, делая канал более устойчивым к перехвату, это вызывает проблему выдачи сигнала в отсутствии фотонов на входе приёмника. Для того, чтобы обеспечить надёжную передачу данных, логическому нулю и единице могут соответствовать определённые последовательности состояний, допускающие коррекцию одинарных и даже кратных ошибок.
Криптоанализ
Атака для случая однофотонных сигналов
Существует 2 класса атак, которые может использовать Ева, когда все передаваемые сигналы содержат строго один фотон:Шаблон:Sfn
- Некогерентные Ева перехватывает посылаемые Алисой фотоны, затем измеряет их состояния и отправляет затем новые фотоны Бобу в измеренных состояниях.
- Когерентные Ева любым возможным способом перепутывает пробу любой размерности с целой группой передаваемых одиночных фотонов.
Взаимная информация Алисы и Боба вычисляется по формулеШаблон:Sfn[Что обозначают параметры, входящие в формулы???!]
- <math>I_\text{AB}(D) = \frac{1}{2} \varphi(1 - 2D).</math>
Когда Ева измеряет состояние пробы сразу после перепутывания с фотоном Алисы, взаимная информация Алисы и Евы равна
- <math>I_\text{AE}(D) = \frac{1}{2} + \frac{\chi}{2} \left(\frac12 - \sqrt{2D - 4D^2}\right) + \frac{\chi}{2} \left(\frac12 + \sqrt{2D - 4D^2}\right).</math>
Для случая равновероятного использования двух базисов в протоколе ВВ84:
- <math>I_\text{AE}(D) = \frac{1}{2} \varphi \left(2\sqrt{D(1 - D)}\right).</math>
Атака разделения числа фотонов на протокол BB84
В настоящее время однофотонные источники не созданы и на практике используют слабокогерентные импульсы, излучаемые многофотонные источники.Шаблон:Sfn Вероятность того, что импульс содержит <math>n</math> фотонов определяется распределением Пуассона:
- <math>P_{n, \text{loss}} = e^{-\eta\mu} \frac{(\eta\mu)^n}{n!},</math>
где <math>\mu</math> — среднее число фотонов в импульсе, <math>\eta</math> — коэффициент передачи канала.
Таким образом, становится возможной атака разделения числа фотонов. Если Ева обнаруживает в импульсе более одного фотона, она отводит один, остальные беспрепятственно доходят до Боба. Затем Ева выполняет перепутывание перехваченного фотона со своей пробой и ожидает объявления базисов. Следовательно, Ева получит точное значение переданного бита, не внося при этом никаких ошибок в просеянный ключ.Шаблон:SfnШаблон:Sfn
Примечания
См. также
Литература
Книги
Научные статьи
- Шаблон:Source
- Шаблон:Source
- Шаблон:Source
- Шаблон:Статья
- Шаблон:Статья
- Шаблон:Статья
- Шаблон:Статья
- Шаблон:Статья