Как устроен и зачем нужен квантовый компьютер
Сейчас много говорят о новых технологиях вычисления — в частности, то и дело звучат слова «квантовые вычисления», «квантовый интернет» и даже «квантовая криптография». Посмотрим, что это такое и нужно ли оно нам. Начнём с квантового компьютера.
В обычном компьютере все вычисления основаны на понятии «бит». Это такой элемент, который может принимать значения 0 или 1. Физически это реализовано так:
- В компьютере есть деталь под названием транзистор. Представьте, что это кран на трубе: если его включить, вода польётся, если выключить — остановится.
- В транзисторе вода — это электричество, и включение-выключение крана тоже зависит от электричества. Представьте, что краны соединены между собой так, что вода из одного крана включает или выключает другой кран, — и так каскадом по цепочке.
- Транзисторы соединены таким хитрым образом, что когда они включаются и выключаются, на них можно производить математические вычисления.
- Из-за того, что транзисторов очень много (миллиарды), а работают они очень быстро (близко к скорости света), транзисторные компьютеры могут очень быстро совершать математические вычисления.
- Всё, что вы видите в компьютере, — это производные от вычислений. Вы видите окно, буквы, картинки, а где-то в самой-самой глубине это просто сложение и вычитание, а ещё глубже — включение-выключение кранов с электричеством на скорости света.
Транзистор в компьютере может принимать значение 1 или 0, то есть «включён» или «выключен». С точки зрения компьютерной логики, этот транзистор называется битом. Это минимальная единица информации в компьютере. Физически бит может быть в процессоре, на чипе памяти, на магнитном диске, но суть одна: это какое-то физическое пространство, которое определённо либо включено, либо выключено.
Ключевое слово здесь — «определённо». Программист и инженер может точно узнать, в каком состоянии находится тот или иной бит. Заряд в нём либо есть, либо нет, никаких промежуточных состояний там не существует.
В квантовом компьютере вместо битов — кубиты. Кубиты — это квантовые частицы, у которых есть интересная особенность: кроме стандартных 0 и 1 кубит может находиться между нулём и единицей — это называют суперпозицией. Нагляднее это видно на рисунке:
Кубит может принимать все значения, которые видны на цветной сфере
Квантовый компьютер: исходные вероятности
Пока рано беспокоиться, ведь программное обеспечение майнеров настроено на сохранение предстоящих блоков в течение закрытого периода времени: один блок каждые 10 минут для биткоинов и один блок в 2 минуты для некоторых версий.
Сейчас, с криптографическим алгоритмом SHA-256 в самом ядре конструкции блокчейна шансы угадывания правильной комбинации закрытых ключей оцениваются как один из 115 квадриллионов ещё и в степени.
То есть единица и 77 нулей за ней!
Согласитесь, это невероятно большое число, где количество комбинаций с частными ключами больше, чем существует песчинок на нашей планете. Поэтому шанс подобрать ключ без квантового компьютера к криптовалютному кошельку стремится к нулю.
В настоящее время для взлома потребуется около 0,65 миллиарда миллиардов лет. С квантовычислениями это резко изменится. Но насколько велик реальный риск?
Атака перебором: силенок не хватит
Рассмотрим атаку, которая приходит на ум большинству людей при упоминании квантовых компьютеров — атаку путём простого перебора (bruteforce). Это значит, что вы раз за разом пробуете все возможные ключи, пока не получите правильный. Если у вас есть достаточно времени, вы можете подобрать любой пароль. Проблема состоит в том, что при обычных вычислениях потребуются многие миллиарды, нет, триллионы лет вычислений самого новейшего суперкомпьютера, чтобы получить нужный ключ путём перебора. Но, может быть, квантовый компьютер сделает это быстрее?
Обратимся к книге известного эксперта Брюса Шнайера «Прикладная Криптография»:
Одно из следствий из второго закона термодинамики состоит в том, что для представления единицы информации нужно определённое количество энергии.
Запись единичного бита путём изменения состояния системы потребует энергии не менее чем kT, где «T» это абсолютная температура системы и «k» это константа Больцмана.При постоянной k = 1.38×10-16 эрга/°Кельвин, и средней температуре во Вселенной в 3.2° Кельвина, наш идеальный компьютер будет работать при 3.2°K. При этом он будет потреблять 4.4×10-16 эрга каждый раз, когда он изменит состояние одного бита. Запуск компьютера при температурах более низких потребует дополнительного расхода энергии для теплового насоса.
Годовая энергия, излучаемая Солнцем, равняется 1.21×1041 эрга. Этого достаточно, чтобы обеспечить 2.7×1056 переключений бита идеального компьютера; то есть, этого достаточно для перебора 187-битного шифрования за год. Хорошо. Предположим, мы построим сферу Дайсона вокруг Солнца и будем улавливать и копить ВСЮ солнечную энергию 32 года подряд, без каких любо потерь. В этом случае, мы сможем обеспечить энергией компьютер, который позволит нам досчитать до 2192. Заметим, что это мы просто перебираем биты. У нас не останется энергии ни на что другое, чтобы совершать с этими битами хоть какие-либо полезные вычисления.
Предположим, мы не ограничимся и нашим Солнцем. Обычная сверхновая дает что-то вроде 1051 эрг (при этом в сотни раз большее количество энергии выделяется в виде нейтрино, её мы не учитываем из-за практических сложностей конвертации этой энергии). Если вся эта энергия пойдёт на одну сверхбольшую вычислительную оргию, мы сможем перебрать 219-битный ключ полностью, от начала и до конца.
Эти цифры не имеют ничего общего с технологией реальных устройств; это просто максимум перебора при идеальной эффективности, которую позволяют нам законы термодинамики. Они показывают нам, что атака перебором на 256-битный ключ неосуществима, пока компьютеры делаются из обычной материи и находятся в нашем пространстве.
Таким образом, если даже нам удастся собрать всю без остатка энергию, которая выделяется при взрыве Сверхновой, и всю без остатка направить её в наш идеальный компьютер — нам не удастся получить подбор даже одного обычного 256-битного ключа шифрования.
Речь, однако, не идет о простом переборе — атака на коммерческие алгоритмы шифрования подразумевает атаку на лежащую в их основе математику.
Квантовый компьютер: как защитить блокчейн
Естественно, проблема квантовых компьютеров и взлома в основном касается блокчейнов в том виде, в котором они представлены на сегодняшний день. Основными способами предотвратить возможный крах являются:
- Создание приватных блокчейнов, чья суть напрямую противоречит базовой философии современных криптовалют, поскольку каждому его участнику придется получить разрешение на его использование от создателя или пройти проверку по конкретному протоколу;
- Усложнение криптографии и улучшение ее устойчивости к квантовым вычислениям (например, задействование одноразовой цифровой подписи Лэмпорта/Винтерница или дерева Меркла);
- Создание совершенно нового квантового блокчейна, ставшего одной из самых актуальных тем для криптоэнтузиастов за последние несколько лет.
Как блокчейны справятся с угрозой квантовых компьютеров
Пока угроза квантовых вычислений — это лишь потенциальная проблема для криптоиндустрии. Еще лет десять квантовые компьютеры не смогут претендовать на то, чтобы нарушить системы безопасности блокчейнов. Но и после их запуска, вероятно, ничего страшного не случится.
Квантовые компьютеры вряд ли будут доступны частным лицам — эти устройства слишком дороги и сложны в использовании. Их нельзя будет купить «просто так» — поэтому ими не смогут завладеть преступники. Коммерческое использование квантовых компьютеров будет очень дорогим и по карману только крупным компаниям или, может, даже целым странам. Вероятно, квантовые устройства будут использоваться для научных и исследовательских задач. Конечно, есть вероятность, что крупные компании или власти стран захотят использовать их для взлома блокчейнов. Но у них может ничего не выйти.
Блокчейны технологически очень сильно опережают разработки по квантовым вычислениям. Эксперты полагают, что это отставание никогда не будет преодолено. Прогресс квантовых вычислений не будет внезапным — блокчейн-разработчики смогут быть на несколько шагов впереди.
Основные способы, с помощью которых можно обезопасить блокчейн от квантовых угроз:
- — Увеличить размер приватного ключа — тогда квантовым компьютерам понадобится слишком много времени на их взлом;
- — Использовать более сложный алгоритм шифрования (например, SHA-512 вместо SHA-256, который сейчас используется в сети Bitcoin);
- — Перейти на постквантовую криптографию, устойчивую к квантовым вычислениям.
Квантово-устойчивые блокчейны должны появиться раньше, чем устройства, которые смогут их взломать. И на рынке уже есть проекты, работающие в этом направлении.
Например, блокчейны ArQit, IOTA, HyperCash, Quantum Resistant Ledger, Starkware. Все они работают на постквантовых алгоритмах, например, дереве Меркла. Пока таких проектов сравнительно немного, но, уверены, что в ближайшие годы их появится гораздо больше. Возможно, многие из них будут государственными.
Так, например, предложения по шифрованию, устойчивому к квантовым вычислениям, начал собирать Национальный институт стандартов и технологий США (NIST). По оценкам учреждения, до появления компьютеров, способных взломать классическое шифрование, еще лет двадцать.
Двойная трата
Другой возможной атакой является так называемая атака двойной траты. Она определяется тем, насколько быстро квантовый компьютер может вывести ваш частный ключ из уже видимого общего ключа.
Если злоумышленник сможет это сделать до подтверждения вашей транзакции в блоке, вы оба по сути пытаетесь потратить один и тот же биткоин, и злоумышленник выигрывает.
Как создаются квантовые компьютеры?
Традиционные компьютеры по сути состоят из миллионов крошечных переключателей, которые управляют потоком электронов. Но поскольку мы сократили эти вентили до субатомного уровня, способность контролировать, течет ли электричество через вентили или нет, становится немного сложной задачей.
Благодаря идее, называемой квантовым туннелированием, когда мы добираемся до субатомного уровня, электроны могут просто перепрыгивать через вентили по своему желанию, что делает способность машины управлять этим потоком бесполезным. В результате квантовые компьютеры сделаны совсем по-другому.
Они работают в странном и удивительном мире субатомных частиц, где кубиты совершают странные вещи, такие как нахождение в одном из 16 состояний одновременно — до тех пор, пока их не обнаружат, и они не упадут в одно состояние.
В результате «квантовые вентили», в отличие от «логических вентилей», которые используются в традиционных вычислениях, проходят через процесс, в котором он устанавливает некоторые кубиты, применяет квантовые вентили, чтобы «запутать» их, манипулирует возможными вероятностями и затем измеряет результат. Запутались? Да, это все не так просто понять.
Но вам нужно понять, что для того, чтобы контролировать этот процесс, Google, например, использует специальный сверхпроводящий металл, работающий при температурах, которые в восемь раз холоднее чем в космосе, что далеко от нашего обычного ПК. Поэтому квантовые компьютеры вряд ли покинут лабораторию в ближайшее время и окажутся у нас вместо ПК.
Квантовый вентиль — это базовый элемент квантового компьютера, преобразующий входные состояния кубитов на выходные по определённому закону.
Теоретически, квантовые вычисления могут сломать криптографию, обеспечивающую защиту криптовалют, таких как Биткойн и Эфир, но, по мнению Бутерина, квантовые компьютеры, подобные анонсированному от Google, являются скорее доказательством концепций, чем полностью реализованными технологиями.
Текущая криптография, используемая в основных блокчейна, также может быть достаточно сильной, чтобы противостоять даже полностью реализованным квантовым компьютерам, что означает, что не вся криптография будет уязвимой.
Квантовые компьютеры могут использоваться не только для взлома криптографии, но и для создания более мощного шифрования. Существуют планы обновления для блокчейнов, таких как Ethereum, для сопротивления квантовым компьютерам.
Квантовый компьютер: коротко о главном
Итак, для начала мы вкратце рассмотрим принцип работы квантовых компьютеров. Такие устройства работают на так называемых «кубитах», которые одновременно могут находиться в двух пограничных состояниях – 0 и 1. В классических же ПК каждый бит может иметь только одно из этих значений. Соответственно, вычислительная мощность квантового компьютера возрастает экспоненциально в сравнении с даже самыми мощными обычными устройствами.
Стоит отметить, что эффективность компьютера, который работает на «кубитах» разная в зависимости от поставленных задач. В некоторых случаях разница в производительности может быть даже незаметна для пользователя, а в некоторых может достигать огромного значения. Такой технологии уже заинтересовались многие компании и государственные органы. Но как же сочетаются квантовый компьютер и криптовалюты? Какие последствия будет иметь запуск данной технологии для цифровых монет, построенных на криптографии? Попробуем в этом разобраться.
Продолжение следует: квантовые компьютеры VS крипта
Несмотря на то, что квантовые компьютеры представляют собой потенциальную угрозу, мир криптографии уже ищет ответы на вопросы, которые все еще нужно задать. Многие текущие блокчейн-проекты, возможно, не будут устойчивы к мощи квантовых компьютеров, но на данный момент эти квантовые компьютеры не могут сделать ничего, что было бы удаленно полезно, не говоря уже о взломе закрытых ключей или захвате сети.
Интересно, что Агентство национальной безопасности США разрабатывает квантово-устойчивую криптовалюту. АНБ делает это для борьбы с киберугрозами из других стран. Главной угрозой являются Северная Корея, Китай, Россия и Иран. Квантово-устойчивая криптовалюта предположительно необходима для устранения угрозы кибервойны.