ЗНАНИЯ БЕЗ ЛИШНЕГО ШУМА

Approve в Ethereum: что разрешает ERC-20 и как проверить лимит

Чем approve отличается от перевода, где смотреть spender и allowance и что происходит при обнулении разрешения.

Шлюз доступа к токенам рядом с символом Ethereum

В ERC-20 операция approve задаёт, сколько токенов указанный адрес сможет потратить через transferFrom от имени владельца. Сами токены при обычном approve не переводятся. Разрешение остаётся в состоянии контракта и может действовать после закрытия сайта.

Три поля, которые нужно сверить

Сначала проверьте сеть и контракт токена. Затем найдите spender — адрес, которому предоставляется право. Это может быть контракт приложения, и он не обязан совпадать с адресом самого токена. Наконец, сравните allowance с количеством, нужным для операции.

Пример: вы дали разрешение на 100 токенов, а приложение списало 30. В типичном конечном allowance останется 70. Для максимального значения некоторые реализации используют особую логику и не уменьшают его при каждом списании. Проверять нужно фактическое значение в контракте.

Две группы токенов с разными пределами доступа
Конечный лимит и максимальное разрешение могут вести себя по-разному.

Как снять разрешение

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

Закрытый шлюз и токены снаружи
Отключение сайта не обнуляет разрешение в контракте.

Почему подпись тоже стоит читать

Некоторые токены и приложения поддерживают разрешения через подписанное сообщение. Отсутствие платы в момент подписи не делает запрос безвредным. Сверяйте сеть, токен, spender, сумму и срок, если он указан. Сид-фраза для просмотра разрешения не нужна.

Выбор сети для USDT помогает проверить цепочку и версию токена. Чем оплачивается запись в блокчейне, объясняет материал про газ при переводе USDT.

Поиск по сайту