பாதுகாப்பு, அபாயம் மற்றும் வரி

Wallet connect, Sign, Token approve: எந்த popup உங்கள் coin-ஐ எடுக்க அனுமதி தரும்?

DeFi site-ல் wallet popup வந்ததும் Confirm அழுத்தலாமா? Connect address-ஐ மட்டும் காட்டும்; Sign செய்தியைப் பொறுத்தது — Permit கையெழுத்து gas இல்லாமலே approval ஆகலாம்; Approve revoke செய்யும் வரை நீடிக்கும் allowance. நிஜ USDT unlimited approve transaction உதாரணத்துடன், தவறாக அழுத்தியிருந்தால் செய்ய வேண்டியவை.

Wallet connect, Sign, Token approve: எந்த popup உங்கள் coin-ஐ எடுக்க அனுமதி தரும்?

ஒரு DeFi site அல்லது NFT page-ல் wallet popup திறந்திருக்கிறது, "Confirm" அழுத்தலாமா என்று தயங்குகிறீர்கள். அல்லது ஏற்கனவே எதையோ அழுத்திவிட்டீர்கள், இப்போது "என் coin போய்விடுமா?" என்று பயப்படுகிறீர்கள். முதலில் இதைத் தெரிந்துகொள்ளுங்கள்: wallet கேட்கும் ஒவ்வொரு popup-ம் ஒரே மாதிரியான அனுமதி அல்ல. Connect, Sign, Approve — மூன்றும் வேறு வேறு. ஒன்று address-ஐக் காட்டுவது மட்டும்; இன்னொன்று உங்கள் token-ஐ வேறொரு contract எடுக்கக் கொடுக்கும் நீடித்த அனுமதி. எதை அழுத்தினீர்கள் என்று தெரிந்தால்தான் அடுத்து என்ன செய்வது என்று முடிவெடுக்க முடியும்.

இந்தப் பக்கம் MetaMask, Trust Wallet போன்ற self-custody wallet பயன்படுத்துபவர்களுக்கு. Exchange app-க்குள் மட்டும் coin வைத்திருந்தால் இந்த popup-கள் வராது; அந்த வித்தியாசம் custodial, self-custody wallet ஒப்பீடு பக்கத்தில் உள்ளது.

Connect, Sign, Approve மூன்றையும் ஒப்பிடும் விளக்கப்படம்: Connect address-ஐ மட்டும் காட்டும், Sign பொதுவாக coin-ஐ நகர்த்தாது ஆனால் Permit கையெழுத்து approval-க்குச் சமம், Approve gas செலவுடன் contract-க்கு allowance வழங்கும்

Popup-இன் தலைப்பையும் கீழே உள்ள பொத்தானையும் பாருங்கள்:

Popup-ல் தெரிவது இது எது coin நகருமா gas கட்டணம்
"Connect", "Connect to this site", account தேர்வு Connect இல்லை இல்லை
"Signature request", "Sign message", ஒரு text அல்லது JSON செய்தி Sign செய்தியைப் பொறுத்தது இல்லை
"Spending cap", "Allowance", "Approve USDT" Approve அனுமதி பெற்ற contract பிறகு எப்போது வேண்டுமானாலும் எடுக்கலாம் உண்டு
"Send", "Transfer", தொகை + பெறுநர் address நேரடி transfer ஆம், உடனே உண்டு

Wallet-க்கு wallet சொற்கள் மாறும். ஆனால் ஒரு எளிய அடையாளம் உண்டு: network fee (gas) காட்டினால் அது blockchain-ல் பதிவாகும் transaction. fee இல்லாத popup என்பது Connect அல்லது Sign. ஆனால் "fee இல்லை = பாதுகாப்பு" என்று அர்த்தமல்ல — அதைக் கீழே Permit பகுதியில் பார்க்கலாம்.

Wallet Connect செய்தால் site-க்கு என்ன கிடைக்கிறது?

Site "Connect Wallet" கேட்கும்போது, உங்கள் wallet அந்த site-க்கு உங்கள் public address-ஐ மட்டும் கொடுக்கிறது. Ethereum wallet-களுக்கான இந்த நடைமுறை EIP-1102-ல் eth_requestAccounts என்ற method ஆக வரையறுக்கப்பட்டுள்ளது: அது பயனருக்கு account access-ஐ அனுமதிக்கவா, மறுக்கவா என்ற திரையைக் காட்டி, அனுமதித்தால் account address பட்டியலைத் தருகிறது.

