Перейти к содержимому

Выход за рамки секретной фразы восстановления в MetaMask с помощью Account Management Snaps (бета)

Начиная с сегодняшнего дня, управляйте Ethereum-аккаунтами в расширении MetaMask с помощью MetaMask Snaps. Новый шаг к будущему без разрешений для ...

8 мин чтения
Выход за рамки секретной фразы восстановления в MetaMask с помощью Account Management Snaps (бета)

Блокчейн-технологии обладают огромным потенциалом, обещая децентрализованный, устойчивый к цензуре и не требующий разрешений интернет. Однако сложность блокчейн-протоколов, таких как Ethereum, требует наличия интерфейса, позволяющего пользователям раскрыть этот потенциал. Спустя 100 миллионов пользователей MetaMask стал таким интерфейсом для многих — хотя путь к этому был сопряжён с определёнными трудностями.

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

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

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

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

Интеграция аппаратных кошельков как промежуточный шаг

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

Grid+ Lattice 1, Ledger Nano X, Trezor Model T и Keystone Pro — лишь некоторые из аппаратных кошельков, интегрированных с MetaMask. Подробнее — в центре аппаратных кошельков MetaMask.

Однако эти интеграции требуют значительных трудозатрат, технически сложны и предполагают тщательное управление партнёрскими отношениями. Например, наша интеграция MetaMask Mobile с Ledger задержалась более чем на год (мы всё ещё работаем над этим, обещаю!). Кроме того, из-за этих сложностей нам на протяжении многих лет приходилось отказывать в многочисленных запросах на интеграцию — даже когда компания приходила к нам с полностью работающей веткой кодовой базы MetaMask, поддерживающей их продукт (извините, BitBox!). При всём том, чего мы стремимся достичь, просто невозможно выделить время на проверку сотен строк кода и последующее слияние, одновременно соблюдая наши высокие стандарты безопасности и стабильности.

Это никогда не казалось правильным. Многие из нас в MetaMask, включая меня, пришли в эту индустрию благодаря её децентрализованному и не требующему разрешений обещанию — а не для того, чтобы стать де-факто привратниками. Чтобы в какой-то мере исправить эту ситуацию, мы совместно с Keystone реализовали не требующий разрешений метод интеграции аппаратных кошельков в MetaMask через QR-коды. Теперь, если сторонний производитель аппаратного кошелька может поддержать стандарт подключения через QR-код (ERC-4527), он может интегрироваться с MetaMask, не взаимодействуя с нами напрямую. Временная роль привратника в сфере интеграции аппаратных кошельков осталась в прошлом.

Хотя наша индустрия никогда не стоит на месте.

Account Management Snaps как будущее

За последние несколько лет наша индустрия достигла значительного прогресса в управлении аккаунтами. Многосторонние вычисления (MPC) стали быстрее и производительнее, позволяя генерировать криптографические ключи на разных узлах: это устраняет единые точки отказа в определённых контекстах. Смарт-контрактные аккаунты также становятся более доступными и дешёвыми благодаря различным решениям масштабирования Ethereum и улучшениям в соответствии с ERC-4337: добро пожаловать в мир социального восстановления и биометрической подписи. Аппаратные кошельки тоже продолжают развиваться: смотрите недавние анонсы нового Ledger Stax, Trezor Safe 3 и Keystone 3 Pro.

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

Единственный способ начать представлять, как интегрировать все эти различные решения для управления аккаунтами, — это сделать кошелёк более ориентированным на сообщество, полностью переосмыслив программное обеспечение кошелька, — именно это и делает MetaMask Snaps. По словам сооснователя MetaMask Дэна Финлея, конечная цель MetaMask Snaps — «вычисления без разрешений». Это амбициозная цель при создании продукта, чувствительного к вопросам безопасности, но, возможно, именно так можно направить MetaMask к воплощению видения универсального шлюза в web3 для каждого.

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

Для создания новых возможностей управления аккаунтами мы сегодня запускаем мощный Keyring API в MetaMask Extension — любой разработчик может использовать его, чтобы воплотить свои идеи по управлению аккаунтами в MetaMask. Запуск любого подобного обновления продукта — дело непростое, поэтому сегодня также начинается наша программа Experimental Beta для Account Management Snaps. Мы не хотели продолжать разрабатывать этот функционал за закрытыми дверями, поэтому если вы опытный пользователь, готовый тестировать расширенные функции, приглашаем вас опробовать наши первые три Snap в этой категории (Silent Shard, Safeheron, Capsule) и поделиться своим мнением.

