Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Многие эксперты по криптоанализу задаются вопросом: Сможет ли криптовалютная индустрия выстоять перед лицом новой технологической революции? В этой статье речь пойдет об современных методах защиты финансовых операций и интернета, основанные на криптографии, которые могут оказаться бессильными перед достаточно мощным квантовым компьютером, уязвимый ли криптовалюты, чей рынок оценивается в сотни миллиардов долларов. Исследование показывает, что алгоритм подтверждения работы, используемый в Bitcoin, относительно устойчив к квантовым атакам в ближайшее десятилетие, благодаря высокой скорости специализированного оборудования для майнинга. Однако, используемая Bitcoin система цифровых подписей на эллиптических кривых может быть взломана уже к 2027 году. В качестве альтернативы рассматривается алгоритм Momentum, который более устойчив к квантовым вычислениям. Также анализируются другие методы защиты, которые могут обеспечить безопасность и эффективность блокчейн-приложений в будущем.

В целом, результаты исследования говорят о том, что квантовые компьютеры представляют собой серьезную угрозу для криптовалют, и необходимо разрабатывать новые методы защиты, чтобы обеспечить их безопасность в будущем. Также на примере мы рассмотрим процесс компрометации извлечения секретного ключа Nonce значение K из уязвимой RawTX транзакции с помощью процесса машинного обучение BitcoinChatGPT.1

Биткоин, как децентрализованная и защищенная криптографией цифровая валюта, успешно существует с 2008 года, вдохновляя создание множества других криптовалют. Его безопасность обеспечивается механизмом подтверждения работы (proof-of-work) и криптографическими подписями на основе эллиптических кривых. Однако, развитие квантовых компьютеров представляет серьезную угрозу для Биткоина и всей современной криптографии, используемой в интернете и финансовых транзакциях. Исследование показывает, что алгоритм подтверждения работы, используемый в Биткоине, относительно устойчив к квантовым атакам в ближайшие 10 лет благодаря высокой скорости специализированного оборудования для майнинга. Но система цифровых подписей на эллиптических кривых уязвима для алгоритма Шора и может быть взломана уже к 2027 году, что позволит злоумышленникам получать секретные ключи из транзакции Биткоина и приватные ключи из открытых. В качестве решения предлагается использовать альтернативные алгоритмы, такие как Momentum для подтверждения работы, и квантово-устойчивые схемы подписи. В целом, результаты исследования говорят о том, что квантовые компьютеры представляют собой серьезную угрозу для Биткоина, и необходимо разрабатывать новые методы защиты, чтобы обеспечить его безопасность в будущем. Квантовые компьютеры могут взломать Биткоин в течение пяти лет. Это может привести к потере более 3 трлн долларов на криптовалютных и других рынках и вызовет глубокую рецессию.



Основы работы Биткоина и принципы защиты от атак: механизм блокчейна и доказательство работы

В этой части статьи мы постараемся объяснить, как устроен Биткоин, чтобы было проще понять возможные атаки с использованием квантовых компьютеров. Описание дается в общих чертах, так как основные принципы работы похожи и у других криптовалют. Все транзакции записываются в публичный реестр – блокчейн. Транзакции объединяются в блоки, которые считаются произошедшими одновременно и выстраиваются в цепочку. Каждый блок содержит ссылку на предыдущий в виде его хеша. Новые блоки добавляют майнеры, используя механизм «доказательства работы» (Proof-of-Work, PoW). Биткоин использует алгоритм Hashcash. Майнеры ищут подходящий заголовок блока, чтобы его хеш был меньше определенной величины. Заголовок содержит информацию о транзакциях, хеш предыдущего блока, временную метку и случайное число (nonce). Сложность задачи подбирается автоматически, чтобы блок находился примерно за 10 минут. В Биткоине используется двойное хеширование SHA256.


Python-скрипт: DoubleSHA256Hasher.py


В этом скрипте:

  1. Импортируется модуль hashlib.
  2. Определяется функция double_sha256, которая принимает данные в байтовом формате2.
  3. Внутри функции:
    • Вычисляется хеш SHA256 от входных данных с помощью hashlib.sha256(data).digest(). Метод .digest() возвращает хеш в виде байтовой строки.
    • Затем вычисляется хеш SHA256 от полученного хеша.
    • Функция возвращает второй хеш.
  4. Пример использования показывает, как применить функцию к байтовой строке и вывести результат в шестнадцатеричном формате. Важно отметить, что входные данные должны быть представлены именно в байтах, для этого используется b"..."

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Майнеры добавляют в блок выбранные ими транзакции и получают за это вознаграждение в биткоинах. Когда майнер находит подходящий заголовок, он сообщает об этом сети, и блок добавляется в блокчейн. Проверить правильность решения PoW легко – достаточно один раз вычислить хеш. PoW нужен для того, чтобы один участник не мог подделать блокчейн, например, чтобы потратить одни и те же деньги дважды. Блокчейн может разветвляться, но майнеры должны работать над самой длинной цепочкой. Считается, что транзакция в Биткоине подтверждена, когда после нее добавлено еще 6 блоков. В статье рассматривается, какое преимущество квантовый компьютер может дать при решении PoW и сможет ли он подделывать блокчейн. Также анализируется структура транзакций. Когда Боб хочет отправить биткоины Алисе, Алиса создает пару ключей – приватный и публичный. Публичный ключ хешируется и получается адрес, который Алиса сообщает Бобу. Биткоин использует хеш публичного ключа для экономии места. Для отправки биткоинов Боб указывает транзакции, где он получил биткоины на свои адреса. Сумма полученных биткоинов должна быть не меньше, чем сумма, которую Боб хочет отправить Алисе. Боб подтверждает владение адресами, указывая публичные ключи и подписывая сообщение своим приватным ключом. Выбор использовать хеш публичного ключа вместо самого ключа влияет на безопасность Биткоина от квантовых атак.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении
Иллюстрация блока. Данные в верхней части составляют заголовок блока.

Attacks on the Bitcoin Proof-of-Work

По большой части квантовый компьютер может быть эффективнее обычного при майнинге Биткоина, то есть при выполнении Proof-of-Work (PoW) на основе алгоритма hashcash. Квантовый компьютер, использующий алгоритм поиска Гровера, может выполнить PoW, перебрав значительно меньше вариантов хешей, чем классический компьютер. Однако, современные ASIC-майнеры, специализированные на вычислении хешей, работают настолько быстро, что это преимущество квантовых компьютеров нивелируется, учитывая, что скорость работы квантовых компьютеров пока еще относительно невелика. В будущем, если скорость работы квантовых компьютеров удастся увеличить до 100 ГГц, они смогут решать задачу PoW примерно в 100 раз быстрее, чем сейчас. Но это вряд ли произойдет в ближайшие 10 лет. К тому времени и обычные компьютеры станут быстрее, и квантовые технологии получат более широкое распространение, так что ни у кого не будет возможности единолично доминировать в майнинге. Для оценки безопасности блокчейна важно понимать, какой объем вычислительных ресурсов потребуется, чтобы квантовый компьютер мог успешно решать задачу PoW с вероятностью больше 50%.В итоге, хотя квантовые компьютеры и могут ускорить процесс майнинга теоретически, на практике, из-за ограничений текущих технологий, они пока не представляют серьезной угрозы для безопасности Биткоина. Однако, в будущем, с развитием квантовых технологий, эта угроза может стать более реальной, и необходимо разрабатывать соответствующие меры защиты насколько эффективным может быть квантовый компьютер при майнинге Биткоина, с учетом всех технических сложностей и ограничений. Алгоритм Гровера позволяет квантовому компьютеру искать решение (подходящий заголовок блока) гораздо быстрее, чем классическому, но на практике это преимущество сильно нивелируется.



