Квантовые технологии стали своеобразным технологическим Святым Граалем. Все крупнейшие государства и компании вкладывают огромные деньги в разработку, но никто толком не понимает, как в финале будет выглядеть инфраструктура квантовых вычислений и что это даст. Текущая ситуация очень сильно напоминает историю с управляемым термоядерным синтезом, когда полноценный запуск состоится уже вот-вот, но надо немного подождать, пока мы решим новые возникшие проблемы. Часть технологий откровенно сырая, а часть работает уже сейчас.
За последние годы уже несколько раз компании объявили, что достигли квантового превосходства — способности решать задачи, невыполнимые для классических компьютеров. В 2019 году Google опубликовала статью в Nature, заявив о достижении квантового превосходства на массиве из 54 кубитов. 3 декабря 2020 года уже китайские ученые сообщили о достижении квантового превосходства с новым суперкомпьютером Jiuzhang на запутанных фотонах. В этом исследовании за 200 секунд была решена задача, которая на обычных суперкомпьютерах решалась бы более 1,5 миллиардов лет.
При этом все пишут только о количестве кубитов в системе, но это далеко не единственная ключевая характеристика. Есть еще как минимум две, не менее важные:
Уровень ошибок — квантовые компьютеры отдают правильный результат вычислений с какой-то долей вероятности.
Время удержания когерентности — вам не нужен квантовый компьютер на 300 кубитов, который потеряет свою квантовую когерентность раньше, чем вы начнете вычисления.
Предлагаю пройтись по текущим достижениям в этой области. Посмотрим, почему РЖД стали крупнейшим квантовым оператором в России. А еще попробуем понять, пора ли уже внедрять шифрование McEliece в TLS и паниковать или можно еще немного подождать.
Бит против кубита
Квантовые вычисления очень часто воспринимаются как некая магия, где волшебная коробочка, погруженная в жидкий гелий, может заменить целые суперкомпьютерные кластеры. На самом деле эта технология предполагает огромный рост производительности, но только в ограниченной сфере задач. Условно говоря, вы сможете во много раз быстрее выполнять расчеты по фолдингу белков, нахождению элементов в базах данных, моделированию атмосферы или взлому классических асимметричных шифров вроде RSA. Но вряд ли это вам поможет в выполнении линейных алгоритмов, не предполагающих параллельных вычислений.
Основа любого квантового компьютера — кубит. По сути, это аналог бита в классических системах. Ключевое отличие в том, что бит всегда имеет одно из двух возможных значений — 0 или 1. При этом каждым битом надо манипулировать отдельно. С кубитами все иначе. У кубита в «рабочем состоянии» до коллапса волновой функции нет определенного значения. Он находится в неопределенном состоянии суперпозиции, принимая все возможные значения одновременно. Кубиты должны быть запутаны между собой и работать как единая система, так как одиночный кубит сам по себе довольно бесполезен.
При этом квантовый компьютер тем эффективнее, чем больше кубитов одновременно находятся в запутанном состоянии. Почему так происходит?
Классическая система из n бит может быть описана с помощью n нулей и единиц.
Квантовая система из n кубитов уже будет содержать 2^n бит информации.
Таким образом, по мере добавления отдельных кубитов в общий запутанный регистр, содержащийся объем информации растет по экспоненте. Считается, что 50 кубитов уже достаточно для получения квантового превосходства, при котором квантовый компьютер сможет решать задачи, невозможные для классических вычислительных систем. При достижении порога в 300 кубитов число возможных состояний уже становится 2^300, что превышает количество атомов во всей вселенной.
Обычный компьютер выполняет какой-то алгоритм только для одного набора данных. Квантовые элементы могут принимать несколько значений одновременно, что позволяет производить вычисления не на одном наборе данных, а на всех возможных значениях одновременно. По сути, это идеальный вариант параллелизма, лишь бы данные помещались в регистр. Проблема заключается в том, что сложность удержания системы в когерентном состоянии также растет экспоненциально.
Физические варианты реализации
Как бит может быть представлен во многих физических вариантах реализации, так и кубиты могут сильно отличаться друг от друга по своей природе. На данный момент есть несколько ключевых вариантов:
Сверхпроводники
Ионные ловушки
Нейтральные атомы
Фотоны
Технология находится в самом начале развития, поэтому предугадать лидера очень трудно. Сложность удержания системы растет по экспоненте. Из-за этого какие-то перспективные направления могут давать более простую реализацию на малом количестве кубитов, но почти непреодолимые технологические барьеры на большом. В то же время текущие аутсайдеры могут показать более хорошее масштабирование на больших системах.
Сверхпроводники
Сейчас вперед вырвались квантовые компьютеры на базе сверхпроводников. Они все требуют сверхнизких температур в районе 0.01 К. Именно на этой технологической базе работают устройства, разработанные в IBM, Google и D-Wave.
Кубиты в этом исполнении представляют из себя обычные электрические цепи, которые работают на базе джозефсоновских контактов — явления протекания тока через слой диэлектрика, разделяющего два сверхпроводника. Отчасти джозефсоновские контакты представляют собой аналог транзисторов в классических системах.
Основная сложность масштабирования систем на базе сверхпроводников в том, что каждый проводник уникален, так как изготавливается искусственно и с определенной погрешностью, свойственной фотолитографии. Это приводит к необходимости сложной коррекции ошибок, уникальной для каждого экземпляра.
Атомы и ионы
Ионы и атомы хороши тем, что они абсолютно идентичны. Каждый кубит абсолютно стандартный. Логические операции на ионах выполняются с меньшей погрешностью, так как заряженные частицы хорошо и четко взаимодействуют между собой.
Но и тут проблемы начинаются при попытках масштабирования. Каждый ион необходимо поймать в ловушку электрического поля. Пока их немного — все в порядке. Как только вы сталкиваетесь с задачей выстраивания единого запутанного квантового регистра на сотню ионов, вы получаете почти неразрешимую задачу по удержанию кубитов в сложнейших электрических полях на очень малом расстоянии друг от друга. По мере роста системы сложность только увеличивается.
Кубиты на базе холодных нейтральных атомов обычно подвешивают в глубоком вакууме лазерным излучением. Световые ловушки позволяют удерживать отдельные элементы в строго рассчитанных координатах. Но тут возникает проблема стабильности системы и время удержания когерентности.
Свет
Квантовые вычисления на фотонах сейчас находятся в самом начале пути. Если ионами, холодными атомами и сверхпроводниками вы относительно свободно можете манипулировать, то с фотонами все иначе. Ими очень сложно управлять. С фотонами не проблема выполнить однокубитные операции. Двухкубитные операции уже намного сложнее, так как их непросто изолировать и заставить обмениваться между собой квантовой информацией. Также есть проблема в ячейках памяти для хранения квантового состояния системы. Точно сохранить и извлечь данные пока проблема.
Проблема разработки и дебага
Есть принципиальный предел, до которого можно рассчитывать на привычные IDE, дебаг и проектирование — это системы на 50 кубитов. Такой объем теоретически реально симулировать на классических компьютерах. Как только вы добавляете дополнительный кубит, сложность симуляции удваивается.
Таким образом, для разработки и отладки алгоритмов на несколько тысяч кубитов вам не хватит обычной рабочей станции и даже суперкомпьютера. Видимо, придется изобретать что-то вроде IDE с подключением к удаленному квантовому компьютеру. Про классический дебаг придется забыть.
Проблема ошибок
Квантовые процессоры ближе всего к аналоговым вычислительным машинам. Они имеют фундаментальную погрешность вычислений. Например, вы хотите считать состояние одиночного кубита. Вероятность корректного считывания может составлять в районе 99,4%. Чтобы избежать некорректных вычислений, применяют специальные алгоритмы коррекции. Фундаментальная проблема заключается в том, что если у нас вероятность успешного считывания равна 0,994 для одного кубита, то для двух уже 0,994*0,994=0,988. Таким образом, для системы из 50 кубитов вероятность успешного считывания/записи всех узлов будет уже 74%. Если вы собрались ломать SHA-256, то вам потребуется уже 256 кубитов. Шансы с первого раза корректно считать каждый узел в такой системе — 21,4%.
Проблема декогеренции
Как я уже было сказано выше, вам нужно удерживать всю систему в связанном состоянии. Причем чем больше кубитов вы удерживаете, тем это сложнее. Например, в результате броуновского движения или дрейфа отдельных частиц в электрическом поле какой-то кубит может выйти из когеренции. Если такое произойдет, то вычисления придется начинать сначала. Поэтому вы можете создавать системы на 1 000 кубитов, но если алгоритм выполняется медленнее, чем система распадается, то практических результатов вы не получите. Риски декогеренции растут все по тем же классическим законам комбинаторики.
Области применения
У квантовых технологий есть несколько ключевых областей применения. В первую очередь все вспоминают про текущую криптографию, которая потенциально станет бесполезной после массового внедрения квантовых систем на тысячи кубитов. Но это направление не ограничивается только квантовыми вычислениями. Многие параллельные ветви развития обеспечивают, например, связь, которая защищена от MitM на фундаментальном уровне.
Квантовый брутфорс
Наиболее известные из разработанных алгоритмов для «квантового брутфорса» — это алгоритмы Шора и Гровера. Они позволяют быстро факторизировать числа и подбирать коллизии к хешам соответственно. На данный момент полусотни кубитов недостаточно, чтобы поставить под угрозу всю современную криптографию, но потенциально может потребоваться переход на постквантовые алгоритмы, которые обеспечат стойкость условного TLS 3.0, даже при наличии у атакующего квантовых вычислительных систем.
Для подбора общего секретного ключа, например, придется использовать SIDH — аналог протокола Диффи–Хеллмана, основанный на блуждании в суперсингулярном изогенном графе.
Квантовое распределение ключей
Протокол подготовки и измерения
Одно из очень перспективных направлений — протокол квантового распределения ключа. Один из известных протоколов — BB84 — был предложен еще в 1984 году Чарльзом Беннетом и Жилем Брассаром. Он работает за счет фундаментального ограничения, наложенного теоремой о запрете клонирования.
Носителями информации являются фотоны в четырех различных квантовых состояниях. Обычно подразумевается поляризация под углами 0°, 45°, 90°, 135°. С помощью измерения можно различить только два ортогональных состояния:
Фотон поляризован вертикально или горизонтально (0° или 90°)
Фотон поляризован диагонально (45° или 135°)
При этом невозможно за одно измерение отличить фото с горизонтальной поляризацией от фотона с углом поляризации 135°.
Если канал не подслушивается, то Алиса и Боб смогут подобрать общую скоррелированную строку случайных бит, которую можно будет использовать уже в классических схемах симметричной криптографии. Если часть фотонов перехватывает, измеряет и ретранслирует Ева, то в канале начинают расти измеримые ошибки. По оценкам, если ошибки в канале не превышают 11%, то это значит, что у Евы нет достаточного количества данных для получения ключа. Если же измеренный уровень ошибок превышает описанный уровень, то алгоритм подбора ключа начинается сначала.
В 1989 году Беннет и Брассар в Исследовательском центре IBM построили первый работающий прототип этой системы, а уже в 2011 году в Токио прошла демонстрация проекта “Tokyo QKD Network” с безопасной передачей данных на 45 км по обычному оптоволокну.
В июне 2021 года запустили квантовую линию связи между Москвой и Санкт-Петербургом протяженностью 700 км. Проект реализовывает РЖД.
Протоколы, основанные на запутанности
Другой способ связан с запутыванием фотонов и передачей одной части такой пары Алисе, а другой — Бобу. При перехвате происходит коллапс волновой функции, что приводит к невозможности незаметного перехвата данных. Проблема этой технологии в сложности доставки запутанной пары всем участникам, так как никакие ретрансляторы в этом случае невозможны.
Совместный эксперимент Китайской академии наук и Австрийской академии наук позволил поднять квантово-защищенный канал связи между Веной и Пекином. При этом само сообщение передавалось по открытым каналам шифром Вернама, а ключами к расшифровке стали квантовые состояния запутанных фотонов.
Что сейчас происходит в этой области
Гонка в области квантовых вычислений и квантовой криптографии сравнима с Манхэттенским проектом. Единых стандартов и подходов нет, будущие архитектурные лидеры пока неочевидны. Но уже сейчас крупные частные корпорации (вроде Google и IBM) готовы предоставлять для удаленных вычислений свои квантовые компьютеры по модели IaaS и PaaS. По мере наработки опыта в этой сфере идет массовая оптимизация и удешевление.
Расходы на квантовые вычисления, предоставленные госучреждениям, университетам и научным группам, исследовательским организациям, достигли $412 млн. Это не так много, но рынок быстро растет и, по оценкам экспертов, должен достигнуть $8,6 млрд к 2027 году.
В России подключились крупные игроки в виде РЖД, Росатома и Ростеха. Предполагается, что в общую дорожную карту включатся крупные университеты и научно-технологические комплексы, такие как Сколково.
Что уже есть
Защищенные квантовые каналы связи есть уже сейчас. Используют как системы с квантовой запутанностью, так и протокол измерения и подготовки. Гарантированно защищенная связь крайне востребована как военными, так и крупными банками. В промышленной эксплуатации пока системы не используются.
Университет «Иннополис» и компания QRate реализовали интересный проект защиты систем автономного управления беспилотника. По сути, задача состояла в создании секретного шифроблокнота достаточного размера, чтобы его впоследствии можно было использовать совместно с классическими алгоритмами по общим сетям связи. Во время зарядки электромобиля происходит параллельное накопление квантовых данных через оптический канал. Затем автомобиль использует полученные данные для установления квантово-защищенного канала мобильной связи на базе классического OpenVPN и ключей, которые хранятся в специальном устройстве.
Понятно, что приложение экспериментальное, но оно применимо в любых отраслях, где есть высокие риски перехвата и компрометации критических данных.
Что только планируется
Квантовые вычисления еще очень сырые. По сути, когда мы слышим про 1 000 кубитов у того же D-wave, надо понимать, что на самом деле это кластер из 8-кубитных когерентных блоков. В результате практическая применимость таких систем сильно ограничена узким кругом задач.
По мере роста длительности когерентного состояния, числа кубитов и снижения ошибок, станут возможны прорывы в области химии, фармакологии и других областях, которые требуют сложных параллельных вычислений. Так, станут возможны разработки сложнейших синтетических ферментов, которые смогут катализировать нужные реакции в организме пациента. На такое проектирование сейчас просто не хватает мощностей, чтобы это было рентабельным. Станет возможным предсказывать биохимические и другие свойства будущих препаратов по их молекулярной структуре. Это приведет к прорыву в процессах разработки и резкому снижению тупиковых вариантов лекарств.
Массовая компрометация текущих алгоритмов шифрования тоже придет со временем, но, скорее всего, мы успеем осуществить плавный переход на постквантовые алгоритмы до того, как это станет массовой проблемой.
В текущем виде квантовые технологии очень интересны, перспективны, но для получения коммерчески значимых фактических преимуществ придется вложить огромные средства в разработку.