Краткий ответ для тех, кто спешит: взломает, но не скоро.
До появления универсальных квантовых компьютеров, способных производить вычисления с достаточной скоростью, чтобы взломать криптографические алгоритмы блокчейна биткоина, по самым оптимистичным оценкам – еще лет десять. Конечно, все может произойти и быстрее. Как еще летом 2013 года писал Виталик Бутерин в статье «Биткоин не защищен от квантов», «неожиданные прорывы всегда возможны и нужно иметь запасной план действий на случай, если Эдвард Сноуден решит слить информацию о том, что у Агентства Национальной безопасности есть полностью рабочий квантовый компьютер, спрятанный в секретном дата-центре». Какой запасной план предлагал Бутерин? В случае, если предупреждение поступит заранее – хотя бы за месяц – все должны переместить свои богатства с помощью мультисиг-транзакции с не использовавшегося до этого биткоин-адреса на адрес, сгенерированный с помощью квантово устойчивой подписи Лэмпорта. Девелоперы биткоин-клиентов должны будут быстро создать Лэмпорт-патчи и заставить пользователей обновиться. Квантовый компьютер придет, а у всех уже новые бронебойные лэмпорт-адреса.
Почему нельзя уже прямо в этом году внести изменения в код блокчейна, задействовать устойчивую к квантовым расчетам криптографию и дальше спать спокойно?
Технически это возможно, но цена такого нововведения – увеличение в несколько раз (на 700% при использовании алгоритма GMSS или CMSS – улучшенной или обобщённой схемы подписи Меркла) размера транзакций и замедление скорости обработки данных в разы (за сутки с помощью Bitcoin Core на вашем компьютере вы будете генерировать не более трех биткоин-адресов). Пользоваться такой сетью будет настолько неудобно, что лучше всё это отложить до тех пор, пока количество активных кубитов в квантовых компьютерах не перевалит за тысячу.
Сколько надо кубитов, чтобы взломать блокчейн биткоина?
Согласно недавно опубликованным (ноябрь 2017 г.) результатам исследования профессора Дивеша Аггарваля и его коллег из Национального университета Сингапура, не меньше 4000 кубитов.
Чтобы вы примерно понимали, много это или мало: к началу 2017 года у Google была работающая 9-кубитовая квантовая машина, и это был лучший результат в мире. В мае рекордсменом считался компьютер IBM на 17 кубитов, потом вперед снова вырвался Google c 20 кубитами, а в июле на Международной конференции по квантовым технологиям в Москве было объявлено об успешном испытании 51-кубитового квантового компьютера, разработанного учеными Гарвардского университета и Российского квантового центра. С помощью этого компьютера впервые было достигнуто т.н. «квантовое превосходство», то есть компьютер, использующий кубиты (и в перспективе способный демонстрировать мощность, для записи которой понадобятся числа с 90 нулями), впервые оказался эффективнее «традиционных» компьютеров, оперирующих битами.
Еще одна проблема, на решение которой уйдут годы – время поддержания квантового состояния в компьютере. Пока что счет идет даже не на секунды, а на микросекунды.
Как будет выглядеть универсальный квантовый компьютер, тоже никто не знает. Пока что в разных проектах используют совершенно разные материалы – кто-то строит компьютер на сверхпроводниках, кто-то на полупроводниках, кто-то на графене, кто-то на звуковых волнах, а кто-то на биологическом материале.
Кубиты – это вообще что?
Что такое бит, вы, наверное, знаете. Это минимальная частица данных в бинарной системе, которая может иметь одно из двух значений: 1 или 0. В квантовых компьютерах есть своя частица – кубит. Отличие ее в том, что она может находиться в суперпозиции, то есть не быть ни 1, ни 0 (хотя иметь значение 1 или 0 она тоже может). Для того, чтобы попытаться осознать эту странную концепцию, предлагают представить элементарную частицу информации в виде сферы. Бит может быть либо на северном полюсе сферы («1»), либо на южном («0»). Кубит же может быть вообще в любой точке сферы. То есть квантовые компьютеры могут хранить в себе на порядки больше информации, чем единички и нолики бинарной системы, и, соответственно, мгновенно решать сложнейшие задачи. Но все это, правда, пока только в теории.
Что именно произойдет, когда появится злодейский квантовый компьютер?
Во-первых, когда появится работающая версия универсального квантового компьютера, способная взломать алгоритм цифровой подписи на эллиптической кривой (ECDSA), используемой в блокчейне биткоина для подписи транзакций, и двух хэширующих функций — SHA-256 и RIPEMD160, проблема коснется не только владельцев биткоинов. Современная банковская система защищена подобными же криптоалгоритмами, так что «Сядем все». Но если все же предположить, что целью суперзлодеев будет именно биткоин, направления атаки будет два: во-первых, квантовый компьютер позволит злодеям намайнить все оставшиеся биткоины, во-вторых, с помощью превосходящей хэш-мощи злодеи смогут провести атаку 51% и взять под контроль блокчейн, в-третьих, когда это наскучит, можно будет взяться за восстановление приватных ключей по хэшу адресов для экспроприации биткоинов со счетов граждан. Но все это слишком опереточно. Скорей всего, когда слухи о появлении «Большого квантового взламывальщика» начнут обрастать конкретикой, особо нервные держатели биткоинов начнут переводить их в альтернативную криптовалюту на блокчейне, работающем на квантово-устойчивых криптоалгоритмах, а команда Bitcoin Core возьмется за обновление блокчейна биткоина. А еще вероятней, пройдет несколько лет, прежде чем станет известно, что у АНБ есть работающий квантовый компьютер.