இதன் விளைவு:

  • Site உங்கள் balance, பழைய transaction-களைப் பார்க்கலாம் (இவை blockchain-ல் யாருக்கும் தெரிபவைதான்).
  • Site-ஆல் உங்கள் coin-ஐ நகர்த்த முடியாது. ஒவ்வொரு transaction-க்கும், ஒவ்வொரு signature-க்கும் wallet தனியாக உங்களிடம் கேட்கும்.
  • Blockchain-ல் எதுவும் பதிவாகாது, gas இல்லை.

ஆபத்து Connect-ல் இல்லை; Connect-க்குப் பிறகு site கேட்கும் அடுத்த popup-ல்தான் இருக்கிறது. போலி site-கள் Connect செய்த உடனே "verify wallet", "claim reward" என்று சொல்லி Sign அல்லது Approve கேட்கும். Connect-ஐ நீக்க wallet settings-ல் "Connected sites" பகுதியில் அந்த site-ஐ disconnect செய்யலாம்; ஆனால் அது ஏற்கனவே கொடுத்த approval-ஐ ரத்து செய்யாது.

Signature request: login செய்தியும் Permit கையெழுத்தும்

Sign என்பது உங்கள் private key-ஆல் ஒரு செய்தியில் கையெழுத்திடுவது. அது blockchain-க்கு அனுப்பப்படுவதில்லை, அதனால் gas இல்லை. ஆனால் கையெழுத்திடப்படும் செய்தி என்ன சொல்கிறது என்பதைப் பொறுத்து அதன் விளைவு முற்றிலும் மாறும்.

1. சாதாரண login / ownership செய்தி. "Sign in to example.app, Nonce: 8392…" போன்ற படிக்கக்கூடிய text. இது "இந்த address என்னுடையது" என்று நிரூபிக்க மட்டுமே; இந்த வகையில் பொதுவாக coin நகராது. சரிபார்க்க: செய்தியில் உள்ள domain நீங்கள் திறந்த site-இன் domain-தானா என்று பாருங்கள். வேறு domain என்றால் நிறுத்துங்கள்.

2. Typed data — குறிப்பாக Permit. JSON போன்ற அமைப்பில் spender, value, deadline, nonce போன்ற புலங்கள் காட்டப்பட்டால், அது EIP-712 structured data. இதில் மிக முக்கியமானது ERC-2612 Permit. அந்த standard-இன் சொந்த விளக்கமே: permit என்ற function, allowance-ஐ transaction-க்குப் பதிலாக ஒரு signed message மூலம் மாற்ற அனுமதிக்கிறது.

ERC-2612 Permit Extension for EIP-20 Signed Approvals standard பக்கத்தின் Abstract பகுதி: permit function allowance-ஐ signed message மூலம் மாற்றுகிறது என்று விளக்குகிறது

அதாவது, gas இல்லாத ஒரு Sign கூட Approve-க்குச் சமமான அனுமதியை உருவாக்கலாம். நீங்கள் கையெழுத்திட்ட message-ஐ வைத்திருப்பவர் அதை blockchain-க்கு அனுப்பி (gas-ஐ அவரே கட்டி) allowance-ஐ set செய்து, பிறகு token-ஐ எடுக்க முடியும். deadline நேரம் கடக்கும் வரை அந்த message செல்லுபடியாகும். Ethereum-ல் உள்ள USDC contract-இல் permit function உள்ளது (Blockscout-ல் அதன் verified contract ABI-ல் காணலாம்), எனவே இது ஏட்டுக் கணக்கு அல்ல.

Sign popup-ல் நிறுத்த வேண்டிய அடையாளங்கள்:

  • Permit, spender, value, deadline என்ற சொற்கள் இருக்கின்றன, ஆனால் நீங்கள் எதையும் swap / deposit செய்ய முயற்சிக்கவில்லை.
  • value மிகப் பெரிய எண் (115792089… என்று தொடங்கும் 78 இலக்க எண்), deadline பல வருடங்கள் கழித்து.
  • படிக்க முடியாத hex மட்டும் (0x…) காட்டி "Sign" கேட்பது. சில wallet-கள் இதற்குத் தனி எச்சரிக்கை காட்டும்; அந்த எச்சரிக்கையைத் தாண்டாதீர்கள்.
  • "Gas இல்லை, இலவச verify" என்று site வலியுறுத்துவது.

Token Approve: blockchain-ல் பதிவாகும் நீடித்த அனுமதி

Uniswap போன்ற DEX-ல் USDT-ஐ வேறு token-க்கு swap செய்யும்போது, முதல் முறை "Approve USDT" என்று ஒரு தனி transaction கேட்கும். இது ERC-20 standard-இன் approve function. Standard-இன் வரையறை: _spender என்ற address உங்கள் account-இலிருந்து பல முறை, _value தொகை வரை எடுக்க அனுமதிக்கிறது; மீண்டும் அழைத்தால் பழைய தொகையைப் புதியது மாற்றிவிடும். அந்த அனுமதிக்குக் காலாவதி இல்லை.

