Чтобы децентрализованные приложения (DApp) и DeFi-протоколы стали по-настоящему популярными, они должны быть доступны на мобильных приложениях. Однако это далеко не всегда возможно, поскольку запуск мобильного приложения — это долго, дорого и не всегда безопасно. По крайне мере, так было раньше, сейчас же все может измениться благодаря проекту под названием WalletConnect. В этой статье мы расскажем, что это за протокол, как он работает и как с его помощью соединить свой смартфон с различными блокчейн-приложениями.

Что такое WalletConnect

Это блокчейн-протокол для установки безопасного и защищенного соединения между криптовалютными кошельками, установленными на мобильных телефонах, и децентрализованными приложениями (DApp), DeFi-решениями и DAO на блокчейне. Главная цель WalletConnect в том, чтобы позволить пользователям взаимодействовать с блокчейн-протекторами, используя свой смартфон без необходимости раскрывать приватные ключи или другие секретные данные.

На сегодня WalletConnect интегрирован с более чем 300 криптокошельками, среди которых наиболее популярны MetaMask, Rainbow, Trust Wallet и Argent. Соединение устанавливается либо путем глубокой ссылки (deep links), либо путем сканирования QR-кода. Когда пользователь хочет подключить свой мобильный криптокошелек к DApp, ему необходимо отсканировать QR-код или использовать глубокую ссылку, которые генерируются платформой WalletConnect. С их помощью криптокошелек и DApp устанавливают защищенное соединение, через которое мобильный кошелек может отправлять подписанные транзакции и запросы на выполнение операций в DApp. Это позволяет пользователю безопасно управлять своими криптоактивами и взаимодействовать с DApp, не раскрывая свои конфиденциальные данные.

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

Карта приложений Braavos Wallet
Система WalletConnect связывает популярные кошельки и Dapps. Источник

Как работает WalletConnect

Протокол позволяет устанавливать защищенное и конфиденциальное соединение между двумя пирами — dapp и кошелек — посредством инновационной технологии Mobile Linking. Она связывает мобильные приложения с веб-сайтами, социальными сетями, серверами электронной почты и прочими веб-ресурсами. В частности, Mobile Linking позволяет переходить к определенному контенту или запускать конкретную функцию внутри мобильного приложения, используя специальный идентификатор ресурса (URI). Например, вы можете получить в электронной почте ссылку на товар на маркетплейсе Amazon и затем открыть ее сразу в вашем мобильном приложении Amazon, а не в браузере. Это значительно улучшает пользовательский опыт и повышает конверсию, поскольку это просто, быстро и очень удобно. 

Mobile Linking работает следующим образом: когда вы нажимаете на ссылку (или QR-код), которая содержит URI для мобильного приложения, платформа проверяет, установлено ли это приложение на вашем мобильном устройстве. Если да, то она запускает приложение и перенаправляет вас к нужному контенту и/или функции. Если нет, то она открывает веб-страницу, которая предлагает скачать приложение или продолжить просмотр в браузере. После установки нужного приложения вы можете использовать URI и все пойдет по первому (правильному) сценарию.

Экосистема Braavos Wallet
WalletConnect соединяет ваш кошелек с NFT-маркетплейсами, криптобиржами, агрегаторами DAOs и другими блокчейн- и криптовалютными решениями. Источник

В случае WalletConnect используется модифицированная версия Mobile Linking, которая позволяет пользователям безопасно подключать свои мобильные кошельки к децентрализованным приложениям (DApp) с помощью сканирования QR-кода или глубокой ссылки. Этот процесс разделен на семь этапов:

  • QR-код / глубокая ссылка и сеансовый идентификатор. Децентрализованное приложение (DApp) создает уникальный идентификатор сеанса и генерирует QR-код, содержащий этот идентификатор.
  • Сканирование QR-кода / переход по глубокой ссылке. Пользователь открывает свой криптокошелек на своем мобильном устройстве и сканирует QR-код, созданный DApp. Или он использует глубокую ссылку.
  • Генерация ключей. Криптокошелек на мобильном устройстве генерирует пару ключей: публичный и приватный. Публичный ключ отправляется на DApp.
  • Защищенное соединение. Используя публичный ключ, полученный от кошелька, DApp устанавливает защищенное соединение с телефоном.
  • Подпись и взаимодействие. Когда пользователь выполняет операцию в DApp (например, отправляет транзакцию), DApp создает данные операции и отправляет их на мобильное устройство через защищенное соединение.
  • Подпись и возврат данных. Кошелек на телефоне подписывает данные операции приватным ключом и отправляет подписанные данные на DApp.
  • Проверка подписи. DApp проверяет подпись, используя публичный ключ, который был получен ранее. Если подпись верна, операция считается авторизованной и может быть выполнена.

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

Плюсы и минусы WalletConnect

