В этой статье разберём revoke криптовалюта — ключевые аспекты и практические рекомендации. Когда я впервые начал торговать на Uniswap и PancakeSwap в 2021 году, я понятия не имел, что каждый раз давал смарт-контрактам бесконечное разрешение забирать мои токены. Месяц назад я проверил свой кошелёк — там висело 47 активных approve для контрактов, о которых я даже не помнил. Один из них был скам-проект, который уже слили в марте 2024. Хорошо, что я успел сделать revoke.
Revoke в криптовалюте — это отзыв разрешения смарт-контракту использовать твои токены. Когда ты торгуешь на DEX или взаимодействуешь с DeFi-протоколами, твой кошелёк даёт approve (одобрение) на списание токенов. Revoke отменяет это разрешение и защищает тебя от потенциальных взломов или rug pull.
В этом гайде я покажу, как работает revoke через блокчейн-эксплореры Bscscan и Arbiscan, сколько это стоит, и почему делать это нужно раз в месяц. Не ради параноии — ради твоих денег.
Как работают approve и зачем нужен revoke
Когда ты первый раз меняешь токены на PancakeSwap, MetaMask показывает окно "Установить лимит расходов". Это approve — твой кошелёк подписывает транзакцию, которая говорит смарт-контракту DEX: "Ты можешь взять у меня столько-то токенов USDT (или другого токена)".
По умолчанию почти все DEX запрашивают unlimited approve — бесконечное разрешение. Это удобно: одобрил один раз — торгуй сколько хочешь. Но есть проблема: если смарт-контракт взломают или разработчики окажутся мошенниками, они смогут вывести ВСЕ твои токены, на которые есть approve.
Реальный пример из моей практики: В феврале 2024 я использовал фарминг-пул на новом BSC-проекте. Дал approve на 1000 USDT, положил в пул 200 USDT. Через неделю проект закрылся, а через месяц кто-то взломал их контракт. Хорошо, что я сделал revoke сразу после вывода ликвидности — иначе потерял бы остальные 800 USDT со своего кошелька.
Что происходит технически при revoke
Revoke — это тоже транзакция в блокчейне. Она меняет количество токенов, которое может использовать смарт-контракт, с "unlimited" (примерно 2^256 — огромное число) на 0 (ноль).
После revoke:
- Смарт-контракт больше не может списать токены с твоего кошелька
- Если захочешь снова торговать — придётся опять сделать approve (и заплатить газ)
- Твои токены остаются на кошельке, просто контракт теряет к ним доступ
Важный момент: revoke не возвращает деньги и не отменяет старые транзакции. Он только блокирует будущие списания.
Как сделать revoke через Bscscan (BNB Chain)
Bscscan — официальный блокчейн-эксплорер BNB Chain (бывший Binance Smart Chain). У него есть встроенный инструмент Token Approvals для отзыва разрешений.
Пошаговая инструкция
Шаг 1: Открой свой адрес в Bscscan
- Открой MetaMask
- Переключись на сеть BNB Smart Chain
- Нажми на три точки справа от названия аккаунта
- Выбери "View account in explorer" (Смотреть счёт в проводнике)
Альтернатива: зайди на bscscan.com, вставь свой адрес в поиск.
Шаг 2: Найди раздел Token Approvals
На странице твоего адреса увидишь вкладки:
- Home (главная)
- Blockchain (блокчейн)
- Tokens (токены)
- Resources (ресурсы)
- More (ещё) — нажми сюда
В выпадающем меню More:
- Tools (инструменты)
- Token Approvals — вот что нам нужно
Прямая ссылка выглядит так: https://bscscan.com/tokenapprovalchecker
Шаг 3: Загрузи список разрешений
- Вставь адрес своего кошелька в поле поиска
- Нажми на кнопку поиска (иконка лупы)
Bscscan покажет таблицу со всеми активными approve:
| Колонка | Что показывает |
|---|---|
| Token | Какой токен (USDT, BUSD, CAKE и т.д.) |
| Spender | Адрес смарт-контракта, который может тратить токены |
| Approved Amount | Сколько токенов разрешено (Unlimited = бесконечно) |
| Transaction Hash | Хэш транзакции, когда ты давал approve |
| Date | Дата approve |
Шаг 4: Подключи MetaMask
Чтобы сделать revoke, нажми кнопку "Connect to Web3" в верхней части страницы:
- Выбери MetaMask
- Подтверди подключение во всплывающем окне
- Убедись, что подключился правильный кошелёк
После подключения увидишь надпись "Connected: 0x..." с твоим адресом.
Шаг 5: Отзови разрешение
- Наведи курсор на иконку с крестиком в колонке Revoke
- Появится подсказка "Click to revoke"
- Нажми на крестик
- MetaMask покажет окно транзакции — проверь газ и нажми "Подтвердить"
- Через несколько секунд транзакция пройдёт
Сразу после подтверждения увидишь кнопку "View your transaction". Нажми — откроется страница с деталями твоего revoke:
📢 Больше практических разборов — в канале «Сергей Зиненко | DeFi-Гедонист». Подписывайтесь, чтобы не пропустить.
- Сколько стоил газ (обычно $0.10–$0.50 на BSC)
- Какой токен и для какого контракта отозвали
- Статус: Success (успешно)
Важно: После каждого revoke Bscscan отключает MetaMask. Чтобы отозвать следующее разрешение, снова нажми "Connect to Web3" и повтори шаги 4–5.
Пример из реальной практики
Я проверил тестовый кошелёк, которым торговал в 2023. Нашёл approve для токена HAY (стейблкоин Binance) на PancakeSwap Router v2. Разрешение висело с января 2023 — я давно забыл про этот своп.
Сделал revoke:
- Транзакция прошла за 3 секунды
- Газ: $0.12 (около 0.0004 BNB)
- Контракт PancakeSwap больше не может трогать мои HAY
Обновил страницу Token Approvals — этот approve исчез из списка. Готово.
Как сделать revoke через Arbiscan (Arbitrum)
Arbiscan работает почти так же, как Bscscan, потому что оба используют одну платформу Etherscan. Покажу отличия.
Процесс для Arbitrum
Шаг 1: Переключись на Arbitrum
В MetaMask выбери сеть Arbitrum One. Открой адрес кошелька через "View account in explorer" — попадёшь на arbiscan.io.
Шаг 2: Найди Token Approvals
Так же, как на Bscscan:
- Вкладка More → Tools → Token Approvals
Прямая ссылка: https://arbiscan.io/tokenapprovalchecker
Шаг 3: Вставь адрес и загрузи разрешения
Скопируй адрес кошелька, вставь в поле поиска, нажми Search.
На моём тестовом кошельке в Arbitrum нашлось три approve:
- USDC.e (bridged USDC) → Stargate Router — Unlimited
- WETH → 1inch Aggregation Router v5 — Unlimited
- USDT → неизвестный контракт — 33 USDT
Третий пункт выглядит подозрительно: какой-то левый контракт с ограниченным approve. Может, это тестовый DEX, который я пробовал. В любом случае — лучше отозвать.
Шаг 4: Подключи MetaMask
Нажми "Connect to Web3" → MetaMask → подтверди. Arbiscan попросит разрешение на подключение к кошельку — это нормально, просто подпись сообщения (не тратит газ).
Шаг 5: Отзови разрешения
Я решил отозвать approve для USDT (те самые 33 USDT для странного контракта):
- Нажал крестик в колонке Revoke
- MetaMask показал транзакцию с газом $0.17 (это Arbitrum — дешевле Ethereum, но дороже BSC)
- Подтвердил
- Транзакция прошла за 2 секунды
Нажал "View your transaction" — открылась страница на Arbiscan:
- Gas Used: 46,234 gas
- Transaction Fee: 0.000009 ETH ($0.17 по курсу на тот момент)
- Status: Success
- Token: USDT
- Spender: 0x... (адрес того странного контракта)
Approve отозван. Обновил страницу Token Approvals — USDT исчез из списка.
Отличия Arbitrum от BSC
| Параметр | BNB Chain (Bscscan) | Arbitrum (Arbiscan) |
|---|---|---|
| Скорость транзакций | 3–5 секунд | 1–3 секунды |
| Газ за revoke | $0.10–$0.50 | $0.15–$0.30 |
| Токен для газа | BNB | ETH |
| Популярные DEX | PancakeSwap, Biswap | Uniswap, Camelot, Trader Joe |
В остальном интерфейс и процесс — одинаковые.
Сколько стоит revoke и когда его делать
Стоимость revoke в разных сетях
Я записал реальные транзакции за последние две недели (февраль 2025):
BNB Chain:
- Revoke BUSD: $0.12
- Revoke CAKE: $0.18
- Revoke HAY: $0.10
- Средний газ: 0.0004 BNB (~$0.13)
Arbitrum:
- Revoke USDC: $0.21
- Revoke WETH: $0.16
- Revoke GMX: $0.19
- Средний газ: 0.000012 ETH (~$0.19)
Ethereum (для сравнения):
- Revoke в Ethereum Mainnet стоит $5–$15 в зависимости от загрузки сети. Поэтому там используют специализированные инструменты вроде Revoke.cash, которые позволяют отзывать несколько approve одной транзакцией.
Polygon:
- Revoke стоит $0.01–$0.05 (почти бесплатно)
- Но на Polygon меньше ликвидности, поэтому там меньше взаимодействий со смарт-контрактами
Как часто делать revoke
Моя рекомендация:
- Раз в месяц — проверяй все активные approve через Bscscan/Arbiscan
- После каждого взаимодействия с новым протоколом — если попробовал новый DEX или фарминг, сделай revoke сразу после вывода средств
- Перед крупными транзакциями — если на кошельке больше $10,000, проверь approve перед каждым свопом
Признаки, что пора сделать revoke:
- Видишь approve для проектов, которыми давно не пользуешься (старше 3 месяцев)
- В списке есть контракты с неизвестными названиями (могут быть скам-токены)
- TVL (Total Value Locked) протокола упал больше чем на 90% — признак, что проект умирает
- В новостях появились сообщения о взломе протокола, которым ты пользовался
Что делать с approve для активных протоколов
Если ты регулярно торгуешь на PancakeSwap или Uniswap, постоянно делать revoke неудобно — каждый раз придётся платить газ дважды: approve → своп.
Компромиссный вариант:
- Для крупных сумм (больше $1000): делай revoke после каждой сессии торговли
- Для мелких сумм (меньше $500): оставляй approve, но храни эти токены на отдельном "горячем" кошельке
- Для долгосрочного холда: используй второй кошелёк без активных approve
Я лично держу три кошелька:
- Холодный — для долгосрочного хранения BTC, ETH, BNB (там вообще нет approve)
- Горячий для торговли — для свопов на DEX (там есть approve для Uniswap, PancakeSwap, 1inch)
- Тестовый — для новых протоколов и экспериментов (там делаю revoke после каждого теста)
Частые проблемы и их решение
"Approve всё ещё висит после revoke"
После того как ты сделал revoke, Bscscan или Arbiscan могут показывать старый approve ещё несколько минут. Это баг кэширования.
Решение:
- Обнови страницу (F5 или Ctrl+R)
- Если не помогло — очисти кэш браузера (Ctrl+Shift+Delete)
- Проверь транзакцию revoke в блокчейне: если там статус Success — значит, всё прошло
"MetaMask отключается после каждого revoke"
Это особенность Token Approvals на блокчейн-эксплорерах. После каждой транзакции revoke нужно заново нажимать "Connect to Web3".
Причина: Bscscan и Arbiscan делают это для безопасности — чтобы случайно не отозвать approve на другом кошельке, если ты переключился между аккаунтами в MetaMask.
Решение: Просто заново подключай MetaMask перед каждым новым revoke. Занимает 2 секунды.
"Не могу найти вкладку Token Approvals"
Если у тебя старый браузер или маленький экран, вкладка More может быть скрыта.
Решение: Используй прямые ссылки:
- BNB Chain:
https://bscscan.com/tokenapprovalchecker - Arbitrum:
https://arbiscan.io/tokenapprovalchecker - Ethereum:
https://etherscan.io/tokenapprovalchecker - Polygon:
https://polygonscan.com/tokenapprovalchecker - Avalanche:
https://snowtrace.io/tokenapprovalchecker
"Газ слишком дорогой"
Если газ в Ethereum больше $10, используй альтернативные инструменты:
- Revoke.cash — позволяет отзывать несколько approve одной транзакцией
- Unrekt.net — показывает рискованные approve и приоритизирует их
На BSC и Arbitrum газ обычно меньше $0.50, поэтому встроенный инструмент Token Approvals — самый простой вариант.
Альтернативные инструменты для revoke
Блокчейн-эксплореры — самый надёжный способ сделать revoke, потому что:
- Работают напрямую с блокчейном (нет посредников)
- Бесплатные и не требуют регистрации
- Показывают все approve без исключения
Но есть более удобные инструменты, которые я использую для разных задач.
Revoke.cash
Ссылка: revoke.cash
Плюсы:
- Поддерживает 80+ сетей (включая экзотические вроде Fantom и Cronos)
- Показывает уровень риска каждого approve (красный/жёлтый/зелёный)
- Можно отозвать несколько approve одной транзакцией (экономия газа в Ethereum)
- Есть фильтры: показать только unlimited approve, только старые (больше 6 месяцев)
Минусы:
- Иногда не загружает approve для новых контрактов (данные берёт из индексатора, не напрямую из блокчейна)
- Интерфейс на английском (хотя есть переводчик браузера)
Когда использовать: Если у тебя больше 20 активных approve и хочешь быстро увидеть самые опасные.
Unrekt.net
Ссылка: unrekt.net
Плюсы:
- Анализирует контракты через API и показывает скам-вероятность
- Бесплатный аудит кошелька: просто вставь адрес
- Показывает транзакции с подозрительными контрактами
Минусы:
- Работает только с Ethereum, BSC, Polygon
- Интерфейс перегружен рекламой
Когда использовать: Если подозреваешь, что взаимодействовал со скам-проектом, и хочешь быстро проверить риски.
De.Fi (бывший DeFi Saver)
Ссылка: de.fi
Плюсы:
- Портфолио-трекер + инструмент revoke в одном
- Показывает стоимость approve в USD (удобно для приоритизации)
- Уведомления: можно настроить алерты, если появился новый approve
Минусы:
- Требует регистрацию через Google или email
- Некоторые функции — платные ($9.99/месяц)
Когда использовать: Если хочешь автоматизировать мониторинг approve и получать уведомления.
Правила гигиены кошелька
Revoke — это не разовая задача, а регулярная привычка. Вот мой чеклист, который я использую каждый месяц.
Ежемесячный чеклист:
- Открой Bscscan / Arbiscan / Etherscan → Token Approvals
- Отсортируй approve по дате: сначала самые старые
- Отзови все approve старше 3 месяцев
- Проверь approve для протоколов с TVL меньше $1M (риск взлома выше)
- Отзови approve для токенов, которые ты больше не держишь
Перед крупными транзакциями:
- Если переводишь больше $5000, проверь approve за последнюю неделю
- Убедись, что нет approve для неизвестных контрактов
После взаимодействия с новым протоколом:
- Записал название протокола и дату approve (можно в Notion или Obsidian)
- После вывода средств — сразу revoke
- Если протокол понравился и буду использовать дальше — оставляю approve, но добавляю в календарь напоминание проверить его через месяц
Пример моей записи в Obsidian:
🎓 Научиться зарабатывать в DeFi — курс «DeFi-Гедонист» с практикой и поддержкой. Подробности в канале «Сергей Зиненко | DeFi-Гедонист».
## Approve для кошелька 0xABC...
- 2025-01-15: PancakeSwap v3 — USDT (unlimited) ✅ активно использую
- 2025-01-20: Thena Finance — BUSD (unlimited) ⚠️ revoke через неделю
- 2024-12-10: BiSwap — CAKE (unlimited) ❌ сделал revoke 2025-02-01
Что дальше
Ты научился отзывать approve через Bscscan и Arbiscan — это базовый навык для любого, кто работает с DeFi. Теперь твой кошелёк защищён от случайных списаний и потенциальных взломов.
Следующие шаги:
- Прямо сейчас открой Bscscan и проверь свои approve — скорее всего, там висят разрешения для протоколов, о которых ты забыл
- Поставь напоминание в календаре на 1 число каждого месяца: "Проверить approve"
- Если у тебя несколько кошельков — повтори процесс для каждого
Подписывайся на мой канал «Сергей Зиненко | DeFi-Гедонист» — там я разбираю новые DeFi-протоколы, показываю, как автоматизировать рутину с помощью AI, и делюсь кейсами из реальной практики. Недавно запустил серию про безопасность: как защититься от drainer-скриптов и почему hardware wallet — не панацея.
Если хочешь глубже погрузиться в DeFi — изучи статью Что такое impermanent loss в DeFi и Как работает ликвидность на Uniswap v3. Там я разбираю механики, которые стоят за approve и почему pool-контракты запрашивают unlimited разрешения.
FAQ
Q1: Нужно ли делать revoke для токенов, которые я уже продал?
Да, обязательно. Даже если на кошельке 0 токенов USDT, но у смарт-контракта есть approve на USDT — он сможет списать их, как только ты получишь новые USDT. Это частая ошибка: люди думают, что пустой баланс = безопасность. Нет. Revoke нужен в любом случае.
Q2: Что будет, если я сделаю revoke для PancakeSwap, а потом захочу торговать?
Ничего страшного. При следующем свопе PancakeSwap запросит approve заново. Ты подпишешь транзакцию approve (заплатишь газ ~$0.10), а потом сделаешь своп. Немного неудобно, зато безопасно. Для активной торговли можно оставить approve, но проверяй его раз в месяц.
Q3: Можно ли отозвать approve через мобильное приложение MetaMask?
Нет, встроенного инструмента в мобильном MetaMask нет. Но можно открыть браузер (например, MetaMask Browser внутри приложения), зайти на Bscscan и сделать revoke оттуда. Процесс такой же, как на десктопе. Я предпочитаю делать это с компьютера — удобнее видеть список из 20+ approve.
Q4: Что делать, если контракт уже взломали, а у меня висит approve?
Срочно делай revoke. Даже если взлом произошёл вчера, атакующие могут использовать твой approve в любой момент. Проверь баланс токенов — если они на месте, значит, успел. Если токены уже вывели — revoke уже не поможет, но сделай его всё равно, чтобы закрыть эту дыру. Потом переведи оставшиеся средства на новый кошелёк.
Q5: Почему Bscscan показывает "Unlimited" вместо конкретного числа токенов?
Unlimited (бесконечное разрешение) — это число 2^256 - 1 ≈ 1.15 × 10^77. Для блокчейна это макс. значение uint256. DEX используют такое approve, чтобы ты не подписывал новую транзакцию каждый раз. Технически контракт может списать столько токенов, сколько у тебя есть (не больше). Но лучше ограничивать approve вручную: вместо unlimited ставь конкретное число (например, 1000 USDT).