В этой статье разберём revoke cash — ключевые аспекты и практические рекомендации. Представь: ты год назад дал разрешение какому-то DeFi-протоколу тратить твои USDC. Проект закрылся, команда исчезла, но разрешение осталось — и сегодня хакер покупает доступ к этому контракту на чёрном рынке. Звучит как параноя? В моей практике я видел три таких случая за последние полгода. И каждый раз проблему решил бы один простой шаг — отзыв разрешений через Revoke.cash.

Revoke.cash — это бесплатный инструмент для управления доступами смарт-контрактов к твоему криптокошельку. Он показывает все активные разрешения (approvals) на Ethereum, Arbitrum, Polygon и 20+ других сетях, и позволяет одним кликом их отменить. Это как проверить список приложений с доступом к твоему Google-аккаунту — только для криптовалюты.

В этом гайде я покажу, как работает Revoke.cash, почему отзыв разрешений критичен для безопасности в DeFi, и дам пошаговую инструкцию с реальными примерами из моей практики.

Что такое Revoke.cash и зачем он нужен

Revoke.cash (от англ. "revoke" — отозвать) — это веб-приложение для аудита и отмены разрешений, которые ты давал смарт-контрактам. Когда ты взаимодействуешь с любым DeFi-протоколом — Uniswap, Aave, Curve — ты сначала подписываешь транзакцию типа approve. Она даёт контракту право списывать с твоего кошелька конкретный токен на определённую сумму (часто — unlimited, то есть бесконечно).

Почему это проблема

Разрешение не исчезает после того, как ты закончил пользоваться протоколом. Оно остаётся активным до тех пор, пока ты его не отзовёшь. И вот три сценария, когда это становится опасно:

  1. Взлом протокола. В июне 2024 года произошёл эксплойт контракта Multichain — хакеры получили доступ к приватным ключам мультисига. Все, кто давал Multichain разрешение на USDC, потеряли средства. Те, кто успел отозвать — нет.

  2. Rug pull. Команда проекта исчезает, но перед этим активирует backdoor в контракте и сливает все токены пользователей, у которых есть активные approvals.

  3. Устаревшие разрешения. Ты год назад дал разрешение какому-то фарминг-пулу на Polygon, забыл — а контракт компрометирован. Злоумышленник покупает доступ к нему и списывает твои активы.

Revoke.cash решает все три проблемы: ты видишь полный список разрешений, можешь оценить риски и отменить подозрительные.

Как это работает технически

Когда ты даёшь разрешение смарт-контракту, вызывается функция approve(spender, amount) стандарта ERC-20. Revoke.cash читает события Approval на блокчейне, связанные с твоим адресом, и показывает:

  • Какой токен (USDC, DAI, WETH)
  • На какую сумму (unlimited, конкретное число)
  • Какому контракту (адрес spender)
  • Когда дал разрешение (дата последнего Approval)

Чтобы отозвать, Revoke.cash формирует транзакцию approve(spender, 0) — обнуляет лимит. Это стандартная операция, которую поддерживает любой ERC-20 токен.

Как пользоваться Revoke.cash: пошаговая инструкция

Шаг 1: Подключение кошелька

Заходи на revoke.cash — убедись, что адрес именно revoke.cash, а не клон типа revokecash.io (такие фишинговые сайты существуют).

Нажми "Connect Wallet". Revoke.cash поддерживает MetaMask, WalletConnect, Coinbase Wallet, Rabby — любой кошелёк, который работает с EVM-сетями.

После подключения выбери сеть. Допустим, ты хочешь проверить Arbitrum — Revoke автоматически подтянет все разрешения для этой сети. Если хочешь переключиться на Polygon или Ethereum, выбери сеть прямо на сайте (не обязательно менять её в MetaMask).

Шаг 2: Анализ разрешений

Перед тобой список всех активных approvals. Вот как его читать:

