Binance

Binance new-user bonus · Enjoy 20% fee rebate

Register to enjoy a 20% fee rebate

Invite codeBINANBT
Register on Binance

✅ The invite code is applied automatically when you register — no need to enter it manually

⚠️ Complete identity verification (KYC) after signup to trade & withdraw

⏳ The registration page takes 2–5 seconds to load — please wait, don't tap repeatedly.

Crypto wallet signature types 2026: personal_sign, Permit, Permit2 and EIP-7702 risk levels
Web3 Security • • • Author:CoinVado Research • 6 reads • 15 min

Crypto Wallet Signature Types 2026: personal_sign, Permit, Permit2 and EIP-7702 Explained

Not every wallet signature is the same. personal_sign may just log you in, while Permit, Permit2, EIP-3009 and EIP-7702 can move tokens or hand over an entire account without a transfer screen. This guide maps nine signature and approval types, what each one can touch, whether it leaves an on-chain trace, how to revoke it, and a 30-second check before you sign.

⚠️ Read this first: signature safety assumes you already have an account. Register on Binance through the registration link (e.g. "Sign up now") or with invite code BINANBT to get the new-user rewards (20% trading-fee rebate plus up to $19,800 in welcome rewards). Note: registering directly inside the app earns nothing — you must use the link or enter the code.

Key takeaways (TL;DR):

  • "Signature" in a wallet popup covers at least nine different things, with risks three orders of magnitude apart. Connecting a wallet moves nothing; a plain message signature usually moves nothing; but Permit, Permit2, EIP-3009 and EIP-7702 can move tokens or take over the whole account without a transfer.
  • Judge by three fields, not by the label: spender, amount, expiry. Unknown spender, unlimited amount, or an expiry in 2106 — any one of them means treat it like a transfer.
  • The signature layer is where the large losses are. January 2026 signature phishing cost about $6.27 million across 4,741 victims; in July 2026 a single trader lost about $1 million to a forged Permit2 signature.
  • Most signatures leave no on-chain trace. Revocation tools cannot see an unsubmitted Permit or a Permit2 SignatureTransfer; moving funds to a fresh wallet is the only reliable stop-loss.
  • EIP-7702 is a new risk tier. It does not approve one token; it hands over the execution rights of the whole address, and revoking requires another 0x04 transaction pointing to the zero address.
  • A hardware wallet helps you see, not decide. If the screen shows an approval you do not understand and you confirm it, you signed it yourself.

Table of contents

One-line answer: three risk tiers

Wallet signatures fall into three risk tiers: those that cannot move assets, those that can move a specific token or collection, and those that can take over the entire account. You do not need to memorize nine names — identify the tier first, then decide whether to sign.

  • Tier 1: cannot move assets. Connecting a wallet, login signatures, and some "prove you own this address" messages. They do not change on-chain state; the main risk is exposing your address and social identity.
  • Tier 2: can move a token, an NFT collection or a single transfer. ERC-20 approve, EIP-2612 permit, EIP-3009, Permit2 and Seaport order signatures all sit here. The differences are how much, how often, and whether it can be revoked.
  • Tier 3: can move the whole account. Today this is mainly EIP-7702. It delegates the address's execution rights to a contract, effectively handing over a copy of the account key.

The habit to build is simple: when a signature popup appears, find the spender address first, then the amount and expiry, and only then look at the website. Sites can be faked; fields cannot — as long as you actually read them.

Why signatures are more dangerous than transfers

A transfer requires you to type a recipient and an amount; a signature only requires a click, so attackers only need to win that click — not your password. That is why signature phishing scales better than account takeover.

There are four structural differences:

  1. Signatures cost no gas and show no "send" screen. Users assume they are just logging in, so their guard is down.
  2. One signature can cover many tokens. Permit2 batch approvals turned "revoke each token" into "sign once"; drainers use the same feature to empty a wallet in one go.
  3. Off-chain signatures leave no on-chain record. Before submission, block explorers, revocation tools and sometimes the wallet itself cannot see them.
  4. Transaction simulation is often incomplete for signatures. Wallets simulate what happens if a transaction executes, but many cannot simulate the off-chain approval you just signed.

ScamSniffer's January 2026 data recorded about $6.27 million lost across 4,741 victims, with losses up 207% month over month while victim count fell 11%. The campaign shifted from broad lures to whale hunting: two victims accounted for roughly 65% of January losses, and the largest single loss of $3.02 million came from a malicious permit / increaseAllowance signature1.

The nine signature and approval types