நிஜ உதாரணம் — 2026-10-18 07:56 UTC அன்று Ethereum-ல் நடந்த ஒரு USDT approve transaction (Blockscout-ல் யார் வேண்டுமானாலும் திறந்து பார்க்கலாம்):

Blockscout-ல் USDT approve transaction விவரம்: Approved USDT for trade on UniswapV2Router02, Status Success, method approve, Value 0 ETH, Transaction fee 0.0000025985 ETH

இந்தப் படத்தில் கவனிக்க வேண்டியவை:

  • Status and method: approve — இது transfer அல்ல; இந்த transaction-ல் எந்த USDT-ம் நகரவில்லை.
  • Approved USDT for trade on UniswapV2Router02 — spender = Uniswap V2 Router contract. இனி அந்த contract இந்த address-இலிருந்து USDT எடுக்கலாம்.
  • Transaction fee 0.0000025985 ETH — approve-க்கும் gas உண்டு (அன்று சுமார் $0.01; gas விலைக்கு ஏற்ப மாறும்).
  • Blockscout-ல் இதன் decoded input-ஐப் பார்த்தால் _value = 115792089237316195423570985008687907853269984665640564039457584007913129639935. இது uint256-இன் அதிகபட்ச மதிப்பு (2²⁵⁶−1) — நடைமுறையில் unlimited approval. ஒவ்வொரு swap-க்கும் மீண்டும் approve கேட்காமல் இருக்கப் பல dApp-கள் இயல்பாக இதையே கேட்கின்றன.

உங்கள் சொந்த approve transaction-ஐ இதே போல் சரிபார்க்க, wallet activity-ல் அந்த transaction hash-ஐ copy செய்து explorer-ல் திறங்கள். Explorer page-இன் ஒவ்வொரு புலத்தையும் எப்படிப் படிப்பது என்பது block explorer-ல் transaction status பார்க்கும் முறை பக்கத்தில் உள்ளது.

Approve popup வரும்போது இந்த வரிசையில் சரிபார்க்கவும் (Approve checklist)

  1. நான் இப்போது swap / deposit / stake செய்ய முயற்சிக்கிறேனா? இல்லையென்றால் Reject. "Reward claim", "airdrop verify" செய்ய approve தேவையில்லை.
  2. எந்த token? Popup-ல் உள்ள token பெயர் நீங்கள் பயன்படுத்தப் போகும் token-தானா.
  3. Spender யார்? Wallet காட்டும் spender address-ஐத் தட்டி explorer-ல் திறங்கள். அது பெயருடன் கூடிய verified contract-ஆ (உதா: UniswapV2Router02), அல்லது பெயரில்லாத புதிய address-ஆ.
  4. தொகை (spending cap) எவ்வளவு? பல wallet-கள் இதை மாற்ற அனுமதிக்கும். ₹5,000 மதிப்புள்ள USDT-ஐ மட்டும் swap செய்யப் போகிறீர்கள் என்றால், cap-ஐ அந்தத் தொகைக்கு மட்டும் வையுங்கள். அடுத்த முறை மீண்டும் approve-க்குச் சிறிய gas கட்ட வேண்டும் — unlimited அனுமதியை விட அது மலிவான பாதுகாப்பு.
  5. Network fee பாருங்கள். Approve-க்கு fee இருக்கும்; fee அசாதாரணமாக அதிகமாக இருந்தால் Reject செய்து காரணத்தைத் தேடுங்கள்.

Connect, Sign, Approve ஒப்பீட்டு அட்டவணை (Comparison)

அம்சம் Connect Sign (login) Sign (Permit) Approve
Blockchain-ல் பதிவு இல்லை இல்லை பிறர் அனுப்பும்போது பதிவாகும் ஆம்
உங்களுக்கு gas இல்லை இல்லை இல்லை ஆம்
Token எடுக்க அனுமதி இல்லை இல்லை ஆம் (value வரை, deadline வரை) ஆம் (revoke செய்யும் வரை)
எப்படி நீக்குவது Wallet-ல் disconnect தேவையில்லை பயன்படுத்தப்பட்ட பின் allowance-ஐ revoke Allowance-ஐ 0 ஆக revoke
Standard EIP-1102 personal_sign ERC-2612 / EIP-712 ERC-20 approve

தவறாக Confirm அழுத்திவிட்டேன் — இப்போது என்ன செய்வது?