Для каждого вычисления хеша и построения блока требуются дополнительные операции, а квантовая коррекция ошибок добавляет значительные накладные расходы. Чтобы оценить реальную производительность, используется модель универсального квантового компьютера с коррекцией ошибок.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Вычисление хеша SHA256 на квантовом компьютере требует преобразования логических операций в обратимые квантовые операции, что увеличивает сложность. Кроме того, квантовым компьютерам необходимо исправлять ошибки, что также требует дополнительных ресурсов и времени. В итоге, скорость майнинга на квантовом компьютере зависит не только от алгоритма Гровера, но и от множества других факторов, таких как тактовая частота, частота ошибок, сложность алгоритмов коррекции ошибок и количество используемых кубитов. В статье вводится понятие «эффективной скорости хеширования» для квантового компьютера (hQC), которая учитывает все эти факторы. Анализ показывает, что при текущем уровне развития технологий квантовые компьютеры значительно уступают специализированным ASIC-майнерам по скорости хеширования. Однако, ожидается, что в будущем квантовые технологии будут развиваться, и их производительность будет расти. В статье приводятся прогнозы на ближайшие 25 лет и оценивается, когда квантовые компьютеры смогут превзойти классические в майнинге Биткоина. Даже если квантовый компьютер не сможет единолично контролировать майнинг, он может быть использован для атак на майнинговые пулы с использованием смарт-контрактов. Небольшое преимущество в скорости хеширования позволит злоумышленникам получать прибыль за счет манипуляций и удержания блоков.

Несмотря на ограничения по времени, эффективная скорость хеширования асимптотически улучшается пропорционально квадратному корню сложности задачи, что отражает преимущество квантовых процессоров. Алгоритм Гровера можно запустить параллельно на нескольких квантовых процессорах. В идеальном случае, каждый процессор ищет решение во всем возможном пространстве вариантов. Это уменьшает число необходимых запросов к оракулу для нахождения решения. В результате, время нахождения решения сокращается, а общая скорость хеширования увеличивается. В алгоритме Гровера требуется фиксированное количество логических кубитов (2402), независимо от сложности задачи. Однако, количество необходимых физических кубитов зависит от используемых методов коррекции ошибок и связано со сложностью задачи и вероятностью ошибок.

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Результаты анализа производительности квантовых компьютеров при атаках на блокчейн представлены на рисунке 2. На графике сравнивается мощность хеширования сети Биткоин и одного квантового компьютера в течение следующих 25 лет. Оценки даны в оптимистичном и пессимистичном сценариях. Согласно оптимистичному прогнозу, до 2028 года не будет существовать квантовых компьютеров, достаточно мощных для реализации алгоритма Гровера. Для сравнения, на графике также показана скорость хеширования современных ASIC-устройств.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Описание схемы скорости хеширования ASIC-устройств

Современные ASIC-устройства для майнинга криптовалют на основе алгоритма SHA-256 (например, Bitcoin) работают следующим образом:

  1. Предварительная обработка данных: Входные данные дополняются до длины кратной 512 битам.
  2. Начальная настройка: Используются предопределенные начальные значения хеша.
  3. Обработка в блоках: Данные обрабатываются в 512-битных блоках за 64 раунда.
  4. Смешивание и преобразование: Побитовые операции, модульное сложение и сдвиги битов смешивают данные.

Примеры устройств

УстройствоСкорость Хеширования
Bitmain Antminer S21 ProДо 234 Th/s1
Antminer T911,5 Th/s4
Cheetah Miner F1Около 24 Th/s6

Эти устройства оптимизированы для максимальной производительности при минимальном энергопотреблении.


Для оценки достижимой производительности рассматриваются сверхпроводящие схемы, которые на сегодняшний день являются самыми быстрыми квантовыми технологиями и имеют хорошие перспективы масштабирования. При максимальной скорости работы элементов и определенных предположениях о частоте ошибок и сложности задачи, эффективная скорость хеширования квантового компьютера составляет 13.8 GH/s, что требует использования 4.4 миллиона физических кубитов. Это в тысячи раз медленнее, чем современные ASIC-устройства, которые достигают скорости 14 TH/s. Причина кроется в низкой скорости работы квантовых элементов и задержках, связанных с созданием отказоустойчивых T-элементов. Ожидается, что в будущем квантовые технологии будут быстро развиваться, и произойдет «квантовая версия закона Мура», которая повлияет на тактовую частоту, точность элементов и количество кубитов. Это позволит оценить мощность квантовых компьютеров в будущем.


Квантовая версия закона Мура — это гипотетическая концепция, которая предполагает аналогичный рост производительности и мощности квантовых компьютеров, как это было с классическими компьютерами по закону Мура. Закон Мура гласит, что количество транзисторов на микросхеме удваивается каждые 24 месяца, что приводит к увеличению вычислительной мощности и снижению стоимости. В контексте квантовых вычислений подобный рост мог бы проявляться в увеличении количества кубитов (квантовых битов), скорости обработки информации или других параметров 24.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Очевидно, что квантовым компьютерам потребуется время, чтобы превзойти классические машины в задаче майнинга. Даже когда это произойдет, ни один квантовый компьютер не будет обладать подавляющей мощностью. Однако, даже небольшое преимущество в мощности над другими майнерами может сделать выгодными определенные виды атак, например, на майнинговые пулы, которые используют смарт-контракты. Например, при определенных оптимистичных предположениях, группа из 20 квантовых машин, работающих параллельно, может иметь 0.1% от общей мощности хеширования. Этого достаточно для проведения атак на майнинговые пулы и снижения их прибыли на 10% с минимальными затратами на подкуп.


Attacks on signatures

Биткоин использует для создания подписей Elliptic Curve Digital Signature Algorithm (ECDSA), основанный на кривой secp256k1. Безопасность этой системы опирается на сложность задачи дискретного логарифма на эллиптической кривой (ECDLP). Несмотря на то, что классически эта проблема считается сложной, Питер Шор предложил эффективный квантовый алгоритм для её решения


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении


Это означает, что достаточно мощный универсальный квантовый компьютер может эффективно вычислить закрытый ключ, связанный с открытым ключом, что делает эту схему совершенно небезопасной.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Последствия для биткоина таковы:

  1. (Повторное использование адресов) Чтобы потратить биткоин с адреса, необходимо раскрыть открытый ключ, связанный с этим адресом. Как только открытый ключ раскрывается в присутствии квантового компьютера, адрес больше не является безопасным и поэтому никогда не должен использоваться повторно. Хотя всегда использовать новые адреса — это рекомендуемая практика в Bitcoin, на практике это не всегда соблюдается. Любой адрес, на котором есть биткоины и для которого был раскрыт открытый ключ, является совершенно небезопасным.
  2. (Обработанные транзакции) Если транзакция совершена с адреса, с которого раньше не было расходов, и эта транзакция помещена в блокчейн с несколькими следующими за ней блоками, то эта транзакция достаточно защищена от квантовых атак. Закрытый ключ может быть получен из опубликованного открытого ключа, но, поскольку адрес уже был потрачен, это должно быть объединено с обходом хеширования сети для выполнения атаки двойной траты. Как мы видели в разделе III A, даже с квантовым компьютером атака двойной траты маловероятна, если за транзакцией следует много блоков.
  3. (Необработанные транзакции) После того, как транзакция была передана в сеть, но до того, как она будет помещена в блокчейн, она подвергается риску квантовой атаки. Если секретный ключ может быть получен из широковещательного открытого ключа до того, как транзакция будет помещена в блокчейн, злоумышленник может использовать этот секретный ключ для трансляции новой транзакции с того же адреса на свой собственный адрес. Если злоумышленник затем гарантирует, что эта новая транзакция будет помещена в блокчейн первой, то он может фактически украсть все биткоины, стоящие за исходным адресом. Мы рассматриваем пункт (3) как наиболее серьезную атаку. Чтобы определить серьезность этой атаки, важно точно оценить, сколько времени потребуется квантовому компьютеру для вычисления ECDLP, и можно ли это сделать за время, близкое к интервалу между блоками.

