Виталик Новая статья: Если квантовая атака произойдет завтра, как Ethereum решит эту проблему?
Автор оригинала: Vitalik Buterin
Переводчик: Azuma, Odaily 星球日报
9 марта соучредитель Ethereum Виталик Бутерин опубликовал короткую статью на форуме исследований Ethereum (ethresear.ch) под названием «Как спасти средства пользователей от внезапной квантовой атаки с помощью жесткого форка».
В статье Виталик описывает, как Ethereum может минимизировать потери средств пользователей в экстренной ситуации, если квантовая атака произойдет завтра, и какие процедуры следует предпринять для перехода к квантово-устойчивой форме, а затем для восстановления нормальной работы.

Ниже приведен полный текст Виталика, переведенный Odaily 星球日报.
Предположим, что квантовый компьютер сможет быть реализован завтра, и злоумышленники каким-то образом получили доступ к нему и хотят использовать его для кражи средств пользователей. Что нам делать?
Разработка таких квантово-устойчивых технологий, как подписи Винтерница, STARKs и других, направлена на предотвращение подобных ситуаций. Как только абстракция учетной записи будет готова, любой пользователь сможет случайно переключиться на подпись с квантовой устойчивостью. Но что, если у нас нет столько времени, и квантовая атака произойдет более внезапно, чем все предполагают?
Я считаю, что на самом деле у нас уже есть достаточные условия для решения этой проблемы с помощью относительно простого восстановительного форка. С помощью этого решения сеть Ethereum будет вынуждена провести жесткий форк, пользователям придется загрузить новое программное обеспечение для кошелька, но только у немногих пользователей могут быть потеряны их средства.
Основная угроза квантовой атаки такова. Адрес Ethereum получается путем вычисления keccak(privtopub(k))[ 12:], где k соответствует закрытому ключу, а privtopub соответствует умножению на эллиптической кривой, используемому для преобразования закрытого ключа в открытый.
Когда квантовые вычисления будут реализованы, указанное умножение на эллиптической кривой станет обратимым (поскольку это на самом деле является решением задачи дискретного логарифма), однако хеширование останется безопасным. Если пользователь не проводил никаких транзакций, то будет раскрыта только информация об адресе, в этом случае они все равно будут в безопасности; но как только пользователь проведет хотя бы одну транзакцию, подпись транзакции раскроет открытый ключ, что в условиях квантового компьютера может привести к раскрытию закрытого ключа. Таким образом, в этом случае большинство пользователей столкнется с риском.
Но у нас есть способ смягчить эту угрозу, и ключевой момент заключается в том, что на практике большинство закрытых ключей пользователей генерируются с помощью серии хеш-вычислений. Например, многие закрытые ключи создаются с использованием спецификации BIP-32, которая генерируется на основе набора мнемонических слов через серию хеш-вычислений; многие методы генерации закрытых ключей, не относящиеся к BIP-32, также похожи, например, если пользователь использует мозговой кошелек, он обычно также создается на основе пароля, прошедшего через серию хеш-вычислений (или через функцию производной ключа средней сложности).
Это означает, что решение для борьбы с внезапной квантовой атакой с помощью восстановительного форка будет включать следующие шаги:
- Во-первых, откатить все блоки после массовой атаки;
- Во-вторых, отключить традиционный режим транзакций на основе адресов EOA;
- В-третьих, (если на тот момент это еще не будет реализовано) добавить новый тип транзакции, позволяющий проводить транзакции через кошельки смарт-контрактов (например, часть содержания RIP-7560);
- В-четвертых, добавить новый тип транзакции или операционный код, с помощью которого пользователь может предоставить доказательство STARK, и если доказательство пройдет, код адреса пользователя переключится на совершенно новый проверенный код, после чего пользователь сможет использовать новый код адреса как кошелек смарт-контракта.
- В-пятых, с учетом экономии Gas, поскольку объем данных доказательства STARK довольно велик, мы поддержим пакетные доказательства STARK, чтобы одновременно проводить несколько доказательств STARK указанного типа.
В принципе, завтра мы можем начать разработку инфраструктуры, необходимой для реализации этого восстановительного форка, чтобы экосистема Ethereum могла подготовиться к внезапной квантовой атаке.