Колонка Что означает
Asset Название токена (USDC, DAI, WETH)
Approved Amount Сумма разрешения — число или "Unlimited"
Spender Адрес контракта, который может тратить токен
Last Updated Дата, когда ты дал это разрешение

Красные флаги, на которые я обращаю внимание:

  • Unlimited approvals на неизвестные контракты — если не помнишь этот адрес, отзывай сразу.
  • Старые разрешения (год+) — даже если это был когда-то крупный проект, лучше обнулить и переутвердить, если понадобится.
  • Контракты без верификации — если по клику на адрес в блок-эксплорере (Arbiscan, Polygonscan) нет исходного кода, это подозрительно.

Шаг 3: Отзыв разрешений

Допустим, ты видишь разрешение на USDC для неизвестного контракта 0xABC123... на Arbitrum. Нажимаешь "Revoke".

MetaMask (или твой кошелёк) предложит подписать транзакцию. Это вызов функции approve(0xABC123..., 0) — обнуляешь лимит. Комиссия на Arbitrum — около $0.10–0.20, на Polygon — меньше цента, на Ethereum — $2–5 в зависимости от загрузки сети.

📢 Больше практических разборов — в канале «Сергей Зиненко | DeFi-Гедонист». Подписывайтесь, чтобы не пропустить.

После подтверждения Revoke.cash автоматически обновляет список — отозванное разрешение исчезает. Не нужно перезагружать страницу.

Пример из реальной практики

Когда я чистил кошелёк клиента на Polygon, мы нашли 12 активных разрешений. Из них:

  • 4 на Uniswap V3 Router (крупная биржа, доверенный контракт — оставили)
  • 3 на Stargate Finance (мост с хорошей репутацией — оставили)
  • 2 на ParaSwap (агрегатор DEX, как 1inch — оставили)
  • 3 на неизвестные контракты без верификации — отозвали все

Отзыв трёх подозрительных разрешений обошёлся в $0.02 (суммарная комиссия на Polygon). Одно из них оказалось контрактом заброшенного yield-фарминга, который через месяц попал в список эксплойтов на Revoke.cash. Мы избежали потенциальной потери 4000 USDC.

Фильтры и сортировка: как найти самые опасные разрешения

Revoke.cash даёт гибкие инструменты для анализа. Вот что я использую чаще всего.

Сортировка по сумме (Approved Amount)

Нажми на колонку "Approved Amount" — разрешения выстроятся от самых больших к маленьким. Сначала увидишь все unlimited approvals (они помечены как ∞), затем конкретные суммы.

Зачем это нужно: если у тебя есть unlimited разрешение на 10,000 USDC для неизвестного контракта — это критичнее, чем approval на 0.5 USDC для того же контракта.

Сортировка по дате (Last Updated)

Кликни на "Last Updated" и выбери "от новых к старым". Увидишь последние разрешения, которые ты давал.

Мой воркфлоу: после того, как поюзал новый DeFi-протокол (например, залил ликвидность в новый пул на Curve), я захожу на Revoke.cash через неделю и отзываю это разрешение. Протестировал, вывел средства — зачем оставлять доступ?

Фильтр по балансу

Включи галочку "Non-zero balance" — останутся только разрешения на токены, которые реально есть на кошельке. Это убирает шум: если у тебя 0 DAI, разрешение на DAI не критично (хотя лучше всё равно отозвать на будущее).

Фильтр по типу активов

  • Tokens — обычные ERC-20 токены (USDC, WETH, LINK)
  • NFTs — ERC-721 и ERC-1155, где ты даёшь setApprovalForAll (разрешение на все NFT из коллекции)

Я обычно начинаю с токенов, потому что там финансовые риски выше. NFT-разрешения чищу раз в квартал.

Расширение Revoke.cash для браузера

У Revoke.cash есть расширение для Chrome/Brave/Edge — устанавливай только через официальный Chrome Web Store. Проверь, что URL именно chrome.google.com/webstore — фишинговые клоны существуют.

