Hardware Signer: повышение безопасности криптовалютных кошельков.
Опыт
В последние несколько месяцев мы, сотрудники компании Braavos, сосредоточились на внедрении основ, необходимых пользователям для работы с некастодиальным кошельком.
Мы выпустили кошелек в виде браузерного расширения для всех популярных браузеров и приложения для устройств на базе iOS и Android. Пользователи могут получить доступ к своим средствам в любое время и в любом месте.
Мы внедрили в кошелек множество функций, таких как галерея NFT для аудио-, видео- и 3D-изображений.
Transaction Explainer помогает пользователям понять, что именно приложения (dApps) просят их подписать.
Встроенная биржа позволяет пользователям обменивать токены внутри кошелька по самым выгодным курсам на StarkNet.
Мобильные приложения, соответствующие нашим представлениям о повышении безопасности за счет лучшего пользовательского интерфейса, превосходят браузерные расширения.
Все вышеперечисленные возможности были совершенно новыми для StarkNet на момент появления Braavos, но другие кошельки в криптовалютной экосистеме уже реализовали подобные возможности.
Тем не менее, нам было важно охватить «основы» и предоставить пользователям ту функциональность, к которой они привыкли в сети Ethereum.
Разобравшись с основами, мы направили все свои усилия на внедрение новых инноваций, обеспечиваемых абстракцией счетов в сочетании с низкими газовыми тарифами L2. Наша цель состоит в том, чтобы повысить безопасность и удобство использования некастодиальных кошельков, чтобы люди не переходили на централизованные решения.
Общие способы защиты аккаунтов
Сегодня в криптографии существует два основных способа защиты счета: seed-фраза или аппаратный кошелек.
Seed-фраза
Seed-фраза — это 12 или 24 слова, которые пользователи должны надежно хранить и никому никогда не разглашать.
Она имеет не очень удобный пользовательский интерфейс, так как подвержена фишинговым атакам и часто теряется, что приводит к потере средств.
Аппаратный кошелек
Аппаратный кошелек обеспечивает надежную защиту, но создает очень большие трудности для обычных пользователей, так как это еще одно физическое устройство, с которым нужно работать, которое нужно специально покупать и которое стоит дорого, и пользователи должны научиться им пользоваться.
Есть ли лучший способ?
Hardware Signer
Hardware Signer — это первый шаг на нашем пути к улучшению пользовательского опыта криптовалют и повышению их доступности и безопасности для обычных пользователей, при этом без ущерба для децентрализации и самостоятельного хранения.
Что же такое Hardware Signer?
Hardware Signer состоит из двух частей:
- Защищенная подсистема в мобильном устройстве пользователя
- Смарт-контракт учетной записи, который может выполнять произвольную логику
(a.k.a. Account Abstraction)
Защищенная подсистема
Hardware Signer использует защищенные подсистемы, встроенные в устройства пользователей iPhone Secure Enclave или Android Phone’s Titan HSM для защиты счета.
Чип Secure Enclave / Titan представляет собой специальную изолированную подсистему, полностью отделенную от процессора приложений, которая может генерировать закрытые ключи и подписывать сообщения. Он генерирует ключи с помощью внутреннего генератора случайных чисел (TRNG) и подписывает сообщения по эллиптической кривой NIST-P256 (secp256r1) с помощью встроенного ускорителя открытых ключей (PKA). Закрытые ключи никогда не покидают защищенную систему и неизвестны, и недоступны никому, даже пользователю или самому приложению.
Это означает, что в случае компрометации ядра процессора приложений вашего устройства, ключи остаются в безопасности!
Разберем подробнее что такое Secure Enclave
В процессе изготовления чипа UID (уникальный идентификатор) генерируется TRNG и хранится в PKA (Public Key Accelerator). Он не может быть прочитан и никогда не покидает PKA (ускоритель открытых ключей), поэтому неизвестен даже процессору Secure Enclave и операционной системе Secure Enclave Processor Operating System (SepOS).
Этот UID представляет собой случайное число, уникальное для каждого устройства, и используется для шифрования всех остальных ключей, которые будут генерироваться в будущем на этом устройстве.
Работает это следующим образом: приложение запрашивает у SepOS генерацию новой пары ключей, SepOS дает команду Secure Enclave TRNG сгенерировать ключ и зашифровать его (используя UID). Затем приложение может запросить у SepOS расшифровку ключа и подписать сообщение с помощью сгенерированного ключа. В течение всего этого процесса сгенерированный ключ не покидает анклав и никому не известен.
(Более подробную информацию о Secure Enclave можно найти здесь).
То, Способ построения и функционирования Secure Enclave, а также тот факт, что он является мишенью для атак со стороны влиятельных корпораций и правительств по всему миру, является причиной того, что его безопасность превосходит стандартные аппаратные кошельки.
Абстракция счета
Сила Braavos как кошелька на основе смарт-контрактов в сети StarkNet заключается в том, что он состоит из двух основ:
- Клиентская часть (например, приложение), которая позволяет пользователю просматривать/подписывать транзакции и отправлять их в блокчейн.
- На стороне блокчейн — смарт-контракт аккаунта, который может выполнять произвольную логику, а в нашем случае — произвольную логику проверки подписи.
Приложение подписывает транзакцию с помощью модуля безопасности мобильного устройства, а затем отправляет в блокчейн, который может ее подтвердить.
Как уже упоминалось выше, модуль безопасности на iPhone и телефонах Android использует криптографию NIST-P256 (secp256r1), которая не совместима ни с одной из основных криптографических схем блокчейна, включая StarkNet.
Именно поэтому наличие смарт-контракта, через который проходят все транзакции и который может выполнять произвольную логику, имеет решающее значение для использования этих аппаратных защищенных модулей на телефонах iPhone и Android.
Биометрия
Как пользователь подтверждает транзакцию?
Может ли вредоносное приложение автоматически подписывать транзакцию без согласия пользователя?
Ответ очевиден: НЕТ!
Особенностью встроенного модуля безопасности в мобильных устройствах, таких как Secure Enclave, является то, что он поддерживает внутреннюю биометрическую аутентификацию личности пользователя.
Это означает, что даже фактическое разрешение на подписание транзакции осуществляется непосредственно в Secure Enclave. Это означает, что одобрение транзакции, осуществляемое по отпечатку пальца или лицу пользователя, не проходит через приложение.
Восстановление доступа
Если никто не знает закрытого ключа, что произойдет, если устройство будет утеряно или заблокировано? Как пользователь может вернуть себе контроль над учетной записью?
В Braavos, если пользователь включил функцию Hardware Signer, учетная запись имеет 2 открытых ключа:
- Ключ Hardware Signer, который будет использоваться для подписи всех транзакций
- Ключ, полученный из seed-фразы, которым можно подписать только одну транзакцию — «Запрос на удаление Hardware Signer».
Этот запрос на удаление Hardware Signer не будет выполнен сразу, а будет иметь временную 4 дневную задержку (может настраиваться). Эта задержка позволяет пользователю использовать Hardware Signer для отмены такого запроса.
Это означает, что, если устройство будет украдено, потеряно или заблокировано, пользователи смогут восстановить свою учетную запись по истечении 4 дневной задержки.
Однако если seed-фраза будет украдена, и злоумышленник отправит запрос на удаление Hardware Signer, то пользователь автоматически (и неоднократно) получит уведомление и сможет отменить запрос, сохранив все активы в безопасности.
Резюме
Функция Hardware Signer обеспечивает как современный уровень безопасности для пользователей криптовалют, так и привычный для пользователей опыт работы с web2-решениями. В этом смысле подписание транзакции происходит так же легко и непринужденно, как и оплата с помощью Apple/Google pay.
Это лишь один, но яркий пример возможностей кошелька на основе смарт-контракта (он же абстракция счета) и нового пространства для проектирования, которое он открывает.
Мы предвидим развитие все новых и новых возможностей, которые приведут криптоиндустрию к лучшему и более инклюзивному будущему, обеспечивая как новым, так и существующим пользователям бескомпромиссную безопасность в сочетании с бескомпромиссным пользовательским опытом (UX).
Кошелек Braavos доступен на платформах Android и iOS, а также в различных браузерах: Chrome, Firefox и др.
Motty Lavie, основатель и генеральный директор Braavos.
@mottylen