WATS Wallet logoWATS Wallet
Руководство9 мин чтения

Как подключить кошелёк к dApp (и остаться в безопасности)

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

Чтобы безопасно подключить кошелёк к dApp, добирайтесь до официального сайта сами, а не через рекламу или ссылку, нажимайте кнопку подключения самого dApp, выбирайте способ подключения (браузерное расширение или QR-код WalletConnect), одобряйте только подключение в режиме чтения, а затем внимательно читайте каждую подпись и каждое одобрение токена перед подтверждением. Обычное подключение безвредно и не даёт сайту власти над вашими средствами. Риск начинается в момент, когда вы что-то подписываете, поэтому вся игра в том, чтобы понимать разницу между подключением, подписью и одобрением и никогда не давать одобрение, которого вы не понимаете.

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

Что на самом деле делает подключение к dApp

dApp, или децентрализованное приложение, — это сайт, который общается с блокчейном. Биржи, кредитные рынки, NFT-маркетплейсы и игры — всё это dApp. Чтобы пользоваться одним из них, вы подключаете кошелёк, который является мостом между сайтом и блокчейном. Если идея децентрализованных приложений для вас в новинку, наш обзор что такое Web3 задаёт контекст, а наш вводный материал что такое криптокошелёк объясняет сам инструмент, который выполняет подключение.

Самое важное, что нужно понимать, — подключение происходит на трёх очень разных уровнях, и они несут очень разный риск.

1. Подключение в режиме чтения

Когда вы впервые подключаетесь, dApp просто узнаёт публичный адрес вашего кошелька и считывает ваши балансы из блокчейна. Вот и всё. Он не может переместить ни один токен и не может ничего подписать от вашего имени. Подключение в режиме чтения примерно настолько же чувствительно, как сообщить кому-то номер своего счёта: вас могут найти, но не могут снять средства.

2. Подпись сообщения

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

3. Одобрение транзакции или лимита токена

Вот где на кону реальные деньги. Подпись транзакции действительно выполняет что-то в ончейне: обмен, перевод, минт или одобрение токена. Одобрение токена — то, за чем нужно следить пристальнее всего, и оно заслуживает собственного раздела.

Что такое одобрение токена и почему неограниченные одобрения рискованны

В EVM-сетях вроде Ethereum, Arbitrum, Optimism, Polygon и Base dApp не может тратить ваши токены, пока вы сначала не дадите ему лимит. Когда вы одобряете токен, вы говорите блокчейну: этому конкретному контракту разрешено перемещать вот столько этого токена из моего кошелька. Именно это разрешение позволяет, например, децентрализованной бирже забрать ваш USDC в обмен.

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

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

Одобрения — это концепция EVM. В Solana и TON модель разрешений отличается, но один и тот же инстинкт применим везде: читайте, что вы авторизуете, и не давайте всеобъемлющую власть, которая вам не нужна. Эта привычка — основа лучших практик безопасности криптокошелька.

Два основных способа подключиться

Есть два пути, которыми пользуется большинство, и правильный зависит от того, на компьютере вы или на телефоне.

Браузерное расширение

На десктопе самый чистый путь — кошелёк, который живёт в вашем браузере. Расширение WATS для Chrome работает в браузерах на Chromium (Chrome 120+, Edge и Brave), обеспечивает подключение к dApp в один клик и подписывает транзакции прямо в браузере. Оно бесплатное и полностью некастодиальное, то есть вы держите собственные ключи и никто другой не может переместить ваши средства. Когда dApp показывает запрос на подключение, расширение всплывает, вы выбираете аккаунт и одобряете подключение в режиме чтения. Каждая последующая подпись появляется в том же окне расширения, так что вы можете прочитать её перед подтверждением.

WalletConnect или QR-код

На мобильном — или когда вы хотите использовать десктопный dApp с телефонным кошельком — стандартом является WalletConnect. dApp показывает QR-код, вы сканируете его мобильным кошельком, и зашифрованная сессия связывает их. WATS Hot Wallet и мобильное приложение WATS (iOS и Android) подключаются к dApp именно так. Ключевой момент безопасности — сканировать только тот QR-код, который вы сами вызвали на настоящем сайте, и отключать сессию по завершении, а не оставлять её открытой бесконечно.

СпособЛучше всего дляКак связываетНа что обратить внимание
Браузерное расширениеИспользование на десктопеВнедряется в браузерПоддельные расширения; устанавливайте только из официальных источников
WalletConnect / QRМобильное, или десктопный dApp с телефономЗашифрованная QR-сессияСканируйте только QR, который вы вызвали на настоящем сайте

Дрейнеры кошельков и поддельные сайты dApp

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

  • Поддельные интерфейсы. Мошенники клонируют популярный dApp пиксель в пиксель и покупают поисковую рекламу, чтобы фейк оказался выше настоящего. Сайт выглядит безупречно, но кнопка подключения подведена к контракту-дрейнеру.
  • Подписи-дрейнеры. Подключившись, поддельный сайт просит вас подписать то, что выглядит как рутинное действие. На деле подпись — это разрешение на токен (permit) или одобрение перевода, которое отдаёт ваши активы атакующему одним кликом.
  • Срочность и приманка. Дрейнеры процветают на давлении: фейковый эирдроп, который скоро закроется, баннер «заберите вашу награду», личное сообщение от «поддержки» со ссылкой. Срочность существует, чтобы вы не прочитали подпись.

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