The table is ordered by what the request can touch, with higher risk lower down. One caveat: approve and setApprovalForAll are transactions, not signatures, but users routinely confuse the two, so they are included for comparison.

Type What you actually sign What it can move On-chain trace How to handle after a mistake Typical use
Wallet connect Nothing; only your address is shared Nothing None Disconnect Login, balance reads
personal_sign message Arbitrary text or a hash Usually nothing, but can be abused for login, binding or consent None Disconnect; if disguised as an approval, treat it as one Login, address verification, some airdrops
EIP-712 typed data Structured fields such as amount, spender, deadline Depends on the fields; may authorize a transfer Only after submission Revoke the matching approval Permits, orders, gasless flows
ERC-20 approve A transaction An allowance for one token Yes Send another approve to zero First-time app approval
EIP-2612 permit A token approval signature An allowance for one token Only after submission Revoke the allowance Gasless approvals
EIP-3009 transfer authorization Recipient, amount, validity window A specific transfer Only after submission Cannot revoke; wait for expiry USDC transfers, payment protocols
Permit2 master approval Token allowance to Permit2 Total allowance across tokens Yes Revoke the master approval Uniswap, aggregators
Permit2 single-use signature One transfer authorization A specific token and amount None Invisible; move to a new wallet Approve-free swaps
Seaport order NFT, price, expiry NFTs and WETH Only when filled Cancel the order OpenSea, Blur
EIP-7702 authorization A delegate contract address The entire account's execution rights Yes (0x04 transaction) Send another 0x04 pointing to zero Smart accounts, batching

Smart-contract wallets such as Safe or account-abstraction wallets verify signatures through ERC-1271, and undeployed wallets through ERC-6492. For regular users the takeaway is: if a tool shows a contract address as the signer, the signature is not automatically invalid — the question is still who gets to move what.

Type by type: what each signature actually authorizes

Wallet connect: not a signature, but still a door

Connecting only shares your address; it does not involve the private key or change on-chain state. The step itself is low risk, but it is the entry point: once a site has your address it can read balances, holdings and history, then tailor the next request.

The thing to watch is what happens after connecting. If a site you only wanted to browse immediately asks for a signature or approval, close it.

personal_sign: a message that may be a login or a trap

personal_sign signs arbitrary text with your private key, most commonly for login and proving address ownership. It does not change state or move funds directly, which is why many people treat it as the safe one.

The problem is that a phishing site can wrap an unreadable hex payload as a "login verification", and that payload may mean something else in another protocol. More common is social engineering: getting you to sign a statement that you "voluntarily give up assets", then using it for reputational or secondary fraud.

Rule of thumb: if a message signature contains a contract address, an amount or a nonce you cannot read, treat it as high risk. A genuine login signature is usually one readable sentence plus a nonce.

EIP-712: structured signing, the carrier for Permits

EIP-712 structures the payload into fields so the wallet can display who you are authorizing, how much and until when. The format itself is neutral; the risk lives in the fields. Permit, Permit2 and Seaport orders all build on it.

In theory EIP-712 makes everything readable. In practice many wallets collapse it into a single "Signature request" line, so users still never see the spender or amount. When an EIP-712 popup appears, expand the details first.

ERC-20 approve: a transaction, not a signature

approve is an on-chain transaction that opens an allowance for a spender. It costs gas, leaves an explorer record and can be revoked — which makes it easier to clean up than an off-chain signature.

The risk is the amount. Many apps request an unlimited allowance by default, so a compromised or malicious contract can take the entire balance of that token. Grant a limited amount where possible, and revoke unlimited approvals with Revoke.cash.

EIP-2612 permit: one signature, one approve

permit turns an approve transaction into a signature: you sign once, and anyone can submit it to obtain the allowance. It saves gas and, more importantly, removes the "you are granting an approval" prompt.

Three details matter:

  • The deadline is the latest submission time, not the allowance expiry. A permit signed with the maximum deadline is an approval letter that never expires.
  • The nonce is the only replay guard. Once a signature is submitted, the nonce increments; an unsubmitted signature stays valid indefinitely.
  • Revoking a permit-generated allowance works like revoking an approve: send a transaction that sets the allowance back to zero.

EIP-3009: a signature that moves money directly

EIP-3009's transferWithAuthorization lets you sign "I agree to send X USDC to this address", and anyone can submit it to complete the transfer. USDC and some other tokens support it, commonly for gasless transfers and payment flows.

