March 21, 2023

Hybrid Custody на Flow — лучшее из хранения приложений и самостоятельного хранения

В мире потребительского блокчейна есть две распространенные модели управления ключами блокчейна: хранение пользователем (или самостоятельным хранением) и хранение приложения.

Опекунство над пользователями считается лучшим вариантом по умолчанию в сообществе Web3. Пользователь хранит свой собственный ключ(и) на устройстве, находящемся под его контролем (как правило, на ноутбуке или телефоне), и доступ к этому ключу управляется программным обеспечением, называемым «кошельком». Приложения, которые предоставляют услуги блокчейна пользователю, делают запросы к кошельку, а кошелек проверяет и представляет запрос пользователю на утверждение перед выполнением. Преимущество этого заключается в том, что он является самостоятельным и дает пользователю абсолютный контроль над своими активами, обеспечивая при этом полную защиту от потери активов из-за неудачных или атакованных поставщиков услуг.

Для пользователей, плохо знакомых с Web3, настройка самообслуживания сбивает с толку и создает трения. Ожидается, что пользователь установит и настроит программное обеспечение своего кошелька еще до того, как он воспользуется приложением, для которого оно требуется. Если вы некоторое время были в пространстве Web3, вы, возможно, не помните путаницы, когда вас просили запомнить двенадцать случайных слов, а затем разрешали «полный доступ ко всем веб-сайтам» для небольшого количества программного обеспечения, о котором вы никогда раньше не слышали. Это еще хуже на мобильных устройствах, где пользователи привыкли начинать работу без создания какой-либо учетной записи (особенно такой, которая требует установки второго приложения!). Dapper Wallet и другие компании сделали все возможное, чтобы упростить этот процесс, но данные показывают, что он по-прежнему является основной отправной точкой для адаптации пользователей.

Желая устранить это трение, большое количество разработчиков приложений обеспечивают опеку над своими пользователями. «Охрана приложений» дает пользователям очень естественный процесс адаптации в стиле Web2 и позволяет поставщику приложений продавать свои цифровые продукты и услуги, используя традиционные способы оплаты (например, кредитную карту в Интернете или встроенные покупки в приложении на мобильных устройствах). Этот подход особенно привлекателен для мобильных устройств и для компаний, у которых уже есть клиентская база с входом в учетную запись (например, Netflix или Spotify).

У хранения приложений есть еще одно преимущество: приложению не нужно приставать к пользователю для получения разрешения через кошелек. Программное обеспечение приложения может напрямую управлять содержимым учетной записи, созданной для пользователя. Например, если пользователь покупает предмет в сети с помощью покупок внутри приложения (IAP) в мобильной игре, он не хочет возвращаться в свой кошелек, чтобы одобрять каждое взаимодействие с этим предметом.

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

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

Это вносит свои трудности. Мир внутри приложения (учетная запись хранения приложения) и мир вне приложения (учетная запись хранения пользователя) не связаны. Мир приложений не видит и даже не может запросить доступ к активам в учетной записи хранения пользователя. И пользователь не может использовать мир приложений Web3, не удалив их из учетной записи хранения приложений, где они, по-видимому, весьма полезны! И что хуже всего, если поставщик приложения закроется, пользователь может потерять все активы в учетной записи хранения приложения без возможности восстановления.

К счастью, есть подход, который дает нам лучшее из обоих миров.

Используя абстракцию учетной записи — в частности, делегирование учетной записи — одна учетная запись блокчейна («дочерняя учетная запись») может делегировать управление другой учетной записи («родительская учетная запись»). Доступ к дочерней учетной записи можно получить с помощью криптографических ключей, как обычно, но владелец родительской учетной записи также может напрямую получить доступ к активам дочерней. Важно отметить, что учетная запись, предоставляющая делегирование («дочерняя»), должна явно предоставить этот доступ и может отозвать этот доступ в любое время по любой причине.

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

Поскольку эти отношения делегирования отслеживаются в цепочке, приложение может видеть подключение к родительской учетной записи и может видеть активы в этой учетной записи и других связанных с ней дочерних учетных записях. Он может запросить временный доступ к этим активам из программного обеспечения кошелька (используя стандартный запрос на подпись транзакции) или даже предложить перенести эти активы в учетную запись хранения приложения, чтобы обеспечить постоянный доступ.

Чтобы узнать больше об абстрагировании учетной записи и гибридном хранении в Flow, посетите http://flow.com/hybrid-custody .