Мы считаем атаку, описанную в пункте 3 (атака на необработанные транзакции), наиболее опасной. Чтобы оценить её серьёзность, важно понять, сколько времени потребуется квантовому компьютеру для решения задачи дискретного логарифма на эллиптической кривой (ECDLP) и возможно ли это сделать за время, сравнимое с интервалом между созданием блоков в блокчейне. Для поля из n-битного простого числа, согласно последним исследованиям, квантовый компьютер может решить задачу ECDLP, используя 9n + 2log2(n) + 10 логических кубитов и (448log2(n) + 4090)*n^3 вентилей Тоффоли. В биткоине используются 256-битные подписи (n = 256), поэтому число вентилей Тоффоли составляет 1.28 * 10^11, которые можно немного распараллелить до глубины 1.16 * 10^11. Каждый вентиль Тоффоли может быть реализован с использованием небольшой схемы T-вентилей, действующих на 7 кубитах параллельно (включая 4 вспомогательных кубита). Анализируя это, можно оценить ресурсы, необходимые для квантовой атаки на цифровые подписи. Как и в случае майнинга блоков, основное время тратится на дистилляцию «магических состояний» для логических T-вентилей. Время решения ECDLP на квантовом процессоре равно τ = 1.28 * 10^11 * cτ(pg)/s, где cτ зависит только от частоты ошибок вентилей (pg), а s — это тактовая частота. Количество необходимых физических кубитов равно nQ = 2334 * cnQ(pg), где первый множитель — это число логических кубитов, включая 4 вспомогательных логических кубита, а cnQ — это коэффициент пространственных затрат.



Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

На рисунке 3 показана производительность квантового компьютера для атак на цифровые подписи. Используя код поверхности с частотой ошибок физических вентилей pg = 5 * 10^-4, коэффициенты накладных расходов составляют cτ = 291.7 и cnQ = 735.3. В этом случае, при тактовой частоте 66.6 МГц, решение задачи займет 6.49 дней, используя 1.7 * 10^6 физических кубитов. Если же тактовую частоту увеличить до 10 ГГц, а частоту ошибок уменьшить до 10^-5, то подпись можно взломать за 30 минут, используя 485550 кубитов. Последний сценарий делает атаку на необработанные транзакции (пункт 3) вполне возможной и серьезно угрожает безопасности текущей системы Bitcoin. На рисунке 4 представлена оценка времени, необходимого квантовому компьютеру для взлома схемы подписи в зависимости от времени, основанная на определённой модели.


Самая большая угроза для биткоина, связанная с появлением квантовых компьютеров, — это возможность кражи еще не подтвержденных транзакций.



Квантовый компьютер может взломать подпись транзакции, пока она ждет записи в блокчейн, и перенаправить деньги на кошелек злоумышленника. Сейчас для этого потребуется много времени и ресурсов, но развитие технологий может сделать такую атаку реальной. Чтобы оценить опасность, нужно понимать, как быстро квантовый компьютер сможет взламывать эти подписи. Все зависит от мощности компьютера и частоты ошибок. Если создать достаточно мощный и точный квантовый компьютер, взлом подписи может занять всего полчаса, что сделает систему Биткоин очень уязвимой.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении
РИС. 4. На этом графике показаны две оценки времени (в секундах), необходимого квантовому компьютеру для взлома схемы подписи (красные кривые) в зависимости от времени на следующие 25 лет. Мы даем более и менее оптимистичные оценки (красные полосатые линии). Подробно модели описаны в Приложении C. Согласно этой оценке, схема подписи может быть взломана менее чем за 10 минут (600 секунд, черная пунктирная линия) уже в 2027 году

Будущие усовершенствования квантовых атак

Атаки на протокол Биткоин с использованием известных квантовых алгоритмов и схем коррекции ошибок. Хотя некоторые оценки скорости и масштабирования квантовых вычислений могут показаться оптимистичными, важно помнить, что есть несколько путей для улучшения производительности квантовых компьютеров в решении упомянутых проблем. Во-первых, в качестве кода коррекции ошибок здесь рассматривается код поверхности, который требует значительных классических вычислительных затрат для дистилляции состояний, извлечения синдрома ошибок и коррекции. Другие коды, обеспечивающие трансверсальные вентили Клиффорда и не-Клиффорда, могут устранить необходимость в медленной дистилляции состояний. Фактически, замедление из-за классической обработки для извлечения и коррекции синдрома может быть полностью устранено с использованием протокола без измерения, например, [PSBT10], который в недавнем анализе показывает пороговые значения ошибок [CJS16] всего примерно в 5 раз хуже, чем код поверхности с большим количеством измерений. Это может потенциально значительно улучшить общую скорость коррекции ошибок.


Во-вторых, уменьшение количества логических вентилей в квантовых схемах возможно по мере разработки более эффективных передовых методов квантовых вычислений. Например, используя конкретную задачу большого размера (включая реализации оракула), которая была проанализирована в предыдущей работе [SVM+17], было достигнуто прямое сравнение конкретных подсчетов вентилей, полученных с помощью программного пакета Quipper, между старым [HHL09] и новым [CKS15] квантовыми алгоритмами решения линейных систем, показывающее улучшение на несколько порядков.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Учитывая, что квантовые алгоритмы Шора и Гровера были хорошо изучены и тщательно оптимизированы, не следует ожидать такого значительного улучшения, тем не менее, вероятно, возможно некоторое улучшение. В-третьих, различные квантовые алгоритмы могут обеспечить относительное ускорение. Недавняя работа Калиски [Kal17] представляет квантовый алгоритм для задачи дискретного логарифма: найти m, если дано b = a^m, где b — известное целевое значение, а a — известное основание, используя запросы к так называемой подпрограмме «магического ящика», которая вычисляет наиболее значимый бит m. Повторяя запросы, используя продуманно выбранные степени целевого значения, можно вычислить все биты m и решить задачу. Поскольку разные биты решаются один за другим, задача может быть распределена между несколькими квантовыми процессорами. Каждому процессору требуется количество логических кубитов, сопоставимое с решением всей задачи, но общее время будет сокращено за счет распараллеливания. Кроме того, накладные расходы на квантовую коррекцию ошибок, вероятно, уменьшатся, поскольку фазы в квантовом преобразовании Фурье части схемы не должны быть такими точными, как в исходном алгоритме Шора.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Хотя квантовые атаки на Биткоин кажутся сложными, не стоит расслабляться. Существуют способы сделать квантовые компьютеры быстрее и эффективнее в решении этих задач.


  • Улучшение коррекции ошибок: Вместо использования сложных кодов коррекции ошибок, можно применять более простые и быстрые методы, которые не требуют постоянных измерений.
  • Оптимизация алгоритмов: Разрабатываются новые алгоритмы квантовых вычислений, которые позволяют уменьшить количество операций, необходимых для взлома подписи. Это как найти более короткий путь к цели.
  • Параллелизация: Задачу взлома можно разделить на части и распределить между несколькими квантовыми компьютерами, чтобы ускорить процесс.

Поэтому, даже если сейчас квантовая атака на Биткоин требует огромных ресурсов, с развитием технологий эта угроза будет становиться все более реальной.


КОНТРМЕРЫ: Alternative proofs-of-work

