Как безопасно отозвать одобрение криптотокена

Как безопасно отозвать одобрение криптотокена

Marcus Reid
8 сентября 2026 г.· 9 мин чтения

Чтобы безопасно отозвать одобрение криптотокена, определите точный блокчейн, аккаунт кошелька, контракт токена и контракт получателя полномочий (spender); прочитайте текущее разрешение (allowance) через доверенный интерфейс или обозреватель; отправьте одобрение на нулевую сумму или поддерживаемую сетью операцию отзыва; затем дождитесь подтверждения и снова прочитайте allowance. Отключение децентрализованного приложения (dapp) обычно не отменяет разрешение, записанное в блокчейне.

Ключевые выводы

  • Одобрение даёт полномочие адресу spender и отличается от подключения сайта к кошельку.
  • До подписи проверьте цепочку, владельца, контракт токена, spender, allowance и данные транзакции.
  • Отзыв обычно является транзакцией в блокчейне и требует оплаты газа.
  • Одного подтверждения мало: прочитайте итоговое allowance и убедитесь, что транзакция отзыва обнулила его.
  • Отзыв не возвращает уже переведённые активы и не защищает кошелёк с раскрытым ключом.

Зачем отозвать одобрение криптотокена и что оно разрешает?

В стандарте ERC-20 allowance — сумма, которую владелец разрешает списать другому адресу, а approve — метод, задающий это разрешение.[1] Получателя полномочий называют spender. Такое разрешение может запросить маршрутизатор децентрализованной биржи, мост, кредитный протокол, контракт подписки или вредоносный контракт, чтобы позднее вызвать transferFrom и переместить токены в пределах предоставленного лимита.

Разрешение относится к конкретному сочетанию четырёх параметров: блокчейн, контракт токена, адрес владельца и адрес spender. Совпадение названий или символов в другой сети не означает, что речь идёт о том же разрешении. Нативные монеты обычно не используют allowance стандарта ERC-20, хотя у обёрнутых версий и систем абстракции аккаунта могут быть другие механизмы полномочий.

ПараметрЧто проверитьПочему это важно
СетьТочную цепочку и её chain IDРазрешения не переносятся автоматически между сетями
ВладелецАккаунт кошелька, выдавший разрешениеПодключённый кошелёк может предоставлять несколько аккаунтов
ТокенАдрес контракта, а не только символПоддельные токены копируют чужие названия и символы
SpenderАдрес контракта и его документированную рольБренд сайта не устанавливает личность получателя полномочий
AllowanceИсходное число и сумму в единицах токенаЗа словом «безлимитный» может скрываться очень большое целое число
ТранзакцияМетод, целевой контракт, комиссию и итоговое действиеПоддельный отзыв способен вместо отмены выдать новое разрешение

Отключение dapp не отзывает allowance

Подключение кошелька обычно позволяет сайту видеть адрес и запрашивать подписи. Когда вы отключаете сайт, интерфейс кошелька удаляет или забывает разрешение на этот сеанс. Это не переписывает allowance, сохранённое в контракте токена. MetaMask прямо разделяет отключение аккаунта от сайта и отзыв разрешения смарт-контракта: это две разные операции с разными последствиями.[3]

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

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

Шаг 1. Начните с доверенного списка разрешений

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

Выберите точную сеть и адрес владельца разрешения. Сравните адрес с доверенным дисплеем кошелька или проверенными данными аккаунта. Если инструмент показывает несколько типов полномочий, отделите разрешения взаимозаменяемых токенов от операторских разрешений NFT и специфических разрешений протоколов. Эта инструкция посвящена именно allowance токенов по модели ERC-20, а не любому запросу подписи.

До подписания чего-либо составьте список:

  1. Адрес контракта токена и подтверждение того, что это нужный токен.
  2. Адрес spender и функция протокола, для которой запрашивались полномочия.
  3. Текущее allowance, а также дата или транзакция, при которой его выдали.
  4. Текущий баланс токена и действующие позиции, зависящие от этого spender.
  5. Сведения о том, сообщалось ли о компрометации spender или самого протокола.

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

Шаг 2. Независимо проверьте allowance токена

Для токена ERC-20 нужный запрос — allowance(owner, spender), где owner обозначает владельца, а spender — получателя полномочий. Результат является публичным: для его чтения подпись кошелька не требуется. Сравнить показания менеджера разрешений можно с данными контракта токена в надёжном обозревателе или через второй доверенный интерфейс RPC.

При переводе исходного целого числа в привычные единицы токена учитывайте параметр decimals. Интерфейс может обозначать максимальное целое число как «неограниченное разрешение». Одновременно проверьте подлинность самого контракта: мошенническая раздача способна использовать знакомый символ токена, но ссылаться на совершенно другой код.

Если allowance уже равно нулю, отзывать разрешение ERC-20 для этого сочетания параметров не нужно. Выясните, не относится ли предупреждение к другой сети, другому spender, разрешению NFT approval-for-all, ещё не использованной подписи permit или компрометации ключей.

Шаг 3. Сформируйте и проверьте транзакцию отзыва