Что даёт расширение

Когда ты взаимодействуешь с DeFi-протоколом (например, подписываешь approve на Aave), расширение показывает всплывающее окно:

  • Предупреждение об Unlimited Approval — если протокол просит unlimited, расширение предложит указать конкретную сумму.
  • Информация о контракте — есть ли он в базе Revoke.cash, когда создан, сколько пользователей взаимодействовало.
  • Красный флаг для скама — если контракт в чёрном списке (известный rug pull, фишинг), расширение заблокирует подпись.

Настройки расширения

После установки кликни на иконку Revoke.cash в панели браузера. Я рекомендую включить:

  • Warn about NFT listings — предупреждает, если пытаешься дать setApprovalForAll для NFT (частый вектор атаки).
  • Warn about suspicious websites — блокирует взаимодействие с сайтами, похожими на фишинг (например, unisvvap.org вместо uniswap.org).

Функцию Warn about Approvals я отключаю, потому что использую для этого другое расширение — Stelo (о нём ниже). Но если ты новичок, оставь включённой — будет дополнительный слой защиты.

Проверка эксплойтов: функция Exploits Checker

На главной странице Revoke.cash есть вкладка "Exploits". Здесь список недавних взломов и скамов — контракты, которые компрометированы или были использованы для кражи средств.

Как проверить свой кошелёк

Допустим, 30 июня 2024 был взлом контракта Multichain Router на Ethereum. Зайди в "Exploits" → найди Multichain → нажми "Check Address".

Вставь адрес своего кошелька и нажми "Check". Revoke.cash покажет:

  • You're safe — у тебя нет активных разрешений для этого контракта.
  • You're at risk — есть активное approval, отзови немедленно.

В моей практике эта функция дважды спасла клиентов. Один давал unlimited USDC для Beefy Finance Router на Polygon — через два дня после того, как мы отозвали, этот контракт попал в список эксплойтов. Второй случай — малоизвестный bridge на Avalanche, который оказался фронтом для фишинга.

Работа с несколькими сетями: Arbitrum, Polygon, Ethereum

Revoke.cash поддерживает 20+ сетей: Ethereum, Arbitrum, Optimism, Polygon, Avalanche, BSC, Fantom, Cronos, Polygon zkEVM и другие. Переключение — в один клик.

Стоимость отзыва в разных сетях (март 2026)

Сеть Комиссия за revoke Скорость подтверждения
Ethereum $2–8 15–60 секунд
Arbitrum $0.10–0.30 1–5 секунд
Optimism $0.15–0.40 1–5 секунд
Polygon $0.01–0.05 2–10 секунд
Avalanche $0.10–0.50 1–3 секунды
BSC $0.05–0.20 3–10 секунд

Мой подход: я чищу разрешения на L2 (Arbitrum, Polygon) раз в месяц — это почти бесплатно. На Ethereum — раз в квартал, потому что там комиссия $5+ за одно revoke может быть дороговата.

Пример: чистка кошелька на Polygon

Подключаю кошелёк → выбираю Polygon → вижу 8 разрешений:

  • 3 на Uniswap V3 (доверенная биржа, баланс токенов ненулевой) — оставляю
  • 1 на Stargate USDC (мост, активно использую) — оставляю
  • 2 на ParaSwap (агрегатор, последний раз использовал 6 месяцев назад) — отзываю
  • 2 на неизвестные контракты без исходного кода — отзываю немедленно

Отзыв четырёх разрешений: 4 транзакции × $0.01 = $0.04 суммарно. Время — 2 минуты. Это копейки за безопасность активов.

Как часто отзывать разрешения: моя стратегия

Нет единого правила, но вот что работает у меня и у моих клиентов.

Стратегия 1: После каждой DeFi-операции (параноидальный режим)