Account Management Snaps в действии

Вы можете установить эти новые Snaps через официальный каталог MetaMask Snaps, а также перейти в раздел Experimental Settings в MetaMask Extension, чтобы протестировать новый интерфейс Account Management Snap. После установки и настройки Account Management Snap он появится в вашем списке аккаунтов MetaMask и будет работать как любой другой аккаунт в MetaMask: позволяя совершать транзакции и взаимодействовать с dapp.

Обратите внимание, что все Snaps являются сторонними сервисами и используются на ваш страх и риск. Тем не менее нас воодушевляет то, что сообщество уже создало. Первая версия Keyring API особенно хорошо подходит для реализации многофакторной аутентификации на основе MPC, снижая ограничение единственной точки отказа, присущее Секретной фразе восстановления.

Silent Shard

Silent Shard создаёт двухфакторную аутентификацию между MetaMask Extension и сопутствующим приложением для смартфона. Для удобства использования вы можете сохранить часть своего приватного ключа в менеджере паролей Apple или Google.

Установить Snap

Safeheron

Safeheron обеспечивает многофакторную аутентификацию 2/3 между MetaMask Extension и двумя приложениями для смартфона. Для повышения безопасности всё взаимодействие защищено через локальную сеть (LAN).

Установить Snap

Capsule

Capsule защищает приватный ключ вашего нового аккаунта MetaMask Extension с помощью удобного и надёжного passkey. Вы также можете связать этот аккаунт с любым другим аккаунтом Capsule, созданным на стороннем сайте.

Установить Snap

Безопасность

В настоящее время мы требуем, чтобы все Snaps, интегрируемые с MetaMask Extension, прошли независимый аудит кода своего Snap. Для Account Management Snaps мы также требуем дополнительного аудита их MPC-кода (или эквивалентного решения, например смарт-контракта или аппаратного кошелька), результаты которого должны быть общедоступны. Со временем мы придём к по-настоящему экосистеме без разрешений, и если это важно для вас уже сегодня, рекомендуем наш продукт для разработчиков MetaMask Flask.

Также стоит подтвердить, что архитектура Keyring API не позволяет этим Snaps получить доступ к вашей существующей Секретной фразе восстановления MetaMask. Новые Snaps должны либо генерировать полностью новый приватный ключ, либо выводить полностью новый приватный ключ из вашей Секретной фразы восстановления таким образом, чтобы исключить доступ к другим аккаунтам Ethereum. Account Management Snaps также используют преимущества защищённой изолированной среды выполнения, в которой работают все Snaps.

Следующие шаги

Мы в восторге от сегодняшнего релиза, и это только начало. Мы уверены, что первые Snaps, использующие новый Keyring API, продолжат совершенствоваться, и мы также планируем улучшить сам Keyring API. Сейчас мы активно работаем над поддержкой отправки userOps для смарт-контрактных аккаунтов ERC-4337, а также экспериментируем со Snaps на мобильных устройствах.

Начиная с сегодняшнего дня, если вы опытный пользователь, желающий экспериментировать с новыми функциями, скачайте последнюю версию MetaMask Extension и попробуйте Account Management Snaps. Если вы разработчик, заинтересованный в совместной работе с нами, ознакомьтесь с документацией Keyring API. Если у вас есть конкретная идея для Account Management Snap, мы будем рады её услышать. И наконец, поделитесь своими мыслями об этом релизе через нашу форму обратной связи.

Давайте вместе начнём решать проблемы, связанные с Секретной фразой восстановления.


Переведено ИИ. Может содержать ошибки. Пожалуйста, всегда проверяйте информацию.

Оцените перевод

Автор статьи:

  • Alex Jupiter

    Алекс — старший менеджер по продукту, работающий над будущим аккаунтов в MetaMask. Он увлечён идеями permissionless-инноваций, созданием децентрализованной политической экономики и переносом британской демократии на блокчейн.

    Читать все статьи