Руководство ethereum.org описывает отзыв как транзакцию в блокчейне, отменяющую доступ к токенам.[2] Обычная операция ERC-20 вызывает approve у контракта токена, передавая адрес spender и сумму ноль. Если позднее нужен меньший ненулевой лимит, следуйте документации токена и инструмента: перед новым ненулевым значением для того же spender клиент должен сначала обнулить прежнее allowance. Это предупреждение содержится в стандарте ERC-20.[1] Дождитесь подтверждения обнуления, прежде чем одобрять новый лимит; реализации токенов различаются, поэтому используйте надёжный инструмент и проверяйте симуляцию или расшифрованный метод.

Перед подписью подтвердите следующее:

  • Кошелёк работает именно в той цепочке, где находится проверяемое разрешение.
  • Получатель вызова — подлинный контракт нужного токена, а не посторонний «защитный» контракт.
  • Расшифрованный метод устанавливает ноль для правильного spender; новый лимит оформляется отдельной проверенной транзакцией.
  • Операция не отправляет неожиданную сумму нативной монеты вместе с вызовом.
  • В пакет не добавлены неожиданные permit, обмен, перевод, approval-for-all или другие действия.
  • Плата за газ и nonce соответствуют ожидаемым условиям выбранной сети.

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

Шаг 4. Отправьте транзакцию и проверьте итоговое состояние

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

Снова прочитайте allowance(owner, spender) у контракта токена. Отзыв завершён только тогда, когда итоговое значение равно нулю. Если после этого вы намеренно устанавливаете меньший ненулевой лимит, повторите чтение после той отдельной транзакции. Обновившаяся отметка на сайте — менее надёжное подтверждение, чем чтение фактического состояния контракта.

РезультатЧто он означаетСледующее действие
Транзакция подтверждена, allowance равно нулюОтзыв завершёнСохранить результат и при желании удалить ненужное подключение
Подтверждение есть, allowance не изменилосьОшибка параметров, необычная реализация или действие не дало нужного результатаОстановиться и изучить транзакцию и контракт
Операция ожидает или выпала из очередиНадёжного итогового изменения нетПроверить nonce, комиссии и статус замены
Разрешение появилось после последующего действияБыло подписано ещё одно одобрениеПроверить новую транзакцию и процесс протокола
Активы уже отсутствуютОтзыв не является восстановлениемСохранить доказательства и рассматривать ситуацию как инцидент

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

Когда одного отзыва недостаточно?

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

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

Неизвестная «пыль» и мошеннические токены требуют другого подхода. Не открывайте URL из названия токена и не одобряйте контракт лишь ради скрытия или продажи такого актива; подробности есть в руководстве о пылевых атаках. Устанавливайте кошелёк только из проверенного источника: статья о поддельных приложениях разбирает способы их распространения, а руководство по онлайн-безопасности содержит общий список рисков.

Итоги

Безопасный отзыв — проверка состояния. Установите правильные сеть, владельца, токен, получателя полномочий и размер разрешения; сформируйте нулевую транзакцию в доверенном интерфейсе; проверьте вызов; после подтверждения прочитайте итоговое значение. Отключение сайта — отдельная операция, а при компрометации секретов или уже украденных активах одного отзыва недостаточно.

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

Требует ли отзыв оплаты газа?

Обычно да: изменение ERC-20 allowance является транзакцией и оплачивается нативным активом сети.

Достаточно ли отключить кошелёк от сайта?

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

Нужно ли отзывать каждое безлимитное одобрение?

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

Может ли транзакция отзыва украсть токены?

Настоящий approve с нулём не переводит токены, но поддельный сайт может предложить другой вызов. Проверяйте расшифрованные целевой контракт, метод, spender и сумму.

Почему разрешение видно после подтверждения?

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

Возвращает ли отзыв украденные активы?

Нет. Он ограничивает будущий transferFrom, но не отменяет прежние переводы.

Что делать при раскрытии закрытого ключа?

Создайте новый кошелёк на доверенном устройстве и планируйте миграцию: атакующий может выдать новое разрешение.

Можно ли отозвать без сайта?

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

Отказ от ответственности: Материал содержит общую информацию о безопасности, а не юридическую, финансовую, инвестиционную, контрактную или восстановительную консультацию.

Источники

  1. Ethereum Improvement Proposals, “ERC-20: Token Standard” — https://eips.ethereum.org/EIPS/eip-20
  2. ethereum.org, “How to revoke smart contract access to your crypto funds” — https://ethereum.org/guides/how-to-revoke-token-access
  3. MetaMask Help Center, “How to revoke smart contract allowances/token approvals” — https://support.metamask.io/more-web3/learn/how-to-revoke-smart-contract-allowances-token-approvals

Sources checked 8 сентября 2026 г.

Начните бесплатный 3-дневный пробный период

Зарегистрируйтесь и попробуйте все премиум-функции бесплатно.

*Только для новых пользователей. Один пробный период на пользователя.

Как безопасно отозвать одобрение криптотокена | AethoVPN