Если ты используешь фарминг или лендинг краткосрочно (зашёл в пул на неделю, вывел), отзывай разрешение сразу после вывода средств. Да, при следующем входе придётся заново сделать approve (ещё одна комиссия $0.10–0.50), но зато ноль риска.

Кому подходит: если на кошельке $10,000+, или если ты взаимодействуешь с новыми/экспериментальными протоколами.

Стратегия 2: Раз в месяц (мой вариант)

Каждое 1-е число месяца — 15 минут на Revoke.cash. Прохожусь по всем сетям (Arbitrum, Polygon, Ethereum), отзываю всё, что не использую активно.

Что не отзываю:

  • Uniswap, Curve, Aave — топовые протоколы с аудитом
  • Stargate, LayerZero — крупные мосты
  • ParaSwap, 1inch — проверенные агрегаторы

Что отзываю всегда:

  • Любые контракты возрастом 6+ месяцев, которыми не пользуюсь
  • Контракты без верификации на блок-эксплорере
  • Unlimited approvals на токены с балансом $1000+

Стратегия 3: Раз в квартал (минималистичная)

Если у тебя консервативный портфель (только Aave, Uniswap, может быть Curve) и ты не экспериментируешь с новыми протоколами, достаточно проверки раз в 3 месяца.

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

Альтернативы Revoke.cash: сравнение инструментов

Инструмент Плюсы Минусы Когда использовать
Revoke.cash Бесплатно, 20+ сетей, расширение для браузера Нет мобильной версии Основной инструмент для десктопа
Etherscan Token Approvals Встроен в блок-эксплорер Только Ethereum, неудобный UI Если уже на Etherscan
Rabby Wallet Встроенный approval checker Нужно ставить отдельный кошелёк Если используешь Rabby как основной
Unrekt.net Поддержка Solana + EVM Платная подписка $10/мес Если работаешь с Solana

Мой стек: Revoke.cash для регулярной чистки + расширение Stelo для предупреждений в реальном времени (о нём ниже).

Частые ошибки при работе с Revoke.cash

Ошибка 1: Отозвал approval, но токены всё равно списались

Почему: Если атака уже началась (хакер вызвал transferFrom), отзыв разрешения не отменит транзакцию. Revoke.cash — это профилактика, не лечение.

Что делать: Если увидел подозрительную транзакцию в истории кошелька, немедленно переводи все активы на новый адрес. Revoke бесполезен, когда кража уже произошла.

Ошибка 2: Отозвал все approvals, теперь DeFi не работает

Почему: Каждый раз, когда используешь Uniswap, Aave или любой протокол, нужен свежий approve. Если ты отозвал — придётся заново подписать.

Что делать: Это нормально. Комиссия за approve на L2 — центы. Лучше потратить $0.10 на повторный approve, чем рисковать $10,000.

Ошибка 3: Игнорировал старые разрешения ("я этим уже не пользуюсь")

Почему: Даже если ты год не заходил на какой-то протокол, разрешение активно. Если контракт взломают, твои токены под угрозой.

Что делать: Отзывай всё, что старше 6 месяцев и не используется. Без исключений.

🎓 Научиться зарабатывать в DeFi — курс «DeFi-Гедонист» с практикой и поддержкой. Подробности в канале «Сергей Зиненко | DeFi-Гедонист».

Дополнительный слой защиты: расширение Stelo

Revoke.cash хорош для чистки, но не предупреждает об опасных транзакциях в реальном времени. Для этого я использую Stelo (stelo.finance) — расширение, которое анализирует каждую транзакцию перед подписью.

Что делает Stelo

Когда ты подписываешь транзакцию в MetaMask, Stelo показывает:

  • Симуляцию результата — что произойдёт с балансом после подписи (отправишь 100 USDC, получишь 95 DAI).
  • Риск-скор контракта — зелёный (безопасный), жёлтый (осторожно), красный (скам).
  • Детали approve — если это unlimited approval, Stelo предложит изменить на конкретную сумму.

