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.

Blockchain Knowledge

Web3 and DApps: From Connection to Approval

Safe Web3 use is not defined by a successful connection. Understand the separate consequences of domains, account requests, message signatures, transaction signatures, token approvals and smart contracts.

On this page
Verify the source before visiting a DAppA connection only establishes a sessionRead signatures and transactions separatelyApprovals and disconnection

Verify the source before visiting a DApp

Check domain spelling, navigation source and page purpose rather than entering high-permission flows from unfamiliar direct messages, fake airdrops or suspicious ads. A Web3 connection lets a site request accounts, signatures or transactions, but being connected never means every later request should automatically be trusted or approved. For “Verify the source before visiting a DApp,” first identify whether the relevant fact belongs to the local wallet interface, the selected network, or a contract permission. That distinction prevents an interface message from being mistaken for a final on-chain result.

Before confirming, review the domain, account, network, contract or recipient and any approval amount. If the purpose of the request cannot be explained, declining it is safer than treating connection as ongoing consent. In the context of “Verify the source before visiting a DApp,” use a consistent order: establish the account and network, inspect the specific address, contract or request parameters, and only then authorize an action that can move assets or create permissions. Before confirming, review the domain, account, network, contract or recipient and any approval amount. If the purpose of the request cannot be explained, declining it is safer than treating connection as ongoing consent.

Within “Verify the source before visiting a DApp,” a connection is only a session and does not pre-authorize asset actions. A message signature may prove account control, a transaction signature can change on-chain state, and a token approval can create persistent contract permissions; each deserves its own review.

  • Verify the DApp domain and request source
  • Distinguish connection, signing, transactions and approvals
  • Inspect the contract or spender and permission scope
  • Disconnect and review permissions when no longer needed

A pre-confirmation review

If “Verify the source before visiting a DApp” behaves differently from expected, record the active network, account, requester and any transaction hash, then eliminate possible causes one at a time. Do not keep signing, approving or sending assets merely to repair an issue that has not yet been identified.

A connection only establishes a session

Wallet connection generally creates an interaction session between an account and DApp; it does not hand over the private key and does not make every later request trustworthy. A Web3 connection lets a site request accounts, signatures or transactions, but being connected never means every later request should automatically be trusted or approved. For “A connection only establishes a session,” first identify whether the relevant fact belongs to the local wallet interface, the selected network, or a contract permission. That distinction prevents an interface message from being mistaken for a final on-chain result.

When an interaction is finished, disconnect sessions that are no longer useful and review persistent approvals periodically. Revoking an old approval cannot undo a past transaction, but it can remove an unnecessary future permission. In the context of “A connection only establishes a session,” use a consistent order: establish the account and network, inspect the specific address, contract or request parameters, and only then authorize an action that can move assets or create permissions. When an interaction is finished, disconnect sessions that are no longer useful and review persistent approvals periodically. Revoking an old approval cannot undo a past transaction, but it can remove an unnecessary future permission.

Within “A connection only establishes a session,” a connection is only a session and does not pre-authorize asset actions. A message signature may prove account control, a transaction signature can change on-chain state, and a token approval can create persistent contract permissions; each deserves its own review.

  • Verify the DApp domain and request source
  • Distinguish connection, signing, transactions and approvals
  • Inspect the contract or spender and permission scope
  • Disconnect and review permissions when no longer needed

Building the check into routine use

If “A connection only establishes a session” behaves differently from expected, record the active network, account, requester and any transaction hash, then eliminate possible causes one at a time. Do not keep signing, approving or sending assets merely to repair an issue that has not yet been identified.

Read signatures and transactions separately

A message signature can support login or proof, while a transaction signature can initiate an on-chain action; both require review of content, network, requester and intended result. A Web3 connection lets a site request accounts, signatures or transactions, but being connected never means every later request should automatically be trusted or approved. For “Read signatures and transactions separately,” first identify whether the relevant fact belongs to the local wallet interface, the selected network, or a contract permission. That distinction prevents an interface message from being mistaken for a final on-chain result.

Before confirming, review the domain, account, network, contract or recipient and any approval amount. If the purpose of the request cannot be explained, declining it is safer than treating connection as ongoing consent. In the context of “Read signatures and transactions separately,” use a consistent order: establish the account and network, inspect the specific address, contract or request parameters, and only then authorize an action that can move assets or create permissions. Before confirming, review the domain, account, network, contract or recipient and any approval amount. If the purpose of the request cannot be explained, declining it is safer than treating connection as ongoing consent.

Within “Read signatures and transactions separately,” a connection is only a session and does not pre-authorize asset actions. A message signature may prove account control, a transaction signature can change on-chain state, and a token approval can create persistent contract permissions; each deserves its own review.

  • Verify the DApp domain and request source
  • Distinguish connection, signing, transactions and approvals
  • Inspect the contract or spender and permission scope
  • Disconnect and review permissions when no longer needed

A pre-confirmation review

If “Read signatures and transactions separately” behaves differently from expected, record the active network, account, requester and any transaction hash, then eliminate possible causes one at a time. Do not keep signing, approving or sending assets merely to repair an issue that has not yet been identified.

Approvals and disconnection

Token approvals can persist on-chain, and disconnecting the DApp interface may not revoke them, so unused permissions need a separate review. A Web3 connection lets a site request accounts, signatures or transactions, but being connected never means every later request should automatically be trusted or approved. For “Approvals and disconnection,” first identify whether the relevant fact belongs to the local wallet interface, the selected network, or a contract permission. That distinction prevents an interface message from being mistaken for a final on-chain result.

When an interaction is finished, disconnect sessions that are no longer useful and review persistent approvals periodically. Revoking an old approval cannot undo a past transaction, but it can remove an unnecessary future permission. In the context of “Approvals and disconnection,” use a consistent order: establish the account and network, inspect the specific address, contract or request parameters, and only then authorize an action that can move assets or create permissions. When an interaction is finished, disconnect sessions that are no longer useful and review persistent approvals periodically. Revoking an old approval cannot undo a past transaction, but it can remove an unnecessary future permission.

Within “Approvals and disconnection,” a connection is only a session and does not pre-authorize asset actions. A message signature may prove account control, a transaction signature can change on-chain state, and a token approval can create persistent contract permissions; each deserves its own review.

  • Verify the DApp domain and request source
  • Distinguish connection, signing, transactions and approvals
  • Inspect the contract or spender and permission scope
  • Disconnect and review permissions when no longer needed

A pre-confirmation review

If “Approvals and disconnection” behaves differently from expected, record the active network, account, requester and any transaction hash, then eliminate possible causes one at a time. Do not keep signing, approving or sending assets merely to repair an issue that has not yet been identified.