Revoke
To revoke is the act of resetting a token allowance to zero (or a lower amount) via an on-chain transaction, permanently removing a smart contract’s permission to transfer the specified tokens from your wallet.
✦ Key Insight
It is the primary defense against lingering approval risks and wallet drainers. Regularly revoking unused approvals significantly reduces the attack surface for traders who interact with many dApps.
✕ Common Misconceptions
Thinking that disconnecting a wallet in the browser also revokes on-chain permissions; delaying revokes until after an exploit is announced; attempting to revoke on the wrong network.
Detailed Explanation
How It Works: You submit a new approve(spender, 0) transaction (or use a dedicated revoke helper). Once confirmed, the allowance is zeroed. Some tools batch multiple revokes. Gas is required for each unique spender/token pair.
FAQs:
Does revoke cost gas?
Yes.
Can I revoke NFTs the same way?
Yes, for ERC-721/1155 approvals.
How often should I check?
After any new dApp interaction and periodically.
In Practice
Dig Deeper
Token Approval
A token approval is an on-chain permission that a wallet owner grants to a smart contract, allowing that contract to transfer a specified (or unlimited) amount of a particular token (usually ERC-20) from the owner’s address.
Allowance
An allowance is the specific quantity of tokens that a wallet has authorized a particular smart-contract address (spender) to transfer on its behalf, as recorded in the token contract’s state.
Wallet Drainer
A wallet drainer is a malicious smart-contract or phishing toolkit designed to trick users into signing transactions or approvals that immediately (or later) transfer all valuable assets out of their wallet to the attacker’s address.
