
Ethereum L2, принимающий нулевые подписи, звучит как уязвимость безопасности, но BB84 делает это намеренно, чтобы избежать квантовых атак. В прошлые выходные его основатель, публикующийся как Hadamard, опубликовал дизайн на Ethereum Research и попросил критическую обратную связь. BB84 — это OP Stack rollup на мейннете, работающий с 30 сентября, где транзакции L2 вообще не содержат ECDSA. Каждый аккаунт — это конец цепочки хешей keccak-256, построенной из секрета, по умолчанию из 1000 шагов. Чтобы потратить средства, ваш кошелек раскрывает предыдущее значение в цепочке, которое любой может проверить, выполнив одно хеширование. Внутри L2 единственным допущением остаётся устойчивость keccak-256 к обратному преобразованию, которую алгоритм Гровера снижает примерно до 2^128 операций. Раскрытие секрета делает его публичным, поэтому протокол добавляет шаги commit и reveal, чтобы привязать каждое предизображение к одной транзакции. Два новых типа транзакций в op-geth обрабатывают это, а проверка отправителя заменяет ecrecover. Авторизация расходуется даже при откате вызова, и если кошелек пропускает шаг обновления на последней ссылке, этот адрес становится мёртвым. В посте также описан недостаток подмены транзакций, который команда обнаружила при его написании. Коммиты не содержат подписей, поэтому новый коммит раньше мог заменить ожидающий, и злоумышленник мог перепривязать раскрытое предизображение к своей собственной оплате. Правило, вступившее в силу 21 октября, делает победителем первый коммит. Ограничения изложены прямо. Депозиты и выводы на L1 по-прежнему используют ECDSA. Пока нет fault proofs, и по собственному признанию автора, цепочка даже не достигла Stage 0 на L2BEAT. Секвенсер запущен командой, а 160-битные адреса обеспечивают примерно 2^80 квантовой устойчивости ко второму прообразу. В посте также спрашивается, могут ли аккаунты на основе цепочки хешей стать EIP-7702 или нативным режимом валидации абстракции аккаунтов для общих L2.