It is more direct than permit: permit grants an allowance, 3009 authorizes this specific transfer. The signature contains the recipient, amount, validAfter, validBefore and nonce, and there is no allowance to revoke. Once signed, your only hope is that nobody submits it before validBefore. Always verify the recipient and amount on a 3009 request.

Permit2: two layers, and a drainer favorite

Permit2 is a standalone contract deployed by Uniswap that splits approvals into "token → Permit2" and "Permit2 → app". Its canonical address is 0x000000000022D473030F116dDEE9F6B43aC78BA3, deployed at the same address on most EVM chains.

It has two subsystems with very different risk profiles:

  • AllowanceTransfer: you grant Permit2 a master allowance on-chain, then each app receives a sub-allowance through your signature. Revoking the master allowance closes every downstream approval, but many users only revoke the app and forget the master.
  • SignatureTransfer: no master approval; one signature authorizes one transfer. That signature has no on-chain record, is invisible to revocation tools and may not trigger a wallet warning. Moving funds to a new wallet is the only safe response.

Permit2 became the drainer tool of choice because a single EIP-712 signature can cover multiple tokens and its contents are nearly unreadable to normal users. In July 2026 a trader lost about $1 million after signing a forged Permit2 authorization; the same attack category also cost a VIRTUAL holder about $196,0002.

Seaport orders: an NFT sale signature can be forged too

Seaport is the order protocol used by OpenSea; listing an NFT is a signature saying "I will sell this item at this price". The signature stays off-chain until someone fills it, which is exactly why a phishing site that obtains it can match your NFT at a tiny price.

Blur and similar marketplaces use comparable logic. Check that the order contains the minimum price you accept and a sensible expiry; if the price is zero or one wei, refuse.

EIP-7702: handing over the whole account

EIP-7702 lets a regular wallet address delegate its execution rights to a contract, appearing on-chain as a type 0x04 transaction with the address code set to 0xef0100 plus the delegate address. It shipped with the Pectra upgrade in May 2025 to give EOAs batching, gas sponsorship and social recovery3.

The risk is the scope. A normal approval affects one token's allowance; a 7702 delegation affects the entire address. After a malicious delegation, the attacker does not need another approval and can sweep assets every time you deposit, including top-ups made before you revoke. A delegation with chain_id = 0 is valid on every EVM chain.

Revoking requires another 0x04 transaction pointing the delegation at the zero address. Two caveats: revoking does not clear storage or existing token approvals, and most wallets do not let an external dApp revoke on your behalf, so it must be done in the wallet's account settings. If you do not understand the toggle, move the assets to a fresh wallet and retire the old address.

EIP-7702 batch-signature phishing appeared in August 2025, with a single case costing about $1.54 million and another about $146,0003.

How to read a wallet popup: five fields

Whatever the signature is called, find these five fields — they settle most of the risk in 30 seconds. Wallets lay them out differently, but the information is always somewhere; if you cannot find it, that wallet is not suitable for meaningful balances.

Field What to look for Red flag
Request type Connect, Sign, Approve, Permit, Authorization You wanted a login but see Approve or Authorization
spender / delegate Who receives the permission Unknown contract, freshly created address, plain EOA
Amount A specific number or unlimited unlimited, 2^256−1, max
Expiry deadline, expiration, validBefore 2106, max value, no expiry
Chain and contract Which chain, which contract Site says chain A, popup says chain B; contract does not match the official docs

The spender matters most. A small amount is not reassuring if the spender is malicious: it can use the allowance later. A known protocol, a limited amount and a short expiry is a much better combination.

2026 losses: three incidents that explain the pattern

Signature phishing has not disappeared; it has moved from broad campaigns to precision strikes. Three data points show where the signature layer now sits.

The first is full-year 2025: ScamSniffer recorded about $83.85 million in wallet-drainer losses across 106,106 victims, down roughly 83% from 2024. Yet about 38% of the 11 seven-figure incidents involved Permit/Permit2 signatures, with the largest single loss around $6.5 million (a Permit signature in September 2025)4. Total losses fell, but the big cases still cluster in the signature layer.

The second is January 2026: about $6.27 million lost across 4,741 victims, with two victims accounting for roughly 65% and the largest single loss of $3.02 million coming from a permit / increaseAllowance signature1.

The third is July 2026: a trader lost about $1 million to a forged Permit2 signature, and a VIRTUAL holder lost about $196,000 in the same category2. No protocol exploit, no zero-day — the victim simply signed something they did not understand.

All three point to one conclusion: attackers no longer need your seed phrase; they only need one signature. A seed-phrase leak is one-off and infrequent; signature phishing is available every day.