В моей практике Stelo дважды спас от фишинга: один раз предупредил, что подписываю setApprovalForAll для NFT-контракта, который дрейнит коллекции. Второй раз — заблокировал транзакцию на фейковый сайт "Uniswap" (опечатка в домене).

Комбинация Revoke.cash + Stelo — это 95% защиты от approval-атак. Revoke чистит старое, Stelo защищает от нового.

Чек-лист безопасности для DeFi-пользователя

Вот что я делаю (и рекомендую клиентам):

  • Проверяю разрешения на Revoke.cash раз в месяц (1-го числа)
  • Отзываю все unlimited approvals на контракты возрастом 6+ месяцев
  • Отзываю разрешения на неизвестные контракты сразу
  • Использую расширение Revoke.cash для предупреждений об NFT-листингах
  • Добавил расширение Stelo для симуляции транзакций
  • Проверяю вкладку Exploits на Revoke.cash перед использованием нового протокола
  • Никогда не подключаю основной кошелёк (с крупными суммами) к новым/непроверенным сайтам
  • Для экспериментов использую отдельный кошелёк с балансом $50–100

Если следуешь этому чек-листу, вероятность потерять средства из-за approval-атаки стремится к нулю.

Что дальше

Revoke.cash — это базовая гигиена в DeFi. Как чистить зубы или делать бэкапы — простая процедура, которая предотвращает катастрофы. Потрать 15 минут в месяц, чтобы отзывать разрешения, и спи спокойно.

Хочешь узнать больше про безопасность в DeFi, автоматизацию через AI и стратегии yield-фарминга? Подписывайся на мой Telegram-канал канал «Сергей Зиненко | DeFi-Гедонист» — там делюсь кейсами, инструментами и разборами новых протоколов.

FAQ

Что будет, если не отзывать разрешения смарт-контрактам?

Разрешения остаются активными бесконечно. Даже если ты год не пользуешься протоколом, контракт сохраняет право списывать твои токены. Если этот контракт взломают или команда сделает rug pull, твои средства под угрозой. В 2024 году было 14 крупных эксплойтов, где пострадали пользователи с активными approvals.

Сколько стоит отозвать разрешение через Revoke.cash?

Это обычная транзакция на блокчейне, стоимость зависит от сети. На Ethereum — $2–8, на Arbitrum — $0.10–0.30, на Polygon — $0.01–0.05. Revoke.cash сам по себе бесплатен, ты платишь только комиссию сети (gas fee). Отзыв 10 разрешений на Polygon обойдётся в $0.10–0.50.

Можно ли отозвать разрешение после взлома контракта?

Если атака уже произошла (хакер вызвал transferFrom и списал токены), отзыв не поможет — транзакция необратима. Revoke.cash работает как профилактика: ты отзываешь разрешения до эксплойта. Если увидел подозрительную активность, единственный вариант — немедленно переводить все активы на новый кошелёк.

Нужно ли отзывать разрешения для Uniswap, Aave и других крупных протоколов?

Зависит от твоей стратегии. Если активно пользуешься протоколом (делаешь свопы на Uniswap каждую неделю), можно оставить approval — риск минимален. Если не использовал 6+ месяцев — лучше отозвать. Крупные протоколы безопаснее, но не на 100%: даже у Curve и Aave были баги, хотя без последствий для пользователей.

Что такое unlimited approval и почему это опасно?

Unlimited approval (часто отображается как "∞" или максимальное значение uint256) даёт контракту право списывать бесконечное количество токенов с твоего кошелька. Протоколы просят это для удобства: один approve навсегда, не нужно подписывать каждый раз. Но если контракт скомпрометирован, хакер может списать все твои токены этого типа. Альтернатива — давать approval на конкретную сумму (например, 1000 USDC), но тогда придётся обновлять при каждой крупной операции.