
Table of Contents
DApp की अपने tokens तक access को remove करने के लिए, आपको उसके द्वारा धारण किए गए approval को ढूँढना होगा और इसे एक अलग on-chain transaction में revoke करना होगा - DApp को disconnect करने से permission remove नहीं होती, और आपके tokens तब तक exposed रहते हैं जब तक allowance को 0 पर set नहीं किया जाता।
मुख्य बातें
- Approvals on-chain live करते हैं - app या WalletConnect session को बंद करने से कुछ नहीं बदलता; spending permission तब तक active रहती है जब तक आप इसे revoke नहीं करते।
- Unlimited approvals नुकसान बढ़ाते हैं - एक single unlimited permission contract को token के पूरे current और future balance को spend करने देती है।
- Revoke भविष्य के spends को रोकता है, past theft को नहीं - allowance reset करना नए transfers को block करता है लेकिन drainer पहले ही move की गई assets को recover नहीं कर सकता।
DApp Token Approvals क्या हैं?
DApp token approval एक permission है जो वॉलेट owner एक smart contract को एक विशिष्ट token को एक set amount तक spend करने के लिए grant करता है। उस approval के बिना, एक decentralized exchange, lending market, या कोई अन्य DApp आपके tokens को move नहीं कर सकता - approval ही है जो इसे आपकी ओर से swap, stake, या transfer करने देता है जब आप इसके साथ interact करते हैं।
एक smart contract एक blockchain-based program है जो automatically actions perform करता है जब predefined conditions पूरी होती हैं।
DApp Token Approvals कैसे काम करते हैं
Token approval एक fixed sequence का पालन करता है: आप अपने वॉलेट को DApp से connect करते हैं, DApp approval का अनुरोध करता है, यह on-chain record होता है, और फिर DApp बिना दोबारा पूछे approved action perform करता है। यही तरीका है जिससे Aave और Uniswap जैसे प्रसिद्ध DApps काम करते हैं। क्योंकि permission blockchain पर live करती है और app session में नहीं, यह आपके DApp का use बंद करने के बहुत बाद तक force में रहती है।
Approvals कुछ distinct forms में आते हैं:
- Limited Approval: DApp केवल वह amount spend कर सकता है जो आपने set किया है, उदाहरण के लिए 500 USDC, और अधिक spend करने के लिए नया approval request करना होगा।
- Unlimited Approval: DApp चुने गए token की कोई भी amount spend कर सकता है, जिसमें वे tokens भी शामिल हैं जो बाद में आपके वॉलेट में आते हैं।
- Token Approval: Smart contract को एक विशिष्ट fungible token manage करने की permission मिलती है, जैसे USDC या USDT।
- NFT Approval: Permission एक single NFT या पूरे collection को cover कर सकती है, उदाहरण के लिए
setApprovalForAllके माध्यम से।
Token approval आपके secret phrase को reveal नहीं करता या DApp को पूरे वॉलेट तक unrestricted access नहीं देता। यह केवल approved token, NFT, amount, और smart contract पर apply होता है।
क्रिप्टो Wallet Users कब Token Approvals Grant करते हैं?
Token approvals रोज़ाना DeFi actions के दौरान दिखाई देते हैं: tokens swap करना, lending, staking, और NFTs बेचना। वे action पूरा होने या DApp disconnect होने के बाद भी active रह सकते हैं।
DEX पर Tokens Swap करना: मान लीजिए आप Uniswap पर USDC से ETH swap कर रहे हैं - सबसे पहले आप Permit2 contract (Uniswap Labs द्वारा एक permission manager) को USDC use करने के लिए approve करते हैं। Unlimited approval swap complete होने या cancel होने के बाद भी active रह सकता है।
Lending Protocol को Tokens Supply करना: Aave पर USDT lend करने के लिए, आप Aave Pool contract को वॉलेट से tokens move करने के लिए approve करते हैं। एक unused allowance deposit withdraw होने या DApp disconnect होने के बाद भी रह सकता है।
DApp के माध्यम से Tokens Stake करना: Aave Umbrella के माध्यम से staking करते समय, आप staking contract को चुने गए tokens को pool में move करने के लिए approve करते हैं। यदि approval deposit से अधिक है, तो leftover allowance आपके staking exit करने के बाद भी काम करता रह सकता है।
Sale के लिए NFT List करना: OpenSea पर NFT list करें और marketplace एक single NFT या setApprovalForAll के माध्यम से पूरे collection तक access का अनुरोध कर सकता है। Collection-wide approval तब तक force में रहता है जब तक user इसे एक अलग transaction में revoke नहीं करता।
Airdrop से Tokens Claim करना: एक fake airdrop site एक सामान्य Claim button के पीछे unlimited approval या Permit signature छुपा सकती है। आपके confirm करने के बाद, wallet drainer वॉलेट में किसी भी नए request के बिना approved tokens या NFTs को move कर सकता है।
Token Approvals के क्या जोखिम हैं?
ख़तरा approval खुद नहीं है बल्कि यह समय के साथ क्या बन सकता है। तीन जोखिम सबसे अधिक महत्वपूर्ण हैं:
- Unlimited Allowance: Contract approved token के पूरे current और future balance को spend कर सकता है, न कि केवल वह amount जो आप use करना चाहते थे।
- Lingering Approval: Permission महीनों या सालों तक काम करती रहती है जब आपने DApp को आखिरी बार touch किया था, इसलिए एक forgotten approval exploitable रहता है।
- Compromised Contract: यहाँ तक कि एक legitimate DApp को भी आपके approval grant करने के बाद hack किया जा सकता है, जिससे attacker को वह access मिल जाता है जिसे आपने पहले ही sign off किया है।
क्रिप्टो Wallet Drainers क्या हैं?
क्रिप्टो wallet drainer एक malicious tool है जो एक phishing site या fake DApp का use करके आपको अपने tokens या NFTs transfer करने की permission grant करने के लिए trick करता है। अपने secret phrase को guess करने के बजाय, drainer आपको स्वेच्छा से access sign करवाता है, फिर इसका use आपकी सबसे valuable assets को बाहर move करने के लिए करता है। Drainers एक बड़ा, active ख़तरा हैं: उन्होंने 2024 में लगभग 332,000 वॉलेट addresses से $494 million चुराए, जो पिछले साल से 67% अधिक है (Scam Sniffer, 2024)।
Wallet Drainers Token Approvals का Exploit कैसे करते हैं
Drainer attack आमतौर पर एक predictable chain of steps के माध्यम से चलता है:
- User एक fake mint, airdrop, या investment site पर पहुँचता है।
- Site user को अपने वॉलेट को connect करने के लिए prompt करती है।
- User एक approval या permit signature sign करता है।
- Drainer वॉलेट को scan करता है और सबसे valuable assets को identify करता है।
- Approved tokens या NFTs बिना किसी नए confirmation के बाहर transfer कर दिए जाते हैं।
अकेले वॉलेट को connect करने से किसी को भी आपकी assets move करने की अनुमति नहीं मिलती - ख़तरा केवल तब शुरू होता है जब आप एक approval या malicious transaction sign करते हैं। वह single signature एक harmless connection और drained वॉलेट के बीच की line है।
DApp को Disconnect करने से उसकी Approval Revoke क्यों नहीं होती
Disconnect करना और revoke करना दो अलग actions हैं, और केवल एक contract की spending permission को remove करता है। Disconnect करने से आपके वॉलेट और DApp के बीच interface बंद हो जाता है; approval on-chain living रहता है।
| Action | यह क्या करता है | क्या Active रहता है |
|---|---|---|
| Disconnect | वॉलेट और DApp interface के बीच connection बंद करता है | पहले grant किए गए on-chain approvals |
| Revoke | Smart contract की spending permission को remove या reset करता है | DApp को token को फिर से access करने के लिए नए approval का अनुरोध करना होगा |
अंतर दिखाने के लिए, हमने Gem Wallet को legitimate DApp Uniswap से connect किया और Permit2 को USDC पर unlimited approval grant किया। Uniswap को disconnect करने के बाद, कोई active WalletConnect sessions नहीं रहे, लेकिन Revoke.cash ने अभी भी approval को पूरे USDC balance के साथ value at risk के रूप में दिखाया। Disconnect करने से केवल DApp का connection बंद होता है - on-chain approval तब तक रहता है जब तक एक अलग revoke transaction न हो।
Uniswap में approve करें, DApp को disconnect करें - और approval अभी भी Gem Wallet में on-chain active है।
DApp Token Approvals को कैसे Revoke करें: Step by Step
Approval revoke करने में कुछ मिनट लगते हैं। यहाँ एक नज़र में पूरी प्रक्रिया है:
- Approval checker खोलें।
- अपना वॉलेट address enter करें।
- Blockchain select करें।
- Active approvals review करें।
- Allowance को revoke या reduce करें।
- Transaction confirm करें।
- Result verify करें।
आइए प्रत्येक step को विस्तार से देखें।
Step 1: एक Trusted Approval Checker खोलें
Revoke.cash या Etherscan Token Approval Checker जैसे approval checker को खोलें, और link का पालन करने के बजाय address को स्वयं type करें। इन tools की phishing copies मौजूद हैं, इसलिए कुछ भी connect करने से पहले domain को double-check करें।
Step 2: अपना क्रिप्टो Wallet Address Enter करें
अपने public वॉलेट address को paste करके read-only mode में शुरू करें - यह आपको बिना connect या sign किए हर active approval देखने देता है। WalletConnect के माध्यम से connect करना केवल तब आवश्यक है जब आप revoke करने के लिए तैयार हों।
Step 3: सही Blockchain Select करें
उस network को चुनें जहाँ approval grant किया गया था, क्योंकि हर chain अपने approvals store करता है। Ethereum, BNB Chain, Polygon, Base, और अन्य networks को अलग से check करना होगा - एक chain पर approval दूसरे पर invisible है।
Step 4: Spender और Allowance को Review करें
हर entry के लिए, token, smart contract (spender), approved amount, जिस date को यह grant किया गया था, और value at risk check करें। एक unknown spender या आपके पास मौजूद token पर unlimited amount approval को हटाने का सबसे स्पष्ट संकेत है।
Step 5: Token Approval को Revoke या Reduce करें
एक approval जिसकी आपको अब ज़रूरत नहीं है उसे पूरी तरह से remove करें, या allowance को उस amount तक reduce करें जो आप वास्तव में use करने की योजना बनाते हैं। Revoke पर tap करने से एक transaction build होता है जो उस contract के लिए spending allowance को 0 पर reset करता है।
Step 6: अपने Wallet में Transaction को Confirm करें
Request आपके वॉलेट में खुलता है, जैसे Gem Wallet, WalletConnect के माध्यम से। Confirm करने से पहले, check करें कि:
- Amount: Approved allowance 0 USDC में बदल जाता है।
- Contract: USDC।
- Method: Approve।
- Spender: Permit2।
- Network: Ethereum।
Confirm करने के लिए network fee (उदाहरण के लिए ETH) की आवश्यकता होती है, क्योंकि यह वह on-chain transaction है जो वास्तव में permission को remove करता है। इसे भेजने के लिए Gem Wallet में approve करें।
Step 7: Verify करें कि Approval Remove हो गया
Revoke.cash को reload करें और confirm करें कि approval चला गया है या इसकी amount बदल गई है। हमारे test में, dashboard 0 approvals, $0 value at risk, और एक empty approval list में update हो गया - प्रमाण कि contract अब USDC spend नहीं कर सकता जब तक यह फिर से नहीं पूछता।
Revoke पर tap करें, Gem Wallet में 0 USDC allowance confirm करें, और verify करें कि approval चला गया है।
आपको कौन से Token Approvals को Revoke करना चाहिए?
हर approval को remove करने की ज़रूरत नहीं है, लेकिन कुछ स्पष्ट candidates हैं। Approval को revoke करें जब:
- Unused DApp: आप अब DApp का use नहीं करते जो इसे hold करता है।
- Unknown Spender: आप spender contract को recognize नहीं करते।
- Unlimited Amount: Approval unlimited amount के लिए grant किया गया था।
- Old NFT Listing: Permission एक NFT listing से tied है जिसे आपने बंद कर दिया है।
- Reported Hack: Project ने hack या exploit का खुलासा किया है।
- Suspicious Source: Approval एक questionable mint या airdrop के बाद दिखाई दिया।
- Forgotten Reason: आपको याद नहीं कि आपने इसे क्यों grant किया।
यदि आपका क्रिप्टो Wallet पहले से ही Drain हो चुका है तो क्या करें
हर active approval को तुरंत revoke करें: revoking आगे के spending को रोकता है लेकिन पहले से ही चोरी हुई assets को recover नहीं करेगा। यदि आपका secret phrase या private key expose हो गया था, तो एक clean device पर एक नया वॉलेट बनाएं और किसी भी बचे हुए funds को वहाँ move करें। यदि sweeper bot address को देख रहा है, तो एक अलग asset-rescue plan के बिना compromised address पर gas न भेजें।
बिना Drain हुए DApps का Use कैसे करें
Revoking उन permissions को साफ करता है जो आपने पहले ही grant की हैं - लेकिन सुरक्षित आदत एक risky approval को पकड़ना है इससे पहले कि आप कभी इसे sign करें। कुछ नियम अधिकांश cases को cover करते हैं:
- Domain Verify करें: Connect करने से पहले DApp का exact URL check करें।
- Approval Bait को Ignore करें: Airdrop claim करने के लिए unclear approvals को sign न करें।
- Amount Cap करें: Unlimited grant करने के बजाय approved amount को limit करें।
- setApprovalForAll के लिए देखें: Collection-wide NFT permissions को extra caution के साथ treat करें।
- Spender Check करें: Confirm करें कि spender address असली protocol का है।
- नियमित रूप से Prune करें: एक schedule पर old approvals को remove करें।
- Risk को Isolate करें: नए और untrusted DApps के लिए एक अलग वॉलेट use करें।
Gem Wallet के साथ 100+ blockchains पर DApps use करें - एक पूरी तरह से open-source, self-custody वॉलेट जो आपके device पर private keys store करता है और कोई personal data collect नहीं करता। Gem Wallet download करें और अपनी keys पर पूर्ण control रखते हुए WalletConnect-compatible apps से connect करें।