Основные преимущества WalletConnect:

  • Простота. WalletConnect создан специально для мобильных устройств, что позволяет пользователям смартфонов получать доступ и взаимодействовать с блокчейн-приложениями простым, удобным и безопасным способом.
  • Соединение на основе QR-кода. Протокол использует QR-коды для установления безопасного однорангового соединения между dApps и мобильными криптовалютными кошельками. Это очень простой и удобный способ, который понятен и привычен для большинства пользователей.
  • Безопасный обмен информацией. WalletConnect использует безопасный обмен данными для отправки запросов и получения ответов между dApps и мобильным криптовалютным кошельком. Это обеспечивает безопасность и конфиденциальность всех коммуникаций и гарантирует, что приватные ключи и другие важные пользовательские данные не будут скомпрометированы.
  • Поддержка множества кошельков. WalletConnect поддерживает более 100 самых популярных мобильных криптокошельков, позволяя пользователям подключаться к dApps, используя кошелек, которому они доверяют.
  • Открытый исходный код. WalletConnect — это open-source software, что позволяет разработчикам свободно использовать его и вносить свой вклад в его развитие. Это может помочь обеспечить хорошее обслуживание протокола и его дальнейшее улучшение.

Основные недостатки WalletConnect:

  • Зависимость. WalletConnect требует наличия сервера моста, который ретранслирует сообщения между кошельком и DApp. Это создает риск сбоев или задержек в связи, а также потенциальную уязвимость для атак.
  • Ограниченность. На сегодня WalletConnect не поддерживает все существующие кошельки и DApp, а только те, которые интегрировали протокол. Это означает, что пользователи могут столкнуться с проблемами совместимости или доступности некоторых Dapps и DeFi-проектов.
  • Сложность. WalletConnect может быть сложным для понимания и использования для новичков или непрофессиональных пользователей. Также WalletConnect может требовать дополнительных шагов для подключения или подтверждения транзакций, что может быть неудобным или запутанным.

Как использовать WalletConnect

Процесс использования WalletConnect для подключения к DApp может немного отличаться в зависимости от конкретного кошелька и/или децентрализованного приложения, но в любом в случае процедура остается простой и быстрой. Чтобы показать, как это происходит, мы покажем, как подключиться к бирже PancakeSwap с помощью криптовалютного кошелька Trust Wallet и протокола WalletConnect. 

Шаг 1. Получите доступ к DApp PancakeSwap. Откройте браузер и перейдите на https://pancakeswap.finance. Не забывайте всегда заходить на официальный сайт интересующего вас DApp. Найдите кнопку «Connect Wallet» в правом верхнем углу или рядом с кнопкой «Trade Now».

Регистрация Braavos Wallet - 1
Шаг 2. Подключите приложение Trust Wallet. Нажмите на опцию «Connect Wallet» и выберите опцию WalletConnect, чтобы отобразить QR-код.

Регистрация Braavos Wallet - 2
Шаг 3. Перейдите в приложение Your Trust Wallet. Затем перейдите в приложение Trust Wallet, нажмите «Settings», выберите «WalletConnect». Затем нажмите «New connection», чтобы иметь возможность сканировать предоставленный QR-код. 

Регистрация Braavos Wallet - 3
Шаг 4. Сканируйте QR-код. Вернитесь к расширению браузера и отсканируйте предоставленный QR-код. Обратите внимание, что это может занять несколько секунд. 

Регистрация Braavos Wallet - 4
 

Шаг 5. Подключитесь к PancakeSwap. В случае успеха вы будете автоматически перенаправлены в DApp PancakeSwap на Trust Wallet. Нажмите «Connect», чтобы связать свой кошелек с DApp. Сайт PancakeSwap покажет, что вы подключены через браузер в приложении. Это означает, что теперь вы готовы к использованию PancakeSwap с помощью Trust Wallet.

Регистрация Braavos Wallet - 5
Шаг 6. Совершите транзакцию. Чтобы совершить транзакцию, нажмите «Trade Now» на PancakeSwap и выберите токены, которые хотите обменять. Например, BNB на ETH. Введите сумму BNB, которую вы хотите обменять на ETH, и нажмите «Swap». 

Регистрация Braavos Wallet - 6
Шаг 7. Подтвердите обмен. Затем подтвердите, что данные в порядке, и нажмите «Confirm exchange». Вам нужно будет нажать «Accept», чтобы подтвердить обновленную цену (если цена изменится, как это было в этом примере). 

Регистрация Braavos Wallet - 7
После завершения транзакции подтвердите то же самое в приложении Trust Wallet. Помните, что это может занять несколько минут.

После успешной транзакции не забудьте отключить WalletConnect от приложения Trust Wallet. Для этого щелкните значок Wallet в правом верхнем углу, затем «Disable» в раскрывающемся меню. Это очень важный шаг для безопасности.

Вот и все! Вот как вы можете использовать WalletConnect для доступа к децентрализованному приложению.

Заключительные мысли

Протокол WalletConnect представляет собой инновационное решение, которое устраняет барьеры между мобильными криптокошельками и DApp. Возможность безопасного подключения мобильных устройств к DApp через безопасные каналы открывает дорогу к более удобному и максимально защищенному взаимодействию с миром блокчейна и криптовалют. Таким образом, независимо от того, являетесь ли вы опытным пользователем или новичком, WalletConnect предоставляет удобный способ взаимодействия с увлекательными возможностями децентрализованных приложений, приближая нас к будущему цифровых финансов и инноваций.