Как безопасно подключиться к dApp: пошагово

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

  1. Добирайтесь до dApp через источник, которому доверяете. Вводите URL сами, используйте сохранённую закладку или переходите по ссылке из проверенных каналов проекта. Никогда не кликайте по рекламе, непроверенным результатам поиска или ссылкам из личных сообщений. Подтвердите домен символ за символом перед подключением.
  2. Нажмите кнопку подключения самого dApp и выберите способ. Используйте кнопку подключения на самой странице, затем выберите путь: расширение WATS для Chrome на десктопе или WalletConnect, отсканировав QR-код мобильным приложением WATS или Hot Wallet на телефоне. Убедитесь, что запрос на подключение действительно пришёл от вкладки, которую вы открыли.
  3. Сначала одобряйте только подключение в режиме чтения. Первоначальный запрос должен лишь сообщить ваш адрес. Он не должен просить тратить токены. Если первое подключение сразу требует одобрения токена или необычной подписи, остановитесь и закройте вкладку.
  4. Читайте каждую подпись перед подтверждением. Кошелёк показывает вам, что вы подписываете. Проверьте, обычное это сообщение или транзакция, какого контракта оно касается и какое разрешение даёт. Если запрос — это разрешение (permit) или одобрение, которое вы не инициировали, не подписывайте его.
  5. Ограничивайте одобрения токенов тем, что вам нужно. Когда dApp нужен лимит, задавайте точную сумму вместо неограниченной там, где кошелёк это позволяет. Одобрять немного чаще — небольшая плата за то, чтобы ограничить, сколько вообще может коснуться любой отдельный контракт.
  6. Отключайтесь и отзывайте, когда закончите. Отключите сессию или расширение по завершении и периодически просматривайте и отзывайте одобрения, которыми больше не пользуетесь. Отключение завершает сессию, но не удаляет одобрения, так что отзыв — это отдельный, важный шаг.

Как отзывать одобрения токенов

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

  • Найдите свои одобрения. Используйте надёжный инструмент проверки одобрений или раздел просмотра одобрений токенов в обозревателе блоков. Подключитесь в режиме чтения и посмотрите список контрактов, которые сейчас имеют разрешение тратить каждый из ваших токенов.
  • Выявите опасные. Пристальнее всего смотрите на неограниченные лимиты и на любой контракт, который вы не узнаёте или больше не используете. Это те открытые двери, которые вы хотите закрыть.
  • Отправьте транзакцию отзыва. Отзыв возвращает лимит к нулю. Это ончейн-транзакция, так что она стоит небольшого газа, но навсегда убирает способность этого контракта перемещать ваши токены.
  • Сделайте это рутиной. Просматривайте свои одобрения время от времени, и особенно после использования нового или незнакомого dApp. Несколько минут уборки закрывают самый частый путь, которым воспользовался бы будущий эксплойт.

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

Итог

Подключение кошелька к dApp — это повседневный вход в Web3, и само подключение безопасно, потому что оно лишь сообщает ваш публичный адрес. Риск целиком живёт в том, что вы подписываете после, особенно в одобрениях токенов, которые сохраняются в ончейне и могут быть использованы, если вы даёте неограниченную власть контракту, который оказывается вредоносным. Защитите себя, добираясь до dApp через доверенные источники, одобряя сначала только подключение в режиме чтения, читая каждую подпись, ограничивая одобрения точными суммами и отзывая лимиты, которые вам больше не нужны. Расширение WATS для Chrome обеспечивает подключение в один клик и подпись прямо в браузере на десктопе, а мобильное приложение WATS и Hot Wallet подключаются через WalletConnect на ходу — всё полностью некастодиальное, так что ваши ключи и финальное решение о подписи остаются за вами.

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

Безопасно ли подключать кошелёк к dApp?

Да, само подключение безопасно, потому что оно лишь сообщает публичный адрес вашего кошелька и позволяет сайту считать ваши балансы. Оно не может переместить средства или что-либо подписать самостоятельно. Риск начинается только когда вы подписываете сообщение или одобряете транзакцию, поэтому главное — читать каждый запрос, который показывает кошелёк, и никогда не одобрять то, чего вы не понимаете. Подключение безвредно; неосторожная подпись — нет.

Что такое одобрение токена и почему неограниченные одобрения рискованны?

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

Чем отличается подключение через браузерное расширение от WalletConnect?

Браузерное расширение вроде расширения WATS для Chrome живёт в вашем десктопном браузере, внедряется прямо в страницу и показывает каждую подпись в собственном окне для подключения в один клик и подписи прямо в браузере. WalletConnect связывает dApp с мобильным кошельком через сканирование QR-кода, создавая зашифрованную сессию, и является стандартом для телефонов или для использования десктопного dApp с телефонным кошельком. Оба безопасны, когда вы подключаетесь только к сайтам, до которых добрались сами.

Как дрейнеры кошельков крадут средства и как их избежать?

Дрейнеры кошельков обычно опираются на поддельную копию настоящего dApp, часто продвигаемую через рекламу или срочные сообщения, которая просит вас подписать то, что выглядит как рутинное действие, но на деле является разрешением на токен, отдающим активы атакующему. Вы избегаете их, добираясь до dApp через доверенные источники, а не рекламу или личные сообщения, отказываясь подключаться при первом же визите, который сразу требует одобрения, и читая каждую подпись перед подтверждением. Некастодиальный кошелёк не может отменить транзакцию, которую вы подписали, так что защита происходит до того, как вы нажмёте «подтвердить».

Как отозвать одобрение токена, которое мне больше не нужно?

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