How to revoke, by signature type

Revocation starts with knowing what to revoke. Each type has a different path, and using the wrong tool creates false confidence.

Signature type How to revoke Key caveat
Wallet connect Disconnect on the site or clear site permissions in the wallet Disconnecting does not revoke existing approvals
personal_sign Nothing to revoke; it does not change state Still check whether you were tricked into signing an approval with that address
approve Revoke.cash or an approve-to-zero transaction Revoking costs gas; batch same-chain revocations
EIP-2612 permit Revoke the allowance An unsubmitted off-chain signature cannot be revoked
EIP-3009 Cannot be revoked Wait for validBefore; move remaining assets first
Permit2 master approval Revoke the token's allowance to Permit2 This closes every downstream sub-allowance
Permit2 SignatureTransfer No on-chain revocation Unsubmitted signatures are invisible; a new wallet is safest
Seaport order Cancel on the marketplace or send an on-chain cancellation Order signatures can be reused across markets
EIP-7702 Send another 0x04 transaction pointing to zero Storage and existing approvals are not cleared automatically

Suggested order: move remaining assets first, revoke second, investigate third. If you suspect the private key or seed phrase is compromised, revocation only limits the damage — create a fresh wallet on a clean device, move the assets and retire the old address.

The 30-second pre-signature check

These six steps do not require technical knowledge and block most signature phishing.

  1. Separate connect, transaction and signature. Connect moves nothing; a transaction costs gas; a signature stays off-chain but can be submitted by someone else.
  2. Read the request type. Words like Approve, Permit, Permit2, Authorization or SetCode mean high alert.
  3. Find the spender or delegate. Unknown, freshly created, or a plain wallet address: refuse.
  4. Check amount and expiry. unlimited or 2106 means assume everything can be taken.
  5. Match the chain and contract. Site says Ethereum, popup says BSC — close it.
  6. When unsure, do not sign. Close the tab and reopen the official site from a bookmark; if the official site has no such action, it was phishing.

The last step matters more than the first five: you are allowed to refuse a signature. No legitimate airdrop, login or campaign will cost you existing assets because you declined to sign.

Five common myths

Myth 1: A hardware wallet prevents signature phishing. It prevents remote private-key theft. If you confirm a Permit2 struct you do not understand, the device faithfully signs it.

Myth 2: Revoking makes you safe. Unsubmitted Permits, Permit2 SignatureTransfers and EIP-3009 signatures are not on-chain and cannot be seen by revocation tools. Revoking an EIP-7702 delegation leaves storage and old approvals in place.

Myth 3: Disconnecting equals revoking. Disconnecting stops the site from reading your address; existing allowances and permits remain valid.

Myth 4: Changing your password or device fixes it. The wallet password protects the local device. On-chain approvals and signatures are unaffected, and a new device with the same address carries the same risk.

Myth 5: Small wallets do not need attention. Address poisoning and EIP-7702 delegations wait for you to deposit. Attackers take control of the address first and sweep later. Small wallets still need approval and delegation checks.

💰 Binance referral bonus: invite code BINANBT

New users who enter invite code BINANBT at registration get a 20% trading-fee rebate that lasts for the life of the account. This article contains a referral link; we may receive a reward if you use it, and it costs you nothing extra.

  • Rebate: 20% of trading fees, ongoing — the more you trade, the more you save.
  • Welcome rewards: up to $19,800, unlocked through tasks, not paid as cash on registration.
  • How to claim: enter BINANBT in the invite-code field when you register. That is the most reliable method.
  • Important: registering directly in the app earns no new-user rewards. In-app registration does not attach any referral relationship, so the $19,800 welcome rewards and the 20% rebate will not apply — you must use the registration link or enter BINANBT.

👉 Sign up on Binance and claim the 20% fee rebate

FAQ

What is the difference between a wallet signature and a transfer?

A transfer is an on-chain transaction that costs gas and requires you to enter a recipient and amount. A signature is a local confirmation made with your private key; it does not go on-chain and costs no gas by itself, but anyone who holds it can submit it on-chain. That is the danger: with a transfer you at least see what you filled in, while with a signature many people only look for the confirm button. One malicious Permit2 signature can drain several tokens without ever showing a transfer screen.

How can I tell if a signature will move my funds?

Check three fields: who the spender or delegate is, whether the amount is unlimited, and how long the approval lasts. If the spender is a contract you do not recognize, or the amount shows unlimited with an expiry in 2106, treat it as a transfer of everything. A plain message signature usually cannot move funds by itself, but phishing sites disguise approvals as login requests, so refusing to sign what you cannot read is far more effective than revoking later.

