Куда движутся современные технологии квантового распределения ключей? В статье рассматривается один из новых протоколов квантового распределения ключей, основанный на случайных группировках и измерениях состояний Белла. На его примере предлагается подумать о будущем квантовой криптографии. Если слова кубит и состояния Белла повергают Вас в ужас, то рекомендую заглянуть под спойлер и прочитать краткую теоретическую справку. Если же Вы хорошо знакомы с терминами квантовой информатики, то можете сразу перейти к протоколу (хотя освежить знания будет не лишним). Рассмотрим некоторую двухуровневую квантовую систему, примерами которой могут быть фермион со спином s = 0,5 или состояние поляризации электромагнитного поля (фотона). Формально такая система описывается гильбертовым пространством двух квантовых состояний. В соответствии с принципом суперпозиции наиболее общее нормированное состояние в этом гильбертовом пространстве может быть представлено в виде: Данная формула в теории квантовых вычислений называется кубитом (англ.: qubit, quantum bit). В квантовой теории информации кубит определяется как единица квантовой информации, аналогично тому, как вводится бит в классической теории информации. Однако в отличие от бита в классической теории, информация которого может быть измерена без разрушения состояния, кубит при считывании переходит в одно из двух своих базисных состояний 0 или 1. Понятие кубита имеет наглядную геометрическую интерпретацию в воображаемом пространстве состояний. Два комплексных числа a и b содержат 4 действительных параметра. Общая фаза кубита, в соответствии с постулатами квантовой теории, физического смыла не имеет. Не забываем и про условие нормировки. С учётом этих двух замечаний достаточно всего 2 действительных параметра для описания кубита. Таким образом, можно представить кубит в виде: Геометрическое место точек конца такого вектора состояний образует сферу единичного радиуса, также известную как сфера Блоха. Важной отличительной чертой кубитов от классических битов является то, что несколько объединённых кубитов могут демонстрировать квантовую запутанность. Квантовая запутанность — это нелокальное свойство двух или более кубитов, которое позволяет набору кубитов выражать более сложную взаимосвязь, чем это возможно в классических системах. Как нетрудно догадаться, самая простая система для отображения квантовой запутанности — это система двух кубитов. Рассмотрим, например, два запутанных кубита в одном из состояний Белла φ+, которые будут упомянуты в дальнейшем: В этом состоянии, называемом равновероятной суперпозицией, при измерении мы получим состояния 00 или 11 с равными вероятностями. Другими словами, невозможно определить, находится первый кубит в отдельности в состоянии 0 или 1, что также верно и для второго кубита. Представьте себе, что эти два запутанных кубита разделены, один достался Алисе, а другой — Бобу. Алиса измеряет свой кубит, получая с равной вероятностью либо 0, либо 1, то есть теперь она может определить, в каком из состояний находится её кубит. Из-за наличия квантовой запутанности кубитов Боб должен теперь получить точно такие же измерения, как и Алиса. Например, если она получила 0, Боб должен получить то же самое, поскольку 00 — единственное состояние, в котором кубит Алисы находится в состоянии 0. Другими словами, что бы ни измеряли Алиса или Боб, информация об одном из запутанных кубитов улучшает наши знания о другом. Явление квантовой запутанности также позволяет одновременно изменять сразу несколько состояний отдельных кубитов, в отличие от классических битов, которые могут изменять только одно значение за раз. В настоящее время, предполагается, что квантовая запутанность — это некоторый ресурс, который является уникальным для квантовых систем. Запутанность — необходимый компонент любых квантовых вычислений, которые не могут быть эффективно выполнены на классическом компьютере. Она также является основой алгоритмов сверхплотного кодирования, квантовой телепортации и квантовой криптографии. Одним из подходов квантовой криптографии является квантовое распределение ключей. Квантовое распределение ключей (англ.: Quantum Key Distribution, QKD) — метод передачи ключа, который использует квантовые явления для гарантии безопасной связи. Эта технология позволяет двум сторонам, соединенным по открытому классическому каналу связи, создать общий случайный ключ, который известен только им, и использовать его для шифрования и расшифровки сообщений, передаваемых по классическому каналу. В настоящее время предложено много работ по данной тематике. Самый первый протокол QKD был предложен Беннеттом и Брассаром в 1984 году. Данный протокол получил название BB84 и базировался на использовании двух взаимно несмещенных состояний поляризации фотонов. Позднее Экерт предложил другой протокол QKD, названный E91, основанный на парадоксе Эйнштейна-Подольского-Розена. Новый виток в развитии QKD был связан с измерением состояний Белла (англ.: Bell States Measurement, BSM). В качестве квантового канала состояние Белла было впервые предложено в 2008, кроме того оно было подтверждено как максимально запутанное состояние двухкубитной квантовой системы. Авторы этой и этой работ предложили два протокола QKD, которые используют состояния Белла, распределенные между отправителем и получателем. Отправитель и получатель хранят по два кубита, запутанные друг с другом. После одновременного измерения состояний Белла с двух сторон реализуется квантовая запутанность уже между четырьмя кубитами. В недавней статье было предложено усовершенствование прошлых работ для предотвращения подслушивания с более низким коэффициентом ошибок при подтверждении сообщений, а также с более быстрой генерации битов ключа, основанной на четырехкубитном состоянии, которое состоит из двух пар состояний Белла. Дальнейшая речь пойдёт об этом новом протоколе. На картинках он обозначается как Protocol*. Рассматриваемый протокол предполагает использование четырёхкубитных блоков, состоящих из двух пар состояний Белла. Каждый раз передатчик (Алиса) подготавливает группу, состоящую из четырёх кубитов, для незамедлительной отправки приёмнику (Бобу). Боб производит измерение квантового состояния сразу же после получения всей партии кубитов. Это односторонний процесс, что является важным нововведением по сравнению с двусторонними протоколами, в которых квантовое состояние должно сохраняться до завершения передачи, благодаря которому протокол решает проблему ультракороткого времени когерентности квантовых состояний. Давайте приведём более формальное описание, пусть четыре кубита двух состояний Белла обозначаются индексами с 1 по 4. Условимся, что в начальный момент квантовая запутанность имеет место между 1 и 2, а также между 3 и 4 кубитами. После измерения состояний Белла с обеих сторон запутанными оказываются 1 и 3, 2 и 4 соответственно. Если начальными состояниями Белла были φ- и φ+, то общее запутанное состояние из четырёх кубитов запишется следующим образом: Из полученного выражения можно сделать вывод, что общее состояние становится суперпозицией четырех состояний, это означает, что мы можем получить четыре различных результата при измерении комбинаций состояний Белла. Также обратим внимание, что выписанное уравнение представляет лишь одну из возможных комбинаций. Вкратце, существует несколько форм случайной группировки этих четырех кубитов, из которых только одна группировка будет определена как правильная. Это основной метод шифрования информации во время коммуникации. Шаг 1. Подготовка состояний. Алиса подготавливает одну из комбинаций четырёхкубитных состояний, например, представленную в уравнении выше. Такая комбинация P состоит из четырёх кубитов. Каждой паре состояний Белла ставятся в соответствие два информационных бита ключа (как правило, используется квантовое сверхплотное кодирование). Алиса запоминает текущую случайную группировку и пару состояний Белла, которая участвует в передаче.  Шаг 2. Передача кубитов. Алиса случайным образом перемешивает эти четыре кубита и отправляет их Бобу по квантовому каналу. Шаг 3. Измерение состояний Белла. Боб принимает отправленные ему кубиты и случайным образом разбивает их на две части. После чего он выполняет измерение состояний Белла на этих двух частях и отправляет информацию о группировке Алисе по классическому каналу. Шаг 4. Сравнение результатов. Алиса принимает информацию о группировке Боба и сравнивает их с сохранённой информацией о P. Если Алиса увидит совпадение группировок, она объявит по классическому каналу True и весь процесс коммуникации может перейти к шагу 5 или вернуться на шаг 1 для следующей итерации. Если же совпадения не случится, она объявит False, после чего оба участника отбросят данные текущей итерации и процесс коммуникации начнётся сначала с шага 1 или оборвётся вовсе.  Шаг 5. Формирование согласованных ключей. После нескольких итераций последовательностей шагов c 1 по 4 Алиса и Боб получают двоичную последовательность, которая представляет собой некоторый необработанный ключ R (также называемый сырым). Под RA и RB будем понимать необработанные ключи Алисы и Боба соответственно. Алиса случайным образом выбирает части RA и собирает из них свой согласованный ключ CA, после чего объявляет позиции выбранных частей по классическому каналу. Затем Боб согласно этим позициям выбирает свой согласованный ключ CB из ключа RB. Шаг 6. Усиление конфиденциальности. Из полученного набора битов CB Боб выбирает некоторые в качестве битов чётности DB и объявляет DB вместе с их позициями. Аналогичным образом Алиса выбирает свой набор DA и сравнивает его с полученным DB. Если процент битовых ошибок в таком сравнении меньше некоторого наперёд заданного порога, то соединение может считаться безопасным и процесс коммуникации может перейти к следующему шагу 7; если нет, то необходимо вернуться на шаг 1 или же окончательно оборвать связь. Шаг 7. Формирование окончательных ключей. На последнем шаге окончательно выбираются ключи R'A и R'B, которые будут использоваться для шифрования в дальнейшем процессе коммуникации по классическому каналу. Теоретически, в идеальном случае должно получиться R'A = R'B, где R'A — это необработанный ключ RA без битов CA, аналогичное верно для R'B. Уже упоминалось, что рассматриваемый протокол решает проблему ультракороткого времени когерентности квантовых состояний. Это серьёзное улучшение, которое делает возможными дальнейшее развитие сфера QKD в целом. В отличие от классических систем в QKD даже в идеальном случае есть вероятность получить неверные кубиты в силу вероятностной природы квантовой механики. Подробный анализ этого явления можно найти в соответствующих научных статьях. Оказывается, что по этому параметру новые протоколы заметно превосходят свои аналоги (BB84, E91). Отличительной особенностью протоколов QKD является возможность обнаружить злоумышленника (Еву) в канале. Например, пусть Ева производит непрозрачную атаку перехвата — повторной передачи. Тогда если нам захочется обнаружить подслушивающее устройство с вероятностью pd = 1 - 10-9, то нам потребуется следующее число бит общего ключа: Подводя итоги, подчеркнём, что рассмотренный протокол является перспективным усовершенствованием используемых в текущий момент квантовых протоколов. Приведём некоторые примеры практического использования QKD протоколов. Лос-Аламосская Национальная Лаборатория в 2007 году продемонстрировала использование квантового распределения ключей по оптоволокну длиной более 140 км с использованием протокола BB84. Примечательно, что этого расстояния достаточно для почти всех участков современных волоконно-оптических сетей. Имеет смысл отметить достижение физиков из Института квантовых вычислений, которые в 2017 впервые продемонстрировали функционирование квантового протокола распределения ключей от наземного передатчика к движущемуся самолету. Также в настоящее время множество компаний предлагают коммерческие системы распределения квантовых ключей: ID Quantique, MagiQ Technologies Inc. и другие. В 2004 году в был осуществлен первый в мире банковский перевод с использованием квантового распределения ключей. В 2013 году Мемориальный институт Баттеля установил систему QKD, созданную ID Quantique, между их главным кампусом и их производственным предприятием в соседнем городе. Известное Вам РЖД в 2019 создало департамент квантовых коммуникаций. Кроме того авторы рассматриваемого протокола обещают в скором времени представить практическую демонстрацию. Но, к сожалению, не всё так гладко. Давайте пройдёмся по слабым сторонам QKD. Основным недостатком QKD является то, что эта технология опирается на аутентифицированный классический канал связи. Иными словами, несмотря на всю защищённость при генерации ключа, Вы всё равно вынуждены обеспечивать запредельный уровень защиты передачи данных по классическому каналу. При манипулировании кубитами используются квантовые вентили, которые добавляют некоторый шум в дискретное пространство состояний. Это делает на порядок хуже все вероятностные оценки, на которых базируются QKD протоколы. В 2008 году эксперт по безопасности Брюс Шнайер отметил, что распределение квантовых ключей "так же бесполезно, как и дорого". В настоящее время QKD системы всё ещё довольно дорогие, хотя в последние годы ситуация начала быстро меняться в лучшую сторону. Однозначных выводов тут не будет, предлагаю оставить открытый финал. На текущий момент как в науке, так и индустрии сформировались две основные группы: за и против "квантов". К какой группе относитесь Вы? Как Вы думаете, есть ли будущее у квантовой криптографии и QKD в частности? P.S. Буду рад открытой дискуссии, замечаниям и предложениям.