Hindi pare-pareho ang wallet popup: alamin kung ano talaga ang hinihingi

Maaaring “Continue” o “Verify” lang ang nakasulat sa website, pero puwedeng login message, token allowance, NFT operator permission o direktang asset transfer ang nasa wallet. Ang may bisa ay ang network, method, contract, spender, amount at message sa popup—hindi ang label ng button o dami ng followers ng project.
Paano mabilis na makikilala ang uri ng wallet request?
Tingnan kung may gas, readable message, spender, asset change o contract call. Karaniwang walang gas ang simpleng address connect. Hindi agad napupunta sa block ang message signature. On-chain transaction ang approve at transfer. Maaaring walang gas sa pag-sign ng permit ngunit puwedeng isumite ito ng ibang tao para buhayin ang allowance.
| Request | Karaniwang display | On-chain? | Pangunahing panganib |
|---|---|---|---|
| Connect | Account/address access | Hindi | Pag-link ng address at website profile |
| personal_sign | Text o hex message | Hindi ang signature mismo | Login o off-chain consent |
| EIP-712 | Domain at structured fields | Hindi ang signature mismo | Order, permit o delegation |
| approve | Allow spender | Oo | Paggamit ng token hanggang allowance |
| permit | Owner, spender, value, deadline | Maaaring isumite kalaunan | Allowance mula sa signature |
| Transaction | To, value, gas, data | Oo | Paggalaw ng asset o state change |
Iba-iba ang wording ng bawat wallet. Buksan ang “Details,” “Data,” “Permission” o “Advanced.” Kapag hindi ipinapakita ang mahalagang field, hindi sapat na ebidensiya ang reassurance ng mismong website. Hindi nawawala ang lehitimong asset kapag ni-reject ang request; maaari mong simulan muli mula sa official flow.
Ano ang nakikita ng website kapag nag-Connect Wallet ka?
Karaniwang nakikita nito ang piniling public address, active chain at kakayahan ng wallet; hindi pa ito spending approval. May privacy cost pa rin. Public ang transaction history at maaaring iugnay ng site ang address sa browser session, social login o campaign profile.
Nakakabawas ng hindi kailangang exposure ang hiwalay na testnet wallet. Unawain ang kaibahan ng isa pang account sa parehong seed at wallet na may ganap na bagong seed. Hindi awtomatikong nakikita sa chain ang relasyon ng parehong seed, pero maaaring mabuo ang link mula sa transfers at paggamit. Iwasang ikonekta ang high-value wallet sa hindi kilalang task page.
Ituring na bagong request ang bawat popup pagkatapos ng connect. Madalas na pattern sa phishing ang harmless connection muna, tapos approve o permit kapag nakasanayan nang mag-confirm ng user. Hindi ginagawang safe ng unang popup ang pangalawa. Kapag sunod-sunod ang request, kanselahin at basahin ang expected steps sa official docs.
Ang pag-disconnect sa Connected sites ay nagtatapos sa front-end session, hindi sa on-chain approval. Hindi rin nabubura ang allowance sa pag-clear ng browser history, pag-lock ng wallet o pag-reinstall ng extension. Magkaiba ang privacy connection at blockchain permission.
Kailan mas mababa ang panganib ng personal_sign login?
Mas limitado ang panganib kapag readable ang message, tama ang domain, malinaw ang purpose at may nonce, pero hindi pa rin ito dapat blind sign. Nagbibigay ang EIP-191 ng prefix para hindi mapagkamalan ang signed data na ordinaryong transaction. Hindi nito pinatutunayang tapat ang layunin ng message.
Ano ang laman ng maayos na login message?
Dapat makita ang service domain, wallet address, login statement, random nonce, issued time at, kung kailangan, expiry. Itugma ang domain sa browser at sa message. Naiintindihan ang “Sign in to example.org”; hindi malinaw ang ibang domain, bukas na terms o hindi kaugnay na asset statement.
Hindi katumbas ng zero risk ang zero gas
Lokal na ginagawa ng wallet ang message signature kaya walang gas. Maaari pa rin itong gamitin ng service bilang patunay na pumayag ang controller ng address. Sa maling kamay, puwede itong maging login token, marketplace order o ibang authorization. Fee information lang ang gas; hindi ito permission score.
Ano ang gagawin sa hex message?
Kapag hindi mabasa ang payload, huwag pumirma at hanapin sa project docs ang eksaktong method. Kung kaunti lang ang display sa hardware wallet, tingnan ang full data sa desktop wallet interface. Hindi independent explanation ang “safe verification” na nakasulat sa page dahil page mismo ang gumawa ng request.
Hindi kailangang i-type sa form ang seed phrase, password o OTP para sa login signature. Wallet ang gumagawa ng signature. Kapag may hiwalay na form na humihingi ng secret, isara ang flow.
Bakit may panganib pa rin ang malinaw na EIP-712 typed data?
Inaayos ng EIP-712 ang data sa domain, types at fields para mabasa ng wallet; hindi nito ginagawang harmless ang permission. Ginagamit ito sa marketplace orders, governance votes, permit, smart-account actions at delegation. Basahin ang domain at message sections.
Domain fields
Tingnan ang name, version, chainId at verifyingContract. Kapag testnet ang sabi ng page ngunit mainnet ang chainId, tumigil. Itugma ang contract sa official docs o verified explorer. Text lang ang name at madaling kopyahin; mas mabigat ang contract address at chain context.
Message fields
Ikaw ba ang owner? Sino ang spender o operator? Gaano kalaki ang value? Ano ang deadline at nonce? Kapag scientific notation ang malaking integer, buksan ang details at unawain ang token decimals. Hindi magkapareho ang maliit na test allowance at unlimited value para sa unknown spender.
Deadline at replay
Maaaring magamit nang mas matagal ang open o napakalayong deadline. Karaniwang humahadlang sa replay ang nonce, pero nakadepende sa contract implementation. Hindi kayang i-audit ng user ang buong code mula sa popup; kaya kailangan ang official contract at documented flow.
Kahit “Login” ang pangalan ng field, maaaring permit o order ang underlying type. Basahin ang wallet method at verifying contract, hindi ang caption sa social post.
Ano ang kaibahan ng approve, permit at setApprovalForAll?
Lahat ay maaaring magbigay ng kapangyarihan sa ibang address, ngunit magkaiba ang sakop na asset at paraan ng pag-submit. Nagbibigay ang ERC-20 approve ng allowance sa spender. Ipinapahayag ng EIP-2612 permit ang allowance sa signature na maaaring isumite ng relayer. Maaaring saklawin ng NFT setApprovalForAll ang buong collection.
Tatlong field sa approve
Itugma ang token contract, spender at amount. On-chain transaction ang approve kaya may gas. Nakakatipid sa susunod na gas ang unlimited allowance pero pinalalaki ang exposure kapag na-compromise o nagbago ang contract. Hindi tugma sa normal na testnet task ang paghingi ng mainnet stablecoin approval.
Tunay na permission ang permit kahit walang gas
Maaaring “signature request” lang ang label ng wallet, ngunit bumubuo ng spending allowance ang owner, spender, value, deadline at verifyingContract. Puwedeng isumite ng attacker ang signature. Hindi ito kinakansela ng disconnect. Pagkatapos ng kahina-hinalang permit, tingnan kung nagamit na sa chain at alamin ang token-specific revocation; ilipat ang mahalagang asset kung kailangan.
Buong NFT collection ang operator permission
Hindi lang isang NFT ang setApprovalForAll. Kapag “verify ownership” o “mint pass” ang dahilan pero mainnet collection-wide approval ang request, hanapin ang official explanation. Hindi proporsyonal sa test badge ang malawak na permission sa mahalagang collection.
Nananatili ang approval kahit magsara ang website, i-delete ang app o i-disconnect ang session. Nagbabago lamang ito kapag naubos ang allowance, ginawa itong zero, ni-revoke ang operator o may contract-specific na kondisyon. Mag-review pagkatapos ng high-permission action at sa pag-alis sa project.
Anong fields ang hindi dapat laktawan sa transaction popup?
Itugma ang network, From, To, value, token changes, contract method at inaasahang resulta. Maaaring “Claim,” “Mint” o “Verify” ang button, pero ang data ang nagtatakda ng on-chain action. Hindi awtomatikong safe ang transferFrom, multicall o unknown method dahil maganda ang label.
- Expected testnet ba ang chain ID? Kanselahin kung mainnet gas symbol ang lumabas.
- Tamang test wallet ba ang From address, hindi holding wallet?
- Tugma ba ang To address sa official contract o intended recipient?
- Kung hindi zero ang native value, naiintindihan mo ba kung bakit may ipinapadalang asset?
- May hindi inaasahang outgoing token o NFT ba sa changes?
- Kaugnay ba ng kasalukuyang task ang method at parameters?
- Basahin ang simulation kung mayroon, pero huwag ituring na garantiya.
Hindi security score ang gas. Puwedeng mura ang malicious transfer. Hindi rin awtomatikong scam ang failed simulation; maaaring RPC o decoder ang problema. Kapag magkasalungat ang page at wallet, huwag mag-confirm at magtanong sa official technical support.
Maaaring magbago ang logic ng upgradeable proxy. Kasalukuyang state at decoder ang nakikita ng simulation; puwedeng hindi nito masaklaw ang delayed execution, reused signature o future upgrade. Mahalaga pa rin ang limited permission at verified source.
Anong anim na hakbang ang puwedeng gawing routine bago pumirma?
Domain—network—request type—target—scope—exit path ang gamitin sa parehong ayos. Mas matatag ito kaysa follower count, influencer endorsement o magandang interface.
- Domain: Pumasok mula sa official website o docs; tingnan ang spelling at subdomain.
- Network: Suriin ang chain ID at selected account; gumamit ng hiwalay na test wallet.
- Type: Connect, message, typed data, allowance o transaction?
- Target: Itugma ang contract, spender, operator, recipient at token.
- Scope: Unawain ang amount, unlimited flag, NFT collection, deadline at replay.
- Exit: Alamin kung paano mag-disconnect, revoke, cancel o maglipat ng asset.
Buksan ang details kapag may hindi malinaw. Kung hindi pa rin maipaliwanag, kanselahin. Mahina ang risk-reward ng pagbibigay ng main-wallet permission para sa hindi tiyak na airdrop. Nagbibigay ng oras ang lehitimong project; red flag ang countdown at private admin pressure.
Sa mobile, truncated ang address. Kopyahin at ihambing ang buong official address, pero huwag i-paste sa public chat. Huwag ipakita ang WalletConnect QR sa public screen o screen share. Huwag mag-import ng seed sa shared phone o computer shop.
Ano ang unang gagawin matapos ang maling signature o approval?
Itigil ang bagong requests, pagkatapos ay kumilos ayon sa uri ng pinirmahan. Nakakapigil ng susunod na popup ang pagsara at disconnect, pero nangangailangan ng revoke o asset move ang on-chain permission. Kapag nanganganib ang mahalagang asset, maaaring unahin ang paglipat sa wallet na may bagong seed.
- Connect lang: Alisin ang connected site, mag-logout at bantayan ang unusual requests.
- Login message: I-revoke ang sessions, suriin ang security ng linked account at i-report ang domain sa official support.
- Permit: Tingnan kung nagamit sa explorer, hanapin ang token-specific revoke o nonce path, at maglipat kung kailangan.
- Approve: Sa tamang chain, gawing zero o i-revoke ang spender allowance at tingnan ang history.
- setApprovalForAll: I-revoke ang operator sa tamang NFT collection; magkakahiwalay ang bawat collection.
- Asset transfer: Karaniwang hindi nababaligtad ang chain transaction. Itago ang hash, i-report sa platform at angkop na awtoridad, at huwag magbayad sa recovery scam.
Huwag ilagay ang seed phrase sa “scanner.” Huwag magbigay ng remote-control access. Kayang magsuri ng lehitimong helper gamit ang public hash, contract at error. Mas madali ang ikalawang scam habang nagpapanic, kaya sundin ang nakasulat na checklist.
Tatlong maikling sitwasyon
Login message
Readable ang statement, tugma ang domain, may nonce at issued time, at walang asset field. Mas limitado ang risk ngunit may privacy cost kapag ini-link ang address sa profile. Mas mainam ang activity wallet kaysa holding wallet.
Testnet swap approval
Testnet talaga ang chain, test asset ang token at official router ang spender. Maaaring expected ang approval, pero tingnan kung puwedeng custom amount sa halip na unlimited. I-review matapos ang task.
Mainnet permit na tinawag na verification
Reward ang sabi ng page pero mainnet chainId, stablecoin contract at unknown spender ang typed data. Hindi safety signal ang kawalan ng gas. I-reject, i-report ang domain at tingnan kung may naunang signature.
Karaniwang tanong
Maililipat ba ang asset sa simpleng wallet connect?
Karaniwang ipinapakita lamang ng connect request ang piniling public address at network sa website; hindi ito transfer. Ngunit maaaring humingi ang page ng hiwalay na message signature, approval o transaction pagkatapos, kaya basahin muli ang bawat popup.
Laging ligtas ba ang personal_sign?
Hindi. Ang malinaw na login message ay karaniwang hindi agad naglilipat ng asset, pero maaaring gamitin ang signature bilang login o off-chain authorization. I-reject kapag hindi malinaw ang domain, purpose, nonce o expiry.
Ano ang magkaparehong panganib ng approve at permit?
Pareho silang maaaring magbigay sa isang spender ng pahintulot na gumamit ng token. On-chain transaction ang approve; maaaring isumite ng ibang tao sa ibang oras ang permit signature. Suriin ang token, spender, amount, chain at deadline.
Puwede bang mag-confirm kapag safe ang wallet simulation?
Tulong ang simulation, hindi garantiya. Maaaring hindi nito makita ang upgradeable contract, delayed submission, maling decoding o susunod na call. Suriin pa rin ang domain, contract at mismong permission.