What is the difference between Permit and Permit2?

Permit (EIP-2612) is a feature built into an individual token: you sign once and allow a spender to use a specific amount of that token. Permit2 is a separate contract layered on top of tokens: the token approves Permit2 once, and Permit2 then grants allowances to individual apps. A single Permit2 signature can cover multiple tokens and can authorize a one-off transfer, which makes it both an efficiency tool and a favorite entry point for drainers.

How is an EIP-7702 delegation different from a normal approval?

A normal approval only affects the allowance of one token. EIP-7702 delegates the execution rights of your entire address to a contract. After signing a malicious delegation, the attacker does not need another approval from you and can sweep assets every time you top up the wallet, including deposits made before you revoke. Check for type 0x04 transactions on the address or look at the Delegations tab in Revoke.cash.

Does a hardware wallet protect me from signature phishing?

Not completely. A hardware wallet keeps the private key offline and shows the signing payload on its own screen, but if the payload is a Permit2 struct you do not understand and you press confirm, the device faithfully signs the dangerous message. It protects against remote key theft, not against you authorizing something yourself.

Will a signature still work after I revoke approvals?

It depends on whether the signature was submitted on-chain. An approval that already landed can be revoked with another transaction. A signed but unsubmitted off-chain message is invisible to revocation tools and stays valid until its nonce is consumed or its deadline passes. Revoking an EIP-7702 delegation also does not clear storage or existing token approvals, which must be handled separately.

Should I sign to claim an unexpected airdrop?

No. Airdrop claim pages are the most common wrapping for signature phishing, especially pages that ask for approve, permit or setApprovalForAll. A genuine airdrop does not need permission to move your existing assets and should never request an unlimited allowance. If a claim page asks you to grant an unlimited allowance to an address you do not recognize, close it and verify the announcement on the project's official site and social accounts.

Further reading


Disclaimer: This article is for educational purposes only and is not investment, legal or tax advice. Signature formats, wallet interfaces and revocation paths may change as wallets and protocols upgrade; always follow the current pages of your wallet, browser and block explorer. Be highly skeptical of any "recovery" service that asks for a seed phrase, private key, verification code or upfront payment. Some jurisdictions restrict crypto services; check your local rules first.

Footnotes

  1. Source: ScamSniffer January 2026 signature-phishing report, cited by CoinEdition / Bitget News on 2026-02-09: about $6.27 million lost across 4,741 victims; losses up 207% month over month while victim count fell 11%; two victims accounted for roughly 65% of January losses; the largest single loss of $3.02 million came from a malicious permit / increaseAllowance signature. ↩ ↩2

  2. Source: Crypto Briefing, 2026-07-09: a trader lost about $1 million after signing a forged Uniswap Permit2 authorization, and a VIRTUAL holder lost about $196,000 in the same category; the report also notes roughly $84 million in wallet-drainer losses in 2025, down about 83% year over year. ↩ ↩2

  3. Source: EIP-7702 specification and ethereum.org's Pectra EIP-7702 guidance: delegation is written to the EOA code field as a 23-byte 0xef0100 plus a 20-byte contract address; transaction type 0x04 carries an authorization tuple [chain_id, address, nonce, y_parity, r, s]; a chain_id of 0 is valid on every EVM chain; revocation is another 0x04 transaction pointing to the zero address; EIP-7702 batch-signature phishing surfaced in August 2025 with a single case around $1.54 million and another around $146,000. ↩ ↩2

  4. Source: ScamSniffer 2025 wallet-drainer report (published January 2026): about $83.85 million lost across 106,106 victims, down roughly 83% from about $494 million in 2024; about 38% of the 11 seven-figure incidents involved Permit/Permit2 signatures, with the largest single loss around $6.5 million (a Permit signature in September 2025). ↩

#wallet signatures #signature phishing #EIP-712 #Permit #Permit2 #EIP-7702 #revoke approvals #wallet security #Web3 security

About the author

CoinVado Research

CoinVado Research

CoinVado Research is the digital asset research team of CoinVado, focusing on cryptocurrency education, blockchain technology普及, and Web3 ecosystem research.

Research directions
  • Cryptocurrency basics
  • Digital asset investment education
  • Blockchain technology and applications
  • Web3 ecosystem development
  • On-chain assets and wallet security

If you find errors or have suggestions, contact us via Telegram

Buying USDT / Sign-up / Withdrawals?

Join our Discord community for quick crypto help

Join Discord