Вернуться в блог
Аналитика

Скандал вокруг Ledger Recover: уроки для самостоятельного хранения

Плоская иллюстрация: аппаратный кошелёк разбивает свою seed-фразу на три зашифрованных фрагмента, отправленных трём компаниям-кастодианам.

16 мая Ledger — производитель самых продаваемых аппаратных кошельков — анонсировала Recover: опциональную подписку, которая создаёт резервную копию вашей seed-фразы, шифруя её внутри устройства, разбивая на три фрагмента и рассылая эти фрагменты трём кастодианам. За считаные часы анонс превратился в скандал вокруг Ledger Recover — один из самых резких протестов, какие самостоятельное хранение видело за годы, с удалёнными твитами, спешно организованными интервью и, в итоге, приостановленным запуском. Спустя три недели, когда страсти немного улеглись, стоит спросить: что этот эпизод на самом деле доказал?

Наш ответ, сразу и без обиняков: спор никогда не был по-настоящему об одном опциональном сервисе. Он был о публичном крахе допущения — будто приватные ключи физически не могут покинуть защищённый чип (secure element) аппаратного кошелька, — которое оказалось всего лишь политикой, а не законом природы. Безопасность, которую нельзя проверить, — это обещание, а обещание может измениться с очередным обновлением прошивки.

Что на самом деле делает Ledger Recover

Если убрать возмущение, механику описать несложно. Ledger Recover — это опциональный сервис по подписке стоимостью около $10 в месяц, который шифрует seed-фразу кошелька внутри устройства, разбивает зашифрованный материал на три фрагмента и распределяет их между тремя разными компаниями: самой Ledger, Coincover и EscrowTech. Ни один отдельный кастодиан не располагает достаточной информацией, чтобы восстановить seed-фразу. Для восстановления пользователь подтверждает свою личность документом государственного образца; после этого двое из трёх кастодианов передают свои фрагменты на новое устройство, где seed-фраза собирается заново.

Сервис появился вместе с обновлением прошивки для Nano X и требует явного подключения: ничего не резервируется, пока владелец не оформит подписку, не подтвердит операцию на устройстве и не пройдёт проверку личности. Ledger последовательно придерживалась этого тезиса всё время, и никаких публичных свидетельств, которые бы ему противоречили, нет.

Блок-схема Ledger Recover: устройство шифрует и разбивает seed-фразу на три фрагмента, которые хранят Ledger, Coincover и EscrowTech, а проверка личности открывает восстановление по схеме два из трёх.
Как Ledger Recover распределяет зашифрованную seed-фразу между тремя кастодианами.

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

Если сервис опциональный, откуда столько ярости? Потому что анонс раскрыл возможность, а не просто продукт. Чтобы Recover вообще мог существовать, прошивка Ledger должна уметь выводить материал seed-фразы — пусть зашифрованный и разбитый на фрагменты, но всё же материал seed-фразы — за пределы защищённого чипа и за пределы устройства. Значительная часть клиентов Ledger искренне полагала, что это невозможно по самой конструкции, и маркетинг самой компании подкреплял это убеждение: месячной давности пост официального аккаунта, утверждавший, что приватные ключи никогда не покидают защищённый чип, всплыл за считаные часы и расходился без устали.

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

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

Вы всегда доверяли прошивке

Вот неудобная часть, и она выходит далеко за пределы одного производителя. Защищённый чип оберегает ключи от физического извлечения и вмешательства; он не решает, что именно прошивке устройства позволено у него запрашивать. Любое закрытое устройство, которое генерирует и хранит ваши ключи, просит вас довериться ключам подписи кода его производителя, процессу выпуска, сотрудникам и стойкости к юридическому давлению — и так каждый год, пока устройство остаётся в использовании.

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

Стоит честно сказать, где в этом стеке стоим мы сами. Приложение Ownbit имеет закрытый исходный код, как и большинство кошельковых приложений. Честный ответ на эту реальность — не делать вид, будто доверия можно избежать, а сократить то, что оно должно покрывать; именно на этом построена наша модель безопасности: контракты мультиподписи открыты, каждый ключ в мультиподписи Ownbit — это стандартная seed-фраза BIP39, а средства остаются восстановимыми без серверов Ownbit, если следовать опубликованным руководствам по самостоятельному восстановлению. Мерило кошелька — не в том, доверяете ли вы производителю (где-то вы неизбежно доверяете), а в том, насколько мало это доверие должно покрывать и какую его часть вы можете проверить.

Проблема, которую хочет решить Recover, реальна

В разгар всеобщей травли легко забыть, что Ledger метит в настоящий сценарий отказа. Широко цитируемые оценки давно предполагают, что что-то около пятой части всех биткоинов застряло в кошельках, ключи от которых потеряны. Seed-фраза на одном листе бумаги — это единая точка отказа в обе стороны: любой, кто её найдёт, может забрать всё, а если она сгорит, попадёт под воду или просто забудется, вместе с ней исчезнет всё. Биржи решили это с помощью аккаунтов и служб поддержки — ценой хранения, и о такой сделке индустрия не раз имела повод пожалеть.