Connect மட்டும் செய்தீர்கள்: coin-க்கு ஆபத்து இல்லை. Wallet settings → Connected sites-ல் அந்த site-ஐ disconnect செய்யுங்கள். அந்த site அடுத்து கேட்கும் எந்த popup-ஐயும் Reject செய்யுங்கள்.

Login வகைச் செய்தியில் Sign செய்தீர்கள்: செய்தி படிக்கக்கூடிய text, அதில் Permit / spender / value இல்லை என்றால் பொதுவாக coin நகராது. ஆனாலும் அந்த site-ஐ disconnect செய்யுங்கள்.

Permit அல்லது Approve கொடுத்தீர்கள், அந்த site சந்தேகமானது:

  1. உடனே explorer-ல் உங்கள் address-ஐத் திறந்து token balance இன்னும் இருக்கிறதா பாருங்கள்.
  2. இருந்தால், உடனடியாக அந்த spender-க்கான allowance-ஐ 0 ஆக revoke செய்யுங்கள். ethereum.org-இன் token access revoke வழிகாட்டி இதைப் படிப்படியாக விளக்குகிறது. Revoke-ம் ஒரு transaction-தான் — gas-க்கு அந்த network-இன் coin (Ethereum-ல் ETH) கொஞ்சம் தேவை.
  3. Revoke-க்கு gas இல்லை, அல்லது பல token-களுக்கு approval கொடுத்திருக்கிறீர்கள் என்றால்: புதிய wallet ஒன்றை உருவாக்கி (புதிய seed phrase உடன்), மீதமுள்ள மதிப்புள்ள token-களை அங்கே நகர்த்துங்கள். பழைய address-ஐ இனி பயன்படுத்த வேண்டாம்.
  4. Token ஏற்கனவே எடுக்கப்பட்டிருந்தால், blockchain transaction-ஐத் திரும்பப் பெற முடியாது. Transaction hash, spender address, site URL, popup screenshot, நேரம் ஆகியவற்றைச் சேர்த்து cybercrime.gov.in-ல் புகார் செய்யுங்கள் அல்லது 1930 helpline-ஐ அழையுங்கள். "Recovery service" என்று DM-ல் வருபவர்கள் பெரும்பாலும் இரண்டாவது மோசடி — இதன் வடிவங்கள் crypto மோசடிகள் பற்றிய பக்கத்தில் உள்ளன.

எந்த நிலையிலும், "support" என்று சொல்லி யாராவது seed phrase அல்லது private key கேட்டால், அது Sign / Approve-ஐ விடப் பெரிய இழப்பு: wallet முழுவதும் அவருடையதாகிவிடும். ஏன் என்பதை seed phrase, private key, password வித்தியாசம் பக்கத்தில் விளக்கியுள்ளோம்.

அடிக்கடி கேட்கப்படும் கேள்விகள் (FAQ)

Wallet connect செய்தாலே hack ஆகுமா? இல்லை. Connect உங்கள் address-ஐ மட்டும் காட்டுகிறது (EIP-1102 eth_requestAccounts). ஆபத்து அதற்கு அடுத்து நீங்கள் ஒப்புக்கொள்ளும் Sign அல்லது Approve-ல்தான்.

Gas fee இல்லாத Sign பாதுகாப்பானதா? எப்போதும் அல்ல. ERC-2612 Permit கையெழுத்துக்கு gas இல்லை, ஆனால் அது approve-க்குச் சமமான allowance-ஐ உருவாக்க முடியும். செய்தியில் spender, value, deadline இருந்தால் அதை Approve போலவே கவனமாகப் பாருங்கள்.

Swap முடிந்த பிறகு approval தானாக நீங்குமா? இல்லை. ERC-20 approve-க்குக் காலாவதி இல்லை. Unlimited approval கொடுத்திருந்தால், நீங்கள் revoke செய்யும் வரை அந்த contract உங்கள் token-ஐ எடுக்கும் உரிமையுடன் இருக்கும்.

Exchange app (custodial) பயன்படுத்தினால் இது பொருந்துமா? Exchange account-க்குள் நடக்கும் trade-களுக்கு இந்த popup-கள் இல்லை. Self-custody wallet-ஐ DeFi site-களுடன் இணைக்கும்போது மட்டுமே இது பொருந்தும்.


ஆதாரங்கள் (2026-10-19 அன்று பார்க்கப்பட்டவை): EIP-1102, ERC-20, ERC-2612, EIP-712, Blockscout transaction 0x4fe44f…, ethereum.org token access revoke guide. இது கல்வி நோக்கமுடைய தகவல், முதலீட்டு ஆலோசனை அல்ல.