I-validate ang mga address ng EIP-55, Bitcoin, TRON, at Solana at ipakita ang tamang porma ng checksum.
Inspektor ng Kahilingan para sa Pirma
Ang kasangkapan mismo ay nasa Ingles; ipinaliwanag ito ng pahinang ito sa iyong wika.
Gamitin angInspektor ng Kahilingan para sa Pirma
Ano ang ginagawa nito
I-paste ang anumang hinihiling ng pitaka o ng isang site na pirmahan mo at tingnan sa simpleng Ingles kung ano ang pahihintulutan nito. Ang mga token approvals, permits, Permit2 signatures, at mga Seaport listings na nagbabayad sa iba ay naka-markang pula.
Ganap itong tumatakbo sa iyong browser: walang anumang ipinasok mo ang ina-upload.
Paano gamitin ang Inspektor ng Kahilingan para sa Pirma
- Kopyahin ang hilaw na kahilingan. Kunin ang eksaktong teksto na hinihiling sa iyo na pirmahan: ang EIP-712 JSON, ang 0x na datos ng isang transaksyon, ang buong object ng transaksyon, isang JSON-RPC na kahilingan, o ang teksto ng mensahe.
- I-paste at inspeksiyuhin. I-paste ito sa kahon. Nagsisimula ang inspeksyon sa pag-paste; maaari mo ring pindutin ang Inspect o Ctrl+Enter.
- Suriin kung paano ito nabasa. Ang unang linya ay nagsasabi kung ano ang nabasang uri ng input, halimbawa transaction object. Kung ito ay mali, piliin ang tamang uri sa Basahin ang input bilang.
- Basahin ang makulay na plato.. Ang badge, pamagat, at buod ay nagsasabi sa simpleng Ingles kung ano ang pahihintulutan ng pagpirma. Ang listahan sa ilalim nito ay naglalaman ng mga bandila; ang pinakamalubha ay naka-bold.
- Suriin ang mga patlang. Tingnan ang spender o operator, token, halaga, pag-expire, at chain sa talahanayan. Buksan ang mga Decoded arguments o Message fields para sa mga hilaw na halaga.
- Magpasya at magbahagi. Kung hindi mo kilala ang gumastos, tanggihan ang kahilingan sa iyong pitaka at hanapin ang mga address sa isang block explorer. Nagbibigay ang Copy report ng plain-text na buod na may mga link na hindi mapanganib.
Halimbawa
Permit2 na pirma para sa walang limitasyong allowance ng USDC
{
"types": {
"EIP712Domain": [
{
"name": "name",
"type": "string"
},
{
"name": "chainId",
"type": "uint256"
},
{
"name": "verifyingContract",
"type": "address"
}
],
"PermitSingle": [
{
"name": "details",
"type": "PermitDetails"
},
{
"name": "spender",
"type": "address"
},
{
"name": "sigDeadline",
"type": "uint256"
}
],
"PermitDetails": [
{
"name": "token",
"type": "address"
},
{
"name": "amount",
"type": "uint160"
},
{
"name": "expiration",
"type": "uint48"
},
{
"name": "nonce",
"type": "uint48"
}
]
},
"primaryType": "PermitSingle",
"domain": {
"name": "Permit2",
"chainId": 1,
"verifyingContract": "0x000000000022D473030F116dDEE9F6B43aC78BA3"
},
"message": {
"details": {
"token": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"amount": "1461501637330902918203684832716283019655932542975",
"expiration": "281474976710655",
"nonce": "0"
},
"spender": "0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB",
"sigDeadline": "115792089237316195423570985008687907853269984665640564039457584007913129639935"
}
}Read as: EIP-712 typed data. Change this with “Read the input as”.
DangerousPermit2 PermitSingle: token allowance by signature (UNLIMITED)
Signing lets 0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB move an unlimited amount of 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 (USDC token on Ethereum) out of your wallet through Permit2. The allowance never expires in practice. The spender submits this signature itself, so you will not see another prompt. Drainers favour Permit2 because many wallets have already approved Permit2 for apps such as Uniswap.
Unlimited amount: the spender can take your whole balance of the token.
The allowance never expires in practice.
The signature never expires in practice.
SPENDER 0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB
TOKEN 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
USDC token on Ethereum
AMOUNT Unlimited: 2^160−1, the Permit2 maximum (1461501637330902918203684832716283019655932542975)
ALLOWANCE EXPIRES 2^48−1 (Permit2 maximum): no practical expiry (beyond the year 5000)
NONCE 0
SIGNATURE VALID UNTIL (SIGDEADLINE) 2^256−1: no practical expiry (beyond the year 5000)
DOMAIN name "Permit2"
CHAIN Ethereum (chain ID 1)
VERIFYING CONTRACT 0x000000000022D473030F116dDEE9F6B43aC78BA3
Permit2 (Uniswap)
EIP-712 DIGEST (WHAT IS SIGNED) 0x579baa31b8f7279c82034e935d103d07caa27a817903937e201389d81d55984c
DOMAIN SEPARATOR 0x866a5aba21966af95d6c7ab78eb2b2fc913915c28be3b9aa07cc04ff903e3f28
MESSAGE HASH (HASHSTRUCT) 0xb646364eb4dc82faf68b61d79beb585797490532ff745845f3821e6f8573463c
PRIMARY TYPE PermitSingle(PermitDetails details,address spender,uint256
…Red plate: ang spender na 0xbBbB…BBbB ay maaaring maglipat ng walang limitasyong halaga ng USDC gamit ang Permit2, at hindi nag-e-expire ang allowance o ang pirma. Nakalkula ang EIP-712 digest.
Ano ang sinusuri nito
| Sinyales | Ano ang ibig sabihin nito |
|---|---|
| Badge ng panganib: Delikado, Suriin nang mabuti, Mababang panganib o Tala | Ang "Dangerous" ay nangangahulugang maaaring ipasa ng kahilingan ang mga token o NFT. Kailangan pa rin ng approval kahit para sa isang kilalang app, dahil pareho lang ang kapangyarihang ipinagkakaloob. Ang revoke, gaya ng approve na may halagang 0, ay ipinapakita bilang mababang panganib. |
| Tagapagbigay o operator na nakasuot ng pula | Ang address na magkakaroon ng karapatang ilipat ang iyong mga asset. Ilang kontrata ang nakalista, gaya ng Permit2, Seaport, at OpenSea conduit; ang anumang ibang address ay kailangang suriin. |
| Walang limitasyong halaga | Ipinapakita para sa 2^256−1 o anumang halaga ng 2^255 o higit pa, at sa mga kahilingan ng Permit2 para sa 2^160−1. Maaaring kunin ng nagbabayad ang buong balanse mo ng token na iyon, ngayon at sa hinaharap. |
| Halagang may token na desimal | Para sa USDC, USDT, DAI at WETH sa Ethereum, ang hilaw na numero ay kinokonberta; halimbawa, ang 1000000 ay nagiging 1 USDC. Para sa iba pang mga token, makikita mo ang hilaw na integer na binabasa gamit ang 18 at may 6 na desimal. |
| Pag-expire at huling takdang oras | Hindi kailanman nag-e-expire sa praktika (higit pa sa taong 5000), balido nang higit sa isang taon, o lipas na. Ang permit o pahintulot na hindi kailanman nag-e-expire ay nananatiling magagamit nang matagal kahit nakalimutan mo na ito. |
| Blind na pirma ng 32-byte na hash | Hindi maipapakita ng pitaka kung ano ang kinakatawan ng hash, at sa eth_sign maaari itong maging transaksyon o pahintulot. Lagdaan lamang ang hash na ikaw mismo ang gumawa. |
| Pag-check ng mga order sa pantalan | Listahang walang presyo, nakakakuha ang ibang mga tumatanggap ng higit pa kaysa sa nag-aalok, o muling lumilitaw ang inaalok na mga item sa ibang tumatanggap: karaniwan sa mga pekeng listahan ng NFT na nagbabayad sa umaatake. |
| Mag-sign in gamit ang Ethereum domain | Ang mensahe sa pag-login ay naglalahad ng pangalan ng site na nagtatanong. Kung ang domain na iyon ay hindi eksaktong site na iyong kinaroroonan, maaaring mag-log in ang signature sa iba bilang ikaw. |
| Dalawang pagbasa ng isang tagapili | Ang approve(address, uint256) ay parehong tawag sa ERC-20 at ERC-721. Maliban kung ang kontrata ay isa sa iilang token na kilala ng tool, ipinapakita ang parehong pagbasa. |
Karagdagang mga halimbawa
Pag-apruba ng NFT para sa buong koleksyon
0xa22cb465000000000000000000000000000000000000000000000000000000000000dead0000000000000000000000000000000000000000000000000000000000000001Basahin bilang: transaction calldata (kilalang tagapili ng function). Delikado: setApprovalForAll: kontrol sa LAHAT ng iyong mga NFT sa koleksyong ito. Operator 0x000000000000000000000000000000000000dEaD, Approved true, Collection (to) hindi ibinigay.
Limitadong pag-apruba ng USDC sa isang transaksyon
{"to":"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48","data":"0x095ea7b3000000000000000000000000000000000000000000000000000000000000dead00000000000000000000000000000000000000000000000000000000000f4240","value":"0x0","chainId":1}Basahin bilang: object ng transaksyon. Delikado: pag-apruba ng ERC-20. Sinasabi ng buod na maaaring gumalaw si 0x000000000000000000000000000000000000dEaD ng hanggang 1000000 yunit ng token na USDC sa Ethereum nang hindi na kailangang magtanong muli. Ipinapakita ng talahanayan ang Chain Ethereum (chain ID 1), Halaga 0 ETH (0 wei) at Dami 1000000 na may tala na 1 USDC (6 na desimal).
Bulag na kahilingan ng eth_sign
{"method":"eth_sign","params":["0x0000000000000000000000000000000000000001","0xabababababababababababababababababababababababababababababababab"]}Basahin bilang: JSON-RPC eth_sign na kahilingan. Mapanganib: Bulag na pirma: isang 32-byte na hash sa halip na teksto, na may flag na karamihan sa mga wallet ay nag-disable o nagtago ng eth_sign dahil ginagamit ito ng mga manlilinlang.
Madalas na tanong
Ano ang sinusuri ng Signature Request Inspector?
I-decode nito ang EIP-712 typed data, transaction calldata, transaction objects at personal_sign o eth_sign na mga mensahe at kinakalkula ang EIP-712 digest. Ina-flag nito ang mga token approval, setApprovalForAll, EIP-2612 at DAI permits, Permit2 signatures, Seaport orders na nagbabayad sa iba maliban sa iyo, at blind signatures sa isang 32-byte hash.
Maaari pa bang makasama ang isang kahilingan na hindi nakamarkang pula?
Oo. Binabasa lamang ng tool ang mismong kahilingan: hindi nito makita ang balanse, ang mga umiiral na pag-apruba, o kung ang isang kontrata ay malisyoso, at ang mga function sa labas ng talahanayan nito ay ipinapakita bilang hindi kilala. Ang mga pag-apruba para sa lehitimong mga app ay minarkahan ding pula, dahil ang pirma ay nagbibigay ng parehong kapangyarihan sa alinmang paraan.
Ipinapadala ba ang nakopyang kahilingan kahit saan?
Hindi. Ang pag-decode at pag-hash ay tumatakbo sa iyong browser at hindi gumagawa ng anumang network request ang pahina gamit ang iyong input. Ang kahilingan para sa pirma ay walang lihim, ngunit huwag kailanman i-paste ang pribadong susi o seed phrase sa anumang website.
Ginagawang ligtas ba ng kaunting halaga ang pag-apruba?
Ipinapaloob nito ang maaari kunin sa halagang iyon, ngunit maaaring gamitin ito ng gumagastos anumang oras nang hindi na kailangang humingi muli ng iyong pahintulot. Kaya naman ipinapakita pa rin ng tool na ang pag-apruba ng 1 USDC ay Delikado. I-apruba lamang ang halagang kailangan mo para sa isang gumagastos na iyong nasuri.
Bakit nakikita ko ang pagbasa ng ERC-20 at ERC-721 para sa isang approve?
Pareho ang ginagamit na pangalan ng function at uri ng mga argumento sa dalawang pamantayan, kaya hindi masasabi kung alin ito batay lamang sa 0x na datos. I-paste ang buong transaksyon kasama ang to address, at tingnan sa block explorer kung ang kontratang iyon ay token o koleksyon ng NFT.
Nakapirma na ako sa isang kahilingan na ipinapakita rito sa pula. Ano na ngayon?
Kilos agad. I-revoke ang mga on-chain approval at ilipat sa bagong wallet ang natitira. Ang pirmahang permit na hindi pa nagagamit ay hindi lumalabas bilang approval, kaya ang paglilipat ng mga token ang mas ligtas na hakbang. Nakalista sa Emergency Guide ang pagkakasunod-sunod ng mga hakbang.