Квантовый компьютер может использовать поиск Гровера для выполнения proof-of-work в Биткоине, используя квадратично меньше хэшей, чем требуется классически. В этом разделе мы исследуем альтернативные proof-of-work, которые могут предложить меньшее квантовое преимущество. Основные свойства, которые мы хотим получить от proof-of-work:

  1. (Сложность) Сложность задачи можно регулировать в соответствии с вычислительной мощностью, доступной в сети.
  2. (Асимметрия) Гораздо проще проверить, что proof-of-work успешно завершен, чем выполнить proof-of-work.
  3. (Отсутствие квантового преимущества) Proof-of-work не может быть выполнен значительно быстрее с помощью квантового компьютера, чем с помощью классического компьютера.

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Python-скрипт: QuantumInspiredPoW.py



  1. грубая проверка хеша (nonce, prefix_zeros): Эта функция имитирует проверку, соответствует ли хеш nonce заданной сложности (количеству нулей в начале хеша). В реальной сети Bitcoin это заменяется проверкой, что хеш заголовка блока (включая nonce) меньше целевого значения. Здесь используется hashlib.sha256.
  2. поиск Гровера proof_of_work(difficulty): Это основная функция, которая пытается найти nonce, удовлетворяющий требованиям PoW.
    • N = 2**32: Представляет собой пространство поиска nonce. В реальной сети Bitcoin пространство поиска гораздо больше.
    • iterations = int(N**0.5): Ключевая идея, вдохновленная алгоритмом Гровера. Алгоритм Гровера теоретически позволяет найти решение в пространстве поиска размера N за O(sqrt(N)) операций, в отличие от O(N) для полного перебора. Мы пытаемся отразить это, выполняя корень квадратный из N итераций.
    • В цикле мы случайным образом выбираем nonce и проверяем, соответствует ли его хеш требованиям сложности.
  3. Обратите внимание, что этот код не является реальной реализацией алгоритма Гровера и не даст никакого ускорения на классическом компьютере. Он просто демонстрирует концепцию использования sqrt(N) итераций.

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Proof-of-work Биткоина выполняет пункты (1) и (2), но мы хотели бы найти альтернативный proof-of-work, который лучше справляется с (3). Аналогичные соображения были исследованы авторами, пытающимися найти proof-of-work, которые вместо (3) ищут proof-of-work, которые не могут быть ускорены ASIC. Подход к этому заключается в рассмотрении proof-of-work, интенсивно использующих память. Было предложено несколько интересных кандидатов, таких как Momentum [Lar14], основанный на поиске коллизий в хеш-функции, Cuckoo Cycle [Tro15], основанный на поиске подграфов постоянного размера в случайном графе, и Equihash [BK17], основанный на обобщенной задаче о днях рождения. Это также хорошие кандидаты для более квантово-устойчивого proof-of-work.Все эти схемы основаны на proof-of-work в стиле hashcash и используют следующий шаблон. Пусть h1 : {0, 1} ∗ → {0, 1} n — криптографически безопасная хеш-функция, а H = h1(header) — хеш заголовка блока. Цель состоит в том, чтобы найти nonce x такой, что h1(H k x) ≤ t и P(H, x) для некоторого предиката P.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Тот факт, что заголовок и nonce должны удовлетворять предикату P, означает, что лучший алгоритм больше не будет просто последовательно перебирать nonce x. Наличие proof-of-work в такой форме также гарантирует, что параметр t все еще может быть выбран для изменения сложности. Далее мы проанализируем этот шаблон для proof-of-work Momentum, так как это можно связать с известными квантовыми нижними границами. Для proof-of-work Momentum пусть h2 : {0, 1} ∗ → {0, 1} — другая хеш-функция с n ≤. В исходном предложении Momentum h1 может быть принята как SHA-256, а h2 как хеш-функция, интенсивно использующая память, но это менее важно для нашего обсуждения. Proof-of-work состоит в том, чтобы найти H, a, b такие, что h1(H k a k b) ≤ t и h2(H k a) = h2(H k b) и a, b ≤ 2 `. (1)Сначала давайте исследуем время выполнения для решения этого proof-of-work, предполагая, что хеш-функции h1, h2 могут быть оценены за единицу времени. Взяв подмножество S ⊂ {0, 1} и оценивая h2(H k a) для всех a ∈ S, мы ожидаем найти около |S| 2/2 многих коллизий. Заметим, что, используя соответствующую структуру данных, эти коллизии можно найти за время около |S|. Один из алгоритмов тогда выглядит следующим образом. Для каждого H мы оцениваем h2 на подмножестве S и находим около |S| 2/2  многих пар a, b таких, что h2(H k a) = h2(H k b).



Для каждой коллизии мы затем проверяем h1(H k a k b) ≤ t. В ожидании нам придется выполнить этот второй тест 2n/t много раз. Таким образом, количество H, которые нам придется попробовать, составляет около m = max{1, 2 n+ t|S| 2 }, так как мы должны попробовать хотя бы один H. Поскольку для каждого H мы тратим время |S|, общее время выполнения составляет m|S|. Мы видим, что оно наименьшее, когда |S| = q 2 n+ t , то есть когда m = 1, и мы просто пробуем один H. Это оптимальное время выполнения тогда составляет T = q 2 n+ t , и для его достижения мы должны использовать память, равную времени выполнения, что может быть непомерно дорого. Для некоторой меньшей памяти |S| < q 2 n+ t время выполнения будет 2 n++1 t|S| .Теперь давайте посмотрим на время выполнения на квантовом компьютере. На квантовом компьютере мы можем сделать следующее. Назовем H хорошим, если существуют a, b ∈ S такие, что h1(H k a k b) ≤ t и h2(H k a) = h2(H k b). Проверка того, является ли H хорошим, требует поиска коллизии и, следовательно, требует, по крайней мере, |S| 2/3 времени согласно квантовой нижней границе запросов Ааронсона и Ши [AS04].


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Обратите внимание, что эта нижняя граница является жесткой, так как поиск такой коллизии также может быть выполнен примерно за |S| 2/3 времени с использованием алгоритма различности элементов Амбаиниса [Amb07]. Выше мы утверждали, что для нахождения хотя бы одного хорошего H необходим набор размера m = max{1, 2 n+ t|S| }. Из оптимальности поиска Гровера [BBBV97] мы знаем, что мы должны выполнить не менее √ m многих тестов для нахождения хорошего H. Поскольку проверка того, является ли H хорошим, требует времени |S| 2/3 , общее время выполнения составляет не менее √ m|S| 2/3 . Поскольку классическое время выполнения составляет m|S|, мы видим, что в отличие от текущего proof-of-work в Bitcoin, с этим предложением квантовый компьютер не сможет достичь квадратичного преимущества, как только S станет больше константного размера. В частности, поскольку √ m|S| 2/3 также минимизируется, когда S = q 2 n+ t , время выполнения даже самого быстрого квантового алгоритма составляет не менее T 2/3 , что существенно больше, чем T 1/2 .


Квантовые компьютеры могут быстрее решать текущую задачу proof-of-work в Биткоине. Поэтому ищут альтернативные способы защиты блокчейна, которые будут более устойчивы к квантовым атакам. Один из подходов — использовать proof-of-work, требующие больших объемов памяти.


Примеры: Momentum, Cuckoo Cycle, Equihash. Эти методы усложняют задачу для квантовых компьютеров. Основная идея в том, чтобы найти такое число (nonce), которое удовлетворяет определенным условиям. Эти условия связаны с поиском коллизий в хеш-функциях. Алгоритм Momentum, например, требует поиска двух разных значений, которые дают одинаковый результат при хешировании. В отличие от текущего proof-of-work в Биткоине, с такими альтернативными подходами квантовый компьютер не получает большого преимущества. Время, необходимое для решения задачи, увеличивается, что делает атаку менее выгодной.

Поиск коллизий в хеш-функциях, особенно в контексте алгоритма Momentum (как это описано в теоретических работах о квантовой устойчивости PoW), обычно сводится к следующему:

  1. Определение хеш-функций: Необходимо определить те хеш-функции, в которых требуется найти коллизии (h1 и h2 в контексте Momentum PoW). В реальных системах это могут быть SHA256 или другие криптографические хеш-функции.
  2. Реализация поиска коллизий: Для поиска коллизий можно использовать различные методы, от простых (brute-force) до более сложных (например, birthday attack).

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Вот пример Python скрипта, демонстрирующий поиск коллизий «в лоб» для упрощенной хеш-функции (для демонстрационных целей, небезопасной):


Python-скрипт: CollisionHunter.py



Что делает этот скрипт:

  1. simple_hash(data, modulus): Упрощенная хеш-функция. Она берет SHA256 от данных, преобразует хеш в целое число и берет остаток от деления на modulusВажно: Эта хеш-функция предназначена только для демонстрационных целей. Она не является криптографически безопасной. Не используйте ее в реальных приложениях.
  2. find_collision(hash_function, modulus, max_attempts=100000): Эта функция пытается найти коллизию для заданной хеш-функции. Она генерирует случайные данные, вычисляет их хеш и сохраняет в словаре seen_hashes. Если сгенерированный хеш уже есть в словаре, значит, мы нашли коллизию.
  3. В примере использования мы устанавливаем размер хеш-таблицы (modulus) равным 256 и запускаем поиск коллизий.
  4. Этот код ищет коллизии «в лоб», то есть просто перебирает случайные значения и проверяет, не было ли уже такого хеша. Этот метод работает только для очень простых хеш-функций с небольшим выходным диапазоном.

Ключевые моменты и предупреждения:

  • Небезопасность simple_hash: Хеш-функция simple_hash крайне уязвима для атак и не подходит для реальных криптографических задач. Она используется только для демонстрации принципа поиска коллизий.
  • Сложность поиска коллизий: Поиск коллизий для криптографически стойких хеш-функций, таких как SHA256, является чрезвычайно сложной задачей. Прямой перебор (brute-force) невозможен из-за огромного размера выходного пространства хеш-функции.
  • Birthday attack: Более эффективным методом поиска коллизий (по сравнению с полным перебором) является birthday attack. Этот метод основан на парадоксе дней рождения и позволяет найти коллизию примерно за sqrt(N) операций, где N — размер выходного пространства хеш-функции. Однако, даже для birthday attack, требуются огромные вычислительные ресурсы для SHA256.
  • Алгоритм Momentum: Для реализации алгоритма Momentum потребовалось бы также реализовать h2 и логику проверки h1(H k a k b) ≤ t.
  • Ресурсы для изучения: Изучите «Проблемы коллизий и методы их решения«, «Хэш-таблицы в Python: Как они работают и зачем нужны», «Список с хеш-коллизиями» и другие материалы, чтобы глубже понять проблему.


Этот пример служит отправной точкой. Для более сложных сценариев (например, birthday attack или интеграции с Momentum) 


Постквантовых схемы подписи

В научной литературе предложено множество схем цифровой подписи с открытым ключом, предположительно устойчивых к квантовым компьютерам. Примеры включают схемы на основе хеширования (LMS, XMSS, SPHINCS, NSW), схемы на основе кодов (CFS, QUARTZ), схемы на основе многомерных полиномов (RAINBOW) и схемы на основе решеток (GPV, LYU, BLISS, DILITHIUM, NTRU). Каждая из этих криптосистем обладает разной степенью эффективности. Сравнение размеров подписи и ключа представлено в таблице II (в оригинальном тексте).В контексте блокчейна наиболее важными параметрами схемы подписи являются длина подписи и открытого ключа, поскольку они должны где-то храниться для полной проверки транзакций, а также время проверки подписи.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении
Судя по таблице II, с точки зрения суммы длин подписи и открытого ключа, единственными разумными вариантами являются схемы на основе хеширования и решеток.

Схемы на основе хеширования, такие как XMSS, имеют преимущество в виде доказуемой безопасности, по крайней мере, если выбранная хеш-функция ведет себя как случайный оракул. Общая квантовая атака на эти схемы заключается в использовании алгоритма Гровера, что означает, что их квантовый уровень безопасности составляет половину классического уровня безопасности.

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

В отличие от этого, лучшая известная квантовая атака на DILITHIUM при 138-битном классическом уровне безопасности требует времени 2^125. Таким образом, при одинаковом уровне квантовой безопасности схемы на основе решеток имеют некоторое преимущество в длине подписи плюс открытый ключ.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Хотя схема на основе решеток BLISS имеет наименьшую сумму длин подписи и открытого ключа из всех схем в таблице II, есть несколько причин не выбирать BLISS на практике. Безопасность BLISS основана на сложности задачи NTRU и предположении, что решение этой задачи эквивалентно поиску короткого вектора в так называемой решетке NTRU. Недавно было показано, что это предположение может быть слишком оптимистичным, по крайней мере, для больших параметров. Более того, существует история атак на предыдущие схемы подписи на основе NTRU. Возможно, самое главное, BLISS трудно реализовать безопасным способом, поскольку она очень восприимчива к атакам по побочным каналам. Производственная реализация BLISS strongSwan была атакована таким образом Песслом и др., которые показали, что ключ подписи может быть восстановлен после наблюдения примерно за 6000 генерациями подписи.


Когда заходит речь о защите от квантовых компьютеров, существует много разных способов шифрования данных. Самые популярные методы включают использование хеш-функций и математических решеток.


  • Хеш-функции: Этот способ хорош тем, что его безопасность можно доказать, но квантовые компьютеры могут немного ускорить взлом такого шифра.
  • Решетки: Этот способ выглядит более перспективным с точки зрения защиты от квантовых компьютеров, но у него есть свои недостатки. Например, алгоритм BLISS, основанный на решетках, очень уязвим для атак, которые используют информацию о работе компьютера (например, энергопотребление) для кражи ключа.

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении
ТАБЛИЦА III. Алгоритмы вычисления ресурсов пространства и времени для квантовых атак. Входные данные
pg, частота ошибок физического вентиля; nC, общее количество вентилей Клиффорда в логической схеме; nT, общее количество вентилей T в логической схеме; и nL, количество логических кубитов. Выходные данные
τ, временные затраты в количестве тактов; и nQ = Qcircuit + Qfactory, количество
физических кубитов, используемых для вычисления, включая дистилляцию состояния.

Оценка накладных расходов на исправление ошибок при квантовой атаке

Как рассчитываются коэффициенты накладных расходов для квантовой коррекции ошибок, чтобы получить оценки затрат ресурсов для квантовых атак на блокчейны и цифровые подписи. Метод основан на анализе, приведенном в работах [FMMC12, MDMG+16].Сначала определяются nT и nC — количество T-вентилей и вентилей Клиффорда, необходимых в алгоритме. Псевдокод для вычисления накладных расходов представлен в таблице III (в оригинальном тексте).

  • Для атаки на блокчейн с nL = 2402 кубитами эти значения составляют nT = 297784 × π^2 / (14√(10) · D), nC = 29.4 × nT.
  • Для атаки на цифровую подпись с nL = 2334 кубитами значения составляют nT = 1.28 × 10^11, nC = 20 × nT.

Если заглянуть на несколько лет вперед, можно предположить правдоподобные улучшения в технологии квантовых компьютеров. Если предположить код квантовой коррекции ошибок, поддерживающий трансверсальные вентили Клиффорда и не-Клиффорда, так что нет замедления дистилляции, и что это делается без измерения, так что не требуется никакой классической обработки синдрома ошибок, то количество циклов, необходимых для одного вызова оракула, определяется исключительно глубиной схемы, которая составляет 2142094.Это основано на общей глубине схемы, рассчитанной следующим образом. Оракул вызывает два вызова хеш-функции SHA256, и это делается дважды: один раз для ее вычисления и один раз для ее отмены. Каждый хеш имеет обратимую глубину схемы 528768. Аналогично, используются два многоуправляемых фазовых вентиля: один для инверсии относительно среднего и один для вызова функции, каждый из которых имеет глубину схемы 13511, для общей глубины 4 × 528768 + 2 × 13511 = 2142094 (эти числа взяты из [SFL+13], но могут быть дополнительно оптимизированы).Тогда, принимая потенциальные накладные расходы в пространстве и количестве физических кубитов, но предполагая отсутствие временных затрат на коррекцию ошибок или дистилляцию неклиффордовых вентилей, это подразумевает улучшенную эффективную скорость хеширования hQC = 0.04 × s / √D, что существенно быстрее. Для сверхпроводящих схем возможны сверхбыстрые геометрические фазовые вентили при ∼ 50 ГГц, что в основном ограничено частотой микроволнового резонатора [RBW+12]. Используя вышеупомянутые очень оптимистичные предположения, при сложности D = 10^12 эффективная скорость хеширования составит hQC = 2.0 × 10^3 TH/s.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Чтобы оценить, сколько ресурсов нужно для квантовой атаки на блокчейн или цифровые подписи, нужно учитывать много факторов, в том числе количество определенных квантовых операций (T-вентилей и вентилей Клиффорда) и способы исправления ошибок в квантовом компьютере. Если предположить, что квантовые компьютеры в будущем станут лучше и смогут быстро и эффективно исправлять ошибки, то скорость взлома (скорость хеширования) может значительно возрасти.

Важно понимать, что эти скрипты предназначены для симуляции квантовых вычислений на классическом компьютере, поскольку для выполнения на реальном квантовом компьютере требуется специализированное оборудование и доступ к нему.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Пример 1: Qiskit (IBM) Qiskit — одна из самых популярных библиотек для квантового программирования на Python 237. Она предоставляет инструменты для создания, симуляции и выполнения квантовых схем.


Python-скрипт: QuBitWizard.py



В этом примере:

  • QuantumCircuit(2, 2): Создает квантовую схему с 2 кубитами и 2 классическими битами для хранения результатов измерений.
  • circuit.h(0): Применяет вентиль Хадамара (H) к кубиту 0. Вентиль Хадамара создает суперпозицию, переводя кубит в состояние (|0⟩ + |1⟩)/√21. H является вентилем Клиффорда.
  • circuit.cx(0, 1): Применяет вентиль CNOT (Controlled-NOT) с управляющим кубитом 0 и целевым кубитом 1. CNOT — это вентиль Клиффорда.
  • circuit.t(0): Применяет T-вентиль к кубиту 0. T-вентиль является не-клиффордовым вентилем и играет важную роль в универсальных квантовых вычислениях.
  • circuit.measure([0, 1], [0, 1]): Измеряет состояние кубитов 0 и 1 и сохраняет результаты в классические биты 0 и 1 соответственно.
  • Aer.get_backend('qasm_simulator'): Получает симулятор QASM (Quantum Assembly Language) из Aer (квисктовский фреймворк для моделирования квантовых вычислений).
  • transpile(circuit, simulator): Оптимизирует квантовую схему под заданный симулятор.
  • simulator.run(compiled_circuit, shots=1000): Запускает симуляцию 1000 раз (shots).

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Пример 2: pyQuil (Rigetti) pyQuil — это библиотека от компании Rigetti Computing, ориентированная на квантовые компьютеры на сверхпроводниках.


Python-скрипт: WaveMaster.py


В этом примере:

  • Program(): Создает объект, представляющий квантовую программу.
  • H(0)CNOT(0, 1)T(0): Применяет вентили Хадамара, CNOT и T к указанным кубитам.
  • WavefunctionSimulator(): Создает симулятор квантовых вычислений.
  • simulator.simulate(program): Симулирует выполнение программы и возвращает волновую функцию, описывающую состояние кубитов после выполнения программы.

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Python-скрипт: CirqQuantumCircuit.py


Пример 3: Cirq (Google)


В этом примере, Cirq используется для тех же операций, что и в предыдущих примерах, но с использованием синтаксиса Cirq.


Важные замечания:

  • Установка библиотек: Перед запуском этих скриптов необходимо установить соответствующие библиотеки. Например, для Qiskit: pip install qiskit qiskit-aer qiskit-visualization. Для pyQuilpip install pyquil. Для Cirq: pip install cirq.
  • Квантовые симуляторы: Эти библиотеки используют классические компьютеры для симуляции квантовых вычислений. Симуляция требует значительных вычислительных ресурсов, и ее возможности ограничены по сравнению с реальными квантовыми компьютерами.
  • Универсальность: Вентили Клиффорда и T-вентиль (или другие не-клиффордовы вентили) составляют универсальный набор вентилей. Это означает, что любую квантовую схему можно аппроксимировать с использованием только этих вентилей.

Эти примеры дают отправную точку для экспериментов с квантовыми операциями (включая T-вентили и вентили Клиффорда) с использованием Python и квантовых библиотек.


Например, если использовать определенные технологии и очень оптимистичные прогнозы, то скорость хеширования может достигать огромных значений, что сильно упростит квантовые атаки.



Моделирование развития хешрейта и сложности сети биткоин

Общее количество хешей в секунду во всей сети Биткоин берётся с blockchain.info. Данные на рисунке 5(a) представляют собой скорости хеширования на первое января (2012–2015 гг.) и первое января и июля (2016–2017 гг.). Две пунктирные кривые соответствуют оптимистичным и менее оптимистичным предположениям для экстраполяций. Оптимистичная экстраполяция предполагает, что текущий рост будет продолжаться экспоненциально в течение пяти лет, а затем перейдёт в линейный рост по мере насыщения рынка полностью оптимизированными ASIC-майнерами Биткоина. Менее оптимистичное предположение предполагает линейный рост с текущей скоростью. На основе экстраполяции хешрейта сети Биткоин можно определить сложность в зависимости от времени. Ожидаемое количество хешей, необходимых для нахождения блока за 10 минут (600 секунд), определяется как rate(t) * 600, где rate(t) — общая скорость хеширования, показанная на рисунке 5(a). Таким образом, сложность хеширования Биткоина рассчитывается как D(t) = rate(t) * 600 * 2^(-32) для двух сценариев, описанных выше. На рисунке 5(b) это сравнивается со значениями с blockchain.info на первое января 2015–2017 гг.


Чтобы предсказать, как изменится сложность майнинга Биткоина, анализируют, как быстро растёт вычислительная мощность сети (хешрейт). Данные о хешрейте берут с сайта blockchain.info и строят графики, показывающие, как хешрейт менялся в прошлом.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Делают два прогноза:

  1. Оптимистичный: Хешрейт продолжит расти очень быстро, пока все не перейдут на самые современные майнеры.
  2. Менее оптимистичный: Хешрейт будет расти с той же скоростью, что и сейчас.

Используя эти прогнозы, можно рассчитать, насколько сложнее станет майнить Биткоин в будущем. Сложность вычисляется на основе того, сколько хешей нужно сделать, чтобы найти новый блок1Чем выше хешрейт, тем выше сложность.

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Моделирование развития квантовых компьютеров

При моделировании необходимо учитывать несколько аспектов развития квантовых технологий. Поскольку на данном раннем этапе развития доступно лишь несколько точек данных, в наших оценках неизбежно присутствует большая неопределенность. Поэтому мы приводим две различные оценки: одну, оптимистичную по отношению к темпам развития, и другую, значительно более пессимистичную. Тем не менее, эти прогнозы следует рассматривать как очень приблизительную оценку, которая может потребовать адаптации в будущем. Во-первых, нам нужно сделать предположение о количестве кубитов, доступных в любой момент времени. Поскольку мы сосредотачиваемся только на твердотельных сверхпроводящих реализациях, доступно лишь несколько точек данных.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Мы предполагаем, что количество доступных кубитов будет расти экспоненциально со временем в ближайшем будущем. Оптимистичное предположение состоит в том, что число будет удваиваться каждые 10 месяцев, тогда как менее оптимистичное предположение предполагает, что число удваивается каждые 20 месяцев. Эти две экстраполяции показаны на рисунке 6(a). Точки данных взяты из следующей таблицы: (таблица не приведена).


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Прогнозировать развитие квантовых компьютеров сложно, потому что у нас пока мало информации. Поэтому авторы статьи сделали два прогноза, которые отличаются друг от друга:

  • Оптимистичный прогноз: Квантовые компьютеры будут развиваться очень быстро, и количество кубитов (основных «кирпичиков» квантовых вычислений) будет удваиваться каждые 10 месяцев.
  • Пессимистичный прогноз: Развитие квантовых компьютеров будет идти медленнее, и количество кубитов будет удваиваться каждые 20 месяцев.

Оба прогноза, скорее всего, не очень точные, но они помогают понять, как быстро могут развиваться квантовые компьютеры и когда они могут стать угрозой для существующих систем защиты информации


Мы прогнозируем, что частота квантовых вентилей будет расти экспоненциально в течение следующих нескольких лет. Это предполагает, что классические схемы управления будут достаточно быстрыми, чтобы управлять квантовыми вентилями на этих частотах. Через пару лет рост значительно замедляется, поскольку для дальнейшего ускорения квантовых вентилей необходимы более быстрые классические схемы управления. Мы ограничиваем частоту квантовых вентилей на уровне 50 ГГц (для оптимистичного случая) или 5 ГГц (для менее оптимистичного случая), соответственно, главным образом потому, что ожидаем, что классические схемы управления не смогут управлять квантовыми вентилями на более высоких частотах. (См., например, [HHOI11] о прогрессе в этом направлении.)


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении
Это показано на рисунке 6(b). Точки данных взяты из следующей таблицы: (таблица не приведена).

В статье также прогнозируется, как быстро будут работать квантовые компьютеры, то есть как часто они смогут выполнять основные операции (квантовые вентили).



  • Прогноз: Сначала скорость работы квантовых компьютеров будет расти очень быстро, но потом рост замедлится.
  • Ограничение: Авторы считают, что есть предел скорости, который сложно будет превысить, потому что для управления квантовыми компьютерами нужны очень быстрые «обычные» (классические) компьютеры. Если обычные компьютеры не смогут успевать, то и квантовые компьютеры не смогут работать быстрее.

Оптимистичный прогноз предполагает, что скорость работы квантовых компьютеров достигнет 50 ГГц, а пессимистичный — только 5 ГГц.


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

На рисунке 6 представлены прогнозы количества кубитов, частоты квантовых вентилей (в операциях вентилей в секунду) и неточности квантовых вентилей в зависимости от времени. Четвертый график моделирует снижение накладных расходов из-за теоретических достижений. Предсказанное развитие неточности вентилей показано на рисунке 6(c). Мы предполагаем, что неточность вентилей продолжит падать экспоненциально, но что это развитие остановится на неточности 5 · 10^-6 (оптимистичный случай) или 5 · 10^-5 (менее оптимистичный случай). Для оптимистичного случая мы ожидаем, что неточность вентилей продолжит следовать закону ДиВинченцо, который предсказывает уменьшение неточности в 2 раза в год. Данные взяты из следующей таблицы: (таблица не приведена).


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Помимо количества кубитов и скорости их работы, важно учитывать, насколько хорошо они работают, то есть насколько часто они делают ошибки.


Это называется «неточность вентилей».

  • Прогноз: Ожидается, что квантовые компьютеры будут становиться точнее, и количество ошибок будет уменьшаться.
  • Ограничение: Но есть предел, после которого улучшить точность будет очень сложно. Оптимистичный прогноз предполагает, что неточность снизится до 5 на миллион, а пессимистичный — до 5 на 100 тысяч.

Чем точнее работают кубиты, тем меньше нужно дополнительных ресурсов (кубитов и времени) для исправления ошибок.


Наконец, мы предполагаем, что количество кубитов и временных шагов, требуемых любым алгоритмом, будет уменьшаться с течением времени по двум причинам. Во-первых, точность вентилей будет увеличиваться со временем и, таким образом, позволит использовать более эффективные отказоустойчивые схемы. Во-вторых, теоретические достижения позволят уменьшить количество кубитов и вентилей, необходимых для реализации алгоритма и отказоустойчивых схем. Мы ожидаем, что этот фактор будет overhead(t) = β^(t-2017), где β ∈ {0.75, 0.85} для оптимистичных и менее оптимистичных предположений, соответственно.

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Со временем для решения задач на квантовых компьютерах потребуется меньше ресурсов (кубитов и времени) благодаря двум вещам:


  1. Улучшение точности кубитов: Чем точнее работают кубиты, тем меньше нужно дополнительных усилий для исправления ошибок.
  2. Теоретические прорывы: Ученые будут разрабатывать новые алгоритмы и методы, которые позволят делать те же вычисления, используя меньше кубитов и операций.

Чтобы оценить, насколько сильно уменьшатся требования к ресурсам, они вводят специальный коэффициент, который зависит от времени и от того, насколько оптимистично мы смотрим на будущее. Этот коэффициент показывает, во сколько раз можно будет сократить количество необходимых кубитов и времени.


Процесс выявления критической уязвимости в транзакции

  1. ↩︎

Для поиск уязвимости RawTX, как предотвращение угрозы для собственного криптовалютного кошелька Bitcoin и Ethereum мы можем воспользоваться и применить на примерах различных методов машинного обучение.

Воспользуемся списком из “Dockeyhunt Deep Learning” широко применяемая категория искусственного интеллекта для введение бизнеса в различных сферах деятельности криптоанализа и крипографии в целом.



BitcoinChatGPT — это инновационный чат-бот на базе искусственного интеллекта, который помогает пользователям находить уязвимости в транзакциях криптовалюты Bitcoin. Преимущества и классификации BitcoinChatGPT дают возможность проверить ваш адрес Bitcoin на предмет различных схем атак на криптокошельки. Машинное обучение на основе криптоанализа дает нам полную возможность исследовать различные атаки на алгоритмы, используемые в экосистеме Bitcoin. Инструменты для извлечения приватного ключа из реестра Bitcoin Wallet широко популярны, где BitcoinChatGPT служит важным и полезным ресурсом для кибербезопасности.


Создания Raw транзакции с помощью процесса машинного обучение BitcoinChatGPT

Рассмотрим построение структуры уязвимой Raw транзакции в котором используется модуль BitcoinChatGPT. В качестве примера возьмем адрес Биткоин кошелька: 1MjGyKiRLzq4WeuJKyFZMmkjAv7rH1TABm на сумму: 131.59300888 BTC и получим HASH публичный ключ. Затем, используя BitcoinChatGPT, создадим уязвимость Raw транзакций, что позволит нам проанализировать и манипулировать данными подписи алгоритма ECDSA. 


Получим HASH публичный ключ используя Python-скрипт: wif_to_hash160.py


Для реализации декодирования Base58 установим пакет:



Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Запустим BitcoinChatGPT


How to create a vulnerable transaction in Bitcoin for the hashed version of the public key Bitcoin HASH160: e361516c3163a3d997d7b270c4378816a86343de

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении



Соединим все выданные значение в одну общую строку с помощью Python-скрипта combinex.py:

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении


В результате мы получаем уязвимую транзакцию RawTX как мы знаем в контексте блокчейна Биткоина относится к сырым данным транзакции, которые хранятся в блокчейне в форме двойного хеширования. Это означает, что RawTX проходит через алгоритм SHA256 дважды, чтобы получить хэш транзакции, который виден в блокчейне. Этот хэш известен как txid (идентификатор транзакции).


Процесс компрометации извлечения секретного ключа Nonce значение K

Запустим BitcoinChatGPT

How a vulnerable RawTX transaction in the Bitcoin blockchain can be compromised to extract the secret key Nonce value K using mathematical methods

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении


BLOCKCHAIN FOLBIT LEAKS

Декодируем уязвимую RawTX транзакцию с помощью функции сервиса BLOCKCHAIN FOLBIT LEAKS


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Результат значение K секретного ключа Nonce в формате HEX


Для получение всех остальных значении из уязвимой RawTX транзакции воспользуемся сервисом RSZ Signature Decoder


Результат значении для R, S, Z в формате HEX


Для получение значении X приватного ключа из формулы: priv_key = ((((S * K) - Z) * modinv(R, N)) % N) воспользуемся программным обеспечением Dockeyhunt Private Key Calculator


В результате мы получаем значение X приватный ключ в формате HEX


Проверим полученный результат приватного ключа с помощью машинного обучения

Запустим BitcoinChatGPT

Apply the BLOCKCHAIN FOLBIT LEAKS function to extract the private key from a vulnerable RawTX transaction in the Bitcoin cryptocurrency

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

В конечном итоге модуль BitcoinChatGPT выдает ответ в файл: KEYFOUND.privkey сохранив приватный ключ в двух наиболее используемых форматах HEX & WIF

https://github.com/demining/CryptoDeepTools/blob/main/38QuantumAttacks/KEYFOUND.privkey



Для реализации кода установим пакет Bitcoin. Эта библиотека позволяет создавать кошельки, взаимодействовать с блокчейном, создавать и подписывать транзакции, а также работать с различными форматами адресов и приватных ключей криптовалюты Биткоин.


Запустим код для проверки соответствие Биткоин Адреса:
Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Откроем bitaddress и проверим:

Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Заключение и действия по снижению опасности.

В этой статье мы изучили методы восстановления доступа к утерянным криптовалютным кошелькам и приватным ключам с помощью математических алгоритмов, таких как решение дискретного логарифма и проблема скрытых чисел, а также утечки данных BLOCKCHAIN FOLBIT LEAKS. Мы продемонстрировали, как использовать программное обеспечение для извлечения приватных ключей из уязвимых транзакций, что показало, что даже в безопасных системах, таких как Bitcoin, существуют уязвимости, которые можно использовать для восстановления доступа к потерянным средствам.

Для защиты от угроз, связанных с уязвимостью RawTX транзакции криптовалюты Биткоин, пользователям необходимо предпринять следующие шаги:

  1. Обновление программного обеспечения: Регулярное обновление криптовалютных кошельков до версий, устраняющих уязвимости, критически важно для обеспечения безопасности.
  2. Улучшение механизмов проверки подписей: Усиленная валидация входных данных и обработка ошибок помогут предотвратить создание поддельных подписей и защитить приватные ключи пользователей.
  3. Мониторинг сетевой активности: Постоянный анализ состояния сети и выявление подозрительных транзакций на ранних этапах позволяют оперативно реагировать на попытки эксплуатации уязвимостей.
  4. Применение многофакторной аутентификации: Внедрение дополнительных криптографических методов защиты значительно повысит безопасность.

Для защиты от потенциальных атак, связанных с уязвимостью RawTX в транзакциях Bitcoin, пользователям рекомендуется обновлять программное обеспечение своих кошельков до последних версий. Регулярные обновления, использование систем мониторинга аномалий и повышение информированности пользователей о потенциальных угрозах будут способствовать поддержанию безопасности и целостности криптовалютных систем.

Уязвимость RawTX в транзакциях Bitcoin создает серьезную угрозу для безопасности криптовалютных операций и целостности блокчейна. Чтобы снизить риски, пользователям необходимо регулярно обновлять программное обеспечение, внедрять строгие меры безопасности и осуществлять постоянный контроль над состоянием сети. Эти действия будут способствовать поддержанию безопасности и стабильности криптовалютных систем, защищая пользователей от потенциальных атак и финансовых потерь.

Наше исследование показывает значимость математического анализа в криптовалютах и демонстрирует потенциал использования сложных математических методов для решения практических задач в криптоанализе. Однако эти методы могут быть применены как для восстановления доступа к утерянным средствам, так и для использования уязвимостей, что подчеркивает необходимость усиления безопасности криптовалютных систем.


References:

  1. Analyzing Quantum Vulnerabilities: The Insecurity of Classical Proof Systems in Quantum Contexts
  2. Enhancing Security: The Impact of Iteration on Quantum Attacks Against Block Ciphers
  3. Assessing Quantum Threats to Bitcoin: Risks and Protective Strategies for Cryptocurrencies
  4. Quantum Threats to Pseudorandom Generators: Analyzing Attacks on the Blum-Micali Generator
  5. Advancing Quantum Collision Attacks: Analyzing SHA-256 and SHA-512 Vulnerabilities
  6. Exploring Quantum Vulnerabilities: Attacks on Beyond-Birthday-Bound MAC’s
  7. Enhancing Quantum Cybersecurity: Advanced Variational Attacks on Cryptographic Protocols
  8. Exploring Practical Quantum Cryptography: Capabilities, Implementations, and Attack Vulnerabilities
  9. Navigating the Shift to Quantum Resistance: Preparing for the Future of Cryptography
  10. Securing the Quantum Age: Exploring Quantum-Resistant Cryptographic Protocols
  11. Quantum-Resistant Code-Based Cryptosystem: A Novel Approach Using Repetition of Error-Correcting Codes
  12. Assessing Electromagnetic Side-Channel Attack Risks in Quantum Key Distribution Receivers Using Multi-Class Classification
  13. Managing Cryptographic and Quantum Risks: A Practical Guide for Organizations
  14. Enhancing Cloud Security: Quantum Cryptography Algorithms for Robust Data Storage and Processing
  15. Transitioning to Quantum-Safe Cryptography on IBM Z: A Guide for Secure Data Protection
  16. Post-Quantum Attacks on Symmetric-Key Cryptography: Analyzing Vulnerabilities and Defense Strategies
  17. Report on Post-Quantum Cryptography: NIST’s Strategies for Securing Digital Communications Against Quantum Threats
  18. Quantum Computing and Cybersecurity: Navigating Emerging Threats and Mitigation Strategies
  19. Revolutionizing Currency: The Concept and Development of Quantum Money
  20. Post-Quantum Cryptography: Preparing for Quantum Threats and Securing the Future of Encryption
  21. Ensuring Digital Sovereignty: The Critical Role of Cryptographic Security in Europe
  22. Preparing for the Quantum Threat: Safeguarding Sensitive Information Against Future Risks
  23. Defending Quantum Private Communication: Strategies Against Trojan Horse Attacks
  24. Bitcoin’s Quantum Resistance: A Commit-Delay-Reveal Protocol for Secure Transition
  25. Project Leap: Safeguarding the Financial System in the Quantum Era
  26. Quantum Threats to Bitcoin: Vulnerabilities and Mitigation Strategies
  27. Navigating the Quantum Frontier: Understanding Quantum Computing and the Rise of Post-Quantum Cryptography
  28. Quantum Origin: Revolutionizing Cryptographic Key Generation with Verifiable Quantum Randomness
  29. Developing Quantum-Resistant Cryptography: Encryption for a Post-Quantum World
  30. Quantum-Safe Cryptography: Addressing the Challenges and Opportunities in a Quantum Computing Era
  31. The Quantum Computing Revolution: Implications for Modern Cryptographic Security
  32. Private-Key & Public-Key Cryptography in the Quantum Era: Security Risks and Future Strategies
  33. The Quantum Risk Paradox: Why the Threat Is Already Here (Quantum Threat Timeline)



Данный материал создан для портала CRYPTO DEEP TECH для обеспечения финансовой безопасности данных и криптографии на эллиптических кривых secp256k1 против слабых подписей ECDSA в криптовалюте BITCOIN. Создатели программного обеспечения не несут ответственность за использование материалов.


Исходный код

Google Colab

BitcoinChatGPT

Blockchain Folbit Leaks

Dockeyhunt Deep Learning

Telegram: https://t.me/cryptodeeptech

Видеоматериал: https://youtu.be/p62orC7WDUE

Video tutorial: https://dzen.ru/video/watch/67c3e91abbfa683a745a0aea

Источник: https://cryptodeeptool.ru/quantum-attacks-on-bitcoin


Квантовые атаки на Биткоин: оценка уязвимостей и стратегии защиты от новых угроз квантовых вычислении

Crypto Deep Tech