По-взрослому
Но знаете что? Будущее уже тихонько зашло с черного хода. Где-нибудь в закрытых лабораториях вполне может крутиться квантовый чип на 1000 кубитов, просто об этом не трубят в медиа. Квантовое превосходство -- вообще не та вещь, о которой стоит орать на каждом углу; практичнее и безопаснее использовать его в тишине.
Короче, деплой будущего официально состоялся, и вы прямо сейчас можете потрогать его руками. Дело в том, что Google перевела свои сервисы на новые наборы ключей, построенные на постквантовом алгоритме шифрования на многомерных решетках -- ML-KEM.
Хотите пруфов? Если сидите через Chrome, откройте любой гугловский сайт -- хоть сам поисковик, хоть почту. Дальше чекаем по шагам:
1. Кликаем на гамбургер-меню в правом верхнем углу (ну, эти три вертикальные точечки).
2. Идем по пути: Дополнительные инструменты -> Инструменты разработчика.
3. В открывшейся панельке ищем вкладку Безопасность (Security). Если она спряталась, нажмите на двойную стрелочку ">>".
4. Теперь смотрим на свойства соединения (Connection). Бам! В длинной строке с описанием криптографии вы явно увидите те самые волшебные буквы: mlkem.
Что это значит на практике? Что ваш трафик теперь НИКТО -- вот прямо совсем никто -- не сможет расшифровать. Никакой квантовый суперкомпьютер его не расковыряет, не говоря уже о компах на традиционной архитектуре.
А еще помните, я недавно выложила свою полную универсальную реализацию алгоритма Шора для эллиптических кривых? Вообще, такие задачки под силу разве что студентам-магистрам в топовых универах вроде Стэнфорда, Гарварда или MIT, где вовсю пилят фундаментальную науку. Но если вы пороетесь на том же гитхабе, то увидите, что все существующие симуляторы безбожно читерят. В них закрытый ключ тупо зашит в код, и программа его "угадывает", а не честно вычисляет. Сплошной обман и детские поделки.
У меня же все по-взрослому. Код реально работает и находит ключ без всяких костылей. Пришлось, конечно, люто заморочиться с оптимизацией памяти, чтобы обойти классическую проблему квантовых симуляторов -- блокировку обратных вычислений (uncomputation lock). Обычно при каскадных операциях целевой регистр жестко путается со вспомогательными кубитами. Если измерить систему в таком состоянии, все схлопнется в белый статистический шум и пики обратного преобразования Фурье просто растворятся. Чтобы не городить тонны лишней виртуальной памяти, я перенесла циклические сложения точек кривой напрямую в фазовое пространство собственных состояний (Eigenstate Phase Space). Программа оценивает точный порядок элементов внутри подгруппы и навешивает относительный фазовый множитель exp(1j * phi). На выходе получаем идеальные линии конструктивной интерференции и 100% верную геометрию кривой вообще без использования костыльных вспомогательных регистров!
А теперь главный вопрос, который у вас наверняка так и чешется на языке: "Слушай, а можно ли с помощью твоей софтины хакнуть Биткоин?"
Тут, знаете ли, ответ одновременно и ДА, и НЕТ. Сразу скажу: если бы моя программа могла нанести реальный урон крипте, я бы никогда не выложила ее в опенсорс. Включаем логику и следим за ходом мысли:
* Можно ли скормить моей программе параметры кривой secp256k1, на которой сидит Биткоин? -- Да, без проблем.
* Можно ли задать там жесткую разрядность в 256 бит? -- Да, архитектура позволяет.
* Найдет ли она в теории закрытый ключ? -- Да, алгоритм Шора для этого и создан.
Но... всегда есть жирное "НО". Чтобы получить реальное квантовое преимущество, код нужно запускать на настоящем квантовом железе. А физических квантовых чипов с нужным количеством стабильных кубитов в мире пока просто не существует. А когда они наконец-то появятся, разработчики Биткоина уже сто раз переведут сеть на те самые постквантовые решетки вроде ML-KEM, о которых я рассказывала в начале.
"Ладно, Стеф, а если запустить ее на твоем крутом эмуляторе?" -- спросите вы. Да, благодаря моей жесткой фазовой оптимизации вам не понадобится суперкомпьютер размером с дом для хранения гигантской матрицы квантовых состояний. Код запустится даже на хорошем домашнем ПК! Он будет честно считать и найдет ключ не за миллиарды лет, как при тупом брутфорсе (переборе), а, скажем, за пару десятков или сотен лет. Но вы все равно не дождетесь результата. Фишка в том, что при симуляции квантовых процессов на обычном кремниевом процессоре часть вычислений неизбежно деградирует до банальных, последовательных классических циклов. Против физики не попрешь.
Вот такие пироги, ребятки. Изучайте матчасть и спите спокойно, ха-ха!
Стефания
https://github.com/ST3PH-X
Свидетельство о публикации №126071303848