imtoken will never ask for your seed phrase, private key or verification code. Always review the address, network and request details before transferring, signing or approving.
imtoken Knowledge & Product Center

Web3 & DApps

Follow wallet-to-DApp interaction from connection and account requests to signatures, approvals and disconnection, with attention to permission changes.

Start with the basics →

Understand DApp connections and account requests first

Many mistakes around “Understand DApp connections and account requests first” come from treating different actions as if they were equivalent. Web3 & DApps may involve viewing information, signing a message, approving a contract, or broadcasting a transaction. Follow wallet-to-DApp interaction from connection and account requests to signatures, approvals and disconnection, with attention to permission changes. Identify what “Identify the real DApp connections context” refers to, define the scope of “Distinguish account requests from look-alike labels”, and decide whether “Do not skip the message signing check” can change on-chain state.A knowledge page should connect terms to observable on-chain evidence such as network state, transaction records, block confirmations, or contract permissions rather than leaving the concepts as abstract definitions.

This distinction matters in multi-chain and Web3 use. The same address format does not prove that two networks share state, a token name does not identify a unique contract, and connecting a wallet does not automatically approve later signatures. Treat every new request as a separate decision and proceed only when it matches the action you intended to perform. In Web3 & DApps, this check belongs specifically to “Understand DApp connections and account requests first”, so the conclusion should remain tied to the account, network, target, and permission discussed on this page rather than being copied from another workflow.

  • Identify the real DApp connections context
  • Distinguish account requests from look-alike labels
  • Do not skip the message signing check

Check message signing before you begin

The fastest way to make “Check message signing before you begin” practical is to place it inside a real task. For Web3 & DApps, define the objective first, review “Define the intended task first”, then inspect “Confirm that message signing matches the plan”, and make “Cancel when the request looks unexpected” the final pre-submit check. Follow wallet-to-DApp interaction from connection and account requests to signatures, approvals and disconnection, with attention to permission changes. This sequence reduces mistakes caused by switching networks, accounts, or applications halfway through a workflow.

When a third-party DApp, smart contract, bridge, or service is involved, verify the domain source, contract target, and requested permission separately. Previous connections, messages from friends, and familiar visual design are not substitutes for those checks. On-chain transactions are generally not reversible by a wallet provider, so careful review before submission matters more than trying to repair an avoidable mistake afterward.A knowledge page should connect terms to observable on-chain evidence such as network state, transaction records, block confirmations, or contract permissions rather than leaving the concepts as abstract definitions. In Web3 & DApps, this check belongs specifically to “Check message signing before you begin”, so the conclusion should remain tied to the account, network, target, and permission discussed on this page rather than being copied from another workflow.

  • Define the intended task first
  • Confirm that message signing matches the plan
  • Cancel when the request looks unexpected

Review transaction signing during the action

Think of “Review transaction signing during the action” as a set of boundary conditions rather than a single feature. Follow wallet-to-DApp interaction from connection and account requests to signatures, approvals and disconnection, with attention to permission changes. For Web3 & DApps, determine whether “Review transaction signing as its own decision” fits the current context, what “Read the on-chain details shown by the wallet” changes, and whether “Do not rely on button text alone” introduces additional fees, permissions, or waiting time.A knowledge page should connect terms to observable on-chain evidence such as network state, transaction records, block confirmations, or contract permissions rather than leaving the concepts as abstract definitions.

When several conditions are present, review the source, network, account, target, fee, and permission one by one. Any unexplained item is a valid reason to stop. For unfamiliar or higher-risk activity, reading the rules and verifying public data before attempting a smaller test can reveal configuration problems before they become expensive. In Web3 & DApps, this check belongs specifically to “Review transaction signing during the action”, so the conclusion should remain tied to the account, network, target, and permission discussed on this page rather than being copied from another workflow.

  • Review transaction signing as its own decision
  • Read the on-chain details shown by the wallet
  • Do not rely on button text alone

Common mistakes and risks in Web3 & DApps

Before acting on “Common mistakes and risks in Web3 & DApps”, separate public diagnostic information from private control information. Follow wallet-to-DApp interaction from connection and account requests to signatures, approvals and disconnection, with attention to permission changes. “Connection is not the same as signing or approval”, “Reject any request for a seed phrase or private key”, and “Treat unfamiliar third-party services cautiously” can usually be understood through interface state or public blockchain data, while seed phrases, private keys, recovery phrases, and verification codes control access and should never be used as proof that a transaction or network is working.

For troubleshooting, use the network name, public address, transaction hash, contract address, and exact error message when appropriate. Official staff should not request a seed phrase or private key, and a legitimate support flow should not require recovery information to be entered into a website. Keeping that boundary clear allows useful investigation without giving away account control.A knowledge page should connect terms to observable on-chain evidence such as network state, transaction records, block confirmations, or contract permissions rather than leaving the concepts as abstract definitions. In Web3 & DApps, this check belongs specifically to “Common mistakes and risks in Web3 & DApps”, so the conclusion should remain tied to the account, network, target, and permission discussed on this page rather than being copied from another workflow.

  • Connection is not the same as signing or approval
  • Reject any request for a seed phrase or private key
  • Treat unfamiliar third-party services cautiously

Use token approvals to verify the result

“Use token approvals to verify the result” becomes clearer when it is reviewed across three stages: before, during, and after an action. Confirm “Verify with token approvals or other public data” before starting, watch “Confirm the network and public address” while the request is active, and use “Remove permissions that are no longer needed” to verify the result afterward. Follow wallet-to-DApp interaction from connection and account requests to signatures, approvals and disconnection, with attention to permission changes. Skipping one of these stages can leave network mistakes, duplicate submissions, or persistent permissions unnoticed.A knowledge page should connect terms to observable on-chain evidence such as network state, transaction records, block confirmations, or contract permissions rather than leaving the concepts as abstract definitions.

Turn the same checks into routine maintenance: re-check the network after switching, confirm the address and amount before sending, read every signature request, record why an approval exists, and periodically remove permissions that are no longer needed. Security is the accumulation of these small controls rather than a single switch that makes every future request trustworthy. In Web3 & DApps, this check belongs specifically to “Use token approvals to verify the result”, so the conclusion should remain tied to the account, network, target, and permission discussed on this page rather than being copied from another workflow.

  • Verify with token approvals or other public data
  • Confirm the network and public address
  • Remove permissions that are no longer needed

Practical checklist

  • Never enter a seed phrase, private key or recovery phrase into a website
  • Official staff will not ask for your seed phrase, private key or verification code
  • Check the address, network and amount before transferring
  • Review every DApp signature request separately
  • Review and revoke permissions you no longer need