Так что к этому замыслу стоит отнестись по справедливости. Аппаратные кошельки, сервисы MPC и регулируемые кастодианы — каждый из них обслуживает реальных пользователей с реальными потребностями, и застрахованный сервис восстановления действительно подойдёт некоторым из них. Возражение в самом сердце скандала вокруг Ledger Recover уже: сервис тихо переписал модель доверия устройства, которое люди уже купили, и этот пересмотр невозможно проверить независимым аудитом, пока прошивка остаётся закрытой.

Разделить секрет — не то же самое, что разделить контроль

Схема Recover — три фрагмента, два для восстановления — на поверхности звучит как мультиподпись. Но именно в различии вся суть. Разбиение seed-фразы на фрагменты делит один секрет, который в конце концов нужно собрать заново: в момент восстановления полный ключ снова оказывается в одном месте, и всё держится на сторонах и процессе, выполняющих эту сборку. Мультиподпись делит сам контроль. Две или три независимые seed-фразы, сгенерированные на отдельных устройствах разными людьми, нигде не соединяются; кошельку 2-of-3 нужны две подписи on-chain, и нет никакой церемонии, в которой одна машина хотя бы на миг держала бы всё целиком.

Именно это различие — причина, по которой MultiSig лежит в основе конструкции Ownbit с 2017 года. Каждый участник хранит стандартную seed-фразу BIP39, правила подписи обеспечивает блокчейн, а не слово компании, и серверы Ownbit координируют подписи, никогда не держа при этом ни одного ключа. Потеря одного ключа переживаема, кража одного ключа бесполезна, и ни один кастодиан — включая нас — не хранит ничего, что позволяло бы двигать средства.

Сравнительная схема: разбитая на фрагменты seed-фраза в момент восстановления собирается обратно в один полный ключ, тогда как мультиподпись 2-of-3 использует независимые ключи, которые подписывают по отдельности и никогда не соединяются.
Фрагментирование заново собирает один секрет; ключи мультиподписи подписывают по отдельности и никогда не встречаются.

Что из этого вынести, по состоянию на июнь 2023 года

Первое: паниковать нет оснований. Ничто за эти три недели не продемонстрировало эксплойта, кражи или сломанного устройства, а не подключённый к Recover Ledger сталкивается ровно с теми же практическими рисками, что и в апреле. Если он у вас есть, разумные реакции — спокойные: обдуманно устанавливайте обновления прошивки и пересматривайте то, чему вы доверяете, а не реагируйте на то, что вам говорят.

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

Третье: для сумм, которые имеют значение, перестаньте зависеть от какого-либо одного ключа или какой-либо одной компании. Распределение контроля через мультиподпись 2-of-3 убирает ту самую единую точку отказа, в которую целится Recover, не передавая ни одному кастодиану восстановимую копию вашей seed-фразы. На момент написания Ledger приостановила развёртывание Recover и обязалась открыть больше своего кода до запуска — верное направление, и оценивать его следует так, как в этой индустрии следует оценивать всё: по тому, что можно проверить на момент выхода. Устойчивый урок скандала вокруг Ledger Recover в том, что расстояние между «не может» и «не станет» — и есть весь предмет самостоятельного хранения, и пользователи вправе знать, что именно из этого они купили.

Часто задаваемые вопросы

Что такое Ledger Recover?

Ledger Recover — это опциональный сервис по подписке, анонсированный Ledger 16 мая 2023 года, который создаёт резервную копию seed-фразы аппаратного кошелька. Устройство шифрует seed-фразу, разбивает её на три фрагмента и распределяет их между тремя кастодианами — Ledger, Coincover и EscrowTech. Для восстановления требуются проверка удостоверения личности и фрагменты от двух из трёх кастодианов.

Является ли Ledger Recover бэкдором?

Не в обычном смысле: он опционален и требует подключения, подписки и физического подтверждения на устройстве. Скандал возник потому, что сама эта функция показала: прошивка Ledger в принципе способна выводить зашифрованный материал seed-фразы из защищённого чипа — а значит, защита, которую многие пользователи считали физической, на деле является политикой прошивки.

Безопасно ли по-прежнему пользоваться аппаратными кошельками Ledger?

За время этого эпизода не было продемонстрировано ни эксплойта, ни кражи, ни уязвимости, а устройство, которое так и не подключается к Recover, ведёт себя как прежде. Изменилась модель доверия, из которой стоит исходить пользователям: устройство с закрытой прошивкой ровно настолько заслуживает доверия, насколько заслуживают его код и процессы производителя. Многие держатели сочтут это приемлемым; другие распределят риск с помощью мультиподписи.

Какая существует самостоятельная альтернатива сервисам восстановления seed-фразы?

Главная альтернатива — мультиподпись. Кошелёк с мультиподписью 2-of-3 распределяет контроль между тремя независимыми seed-фразами, хранящимися на разных устройствах, поэтому потеря одного ключа не означает потерю средств, и ни одна компания никогда не хранит восстановимую копию seed-фразы. Она решает ту же задачу восстановления после несчастного случая — без кастодиана и без проверки личности.

Если из-за последних недель вы заново проверяете, где сосредоточено ваше собственное доверие, практичный следующий шаг — перестать полагаться на какой-либо один ключ или какую-либо одну компанию. Ownbit MultiSig позволяет распределить контроль между стандартными seed-фразами, которые вы держите сами, с открытыми контрактами и моделью безопасности, устроенной так, чтобы средства оставались восстановимыми даже без наших серверов. Это более спокойное место, откуда можно наблюдать за следующим скандалом.