Caloogy Article
中文

Out-of-Band Verification: Why "Page and Wallet Match" Is Not Enough

Date
Mar 24, 2026
Series
Wallet
Reading
5 min
Topics
Out of bandVerificationBecSocial engineering

The one-sentence version

Users are often taught to "verify that the address on the webpage matches the address in the wallet popup before signing." However, if the webpage has been tampered with, an attacker will make both sides display their address, rendering the consistency check meaningless. Truly reliable verification must use another channel: calling the person to ask, scanning a QR code in person, or using a different device to view the information. As long as the attacker cannot control both channels simultaneously, they cannot make both sides lie. This is called out-of-band verification.

This article has three layers:

  1. Layer 1: The Intuition: You cannot use a phone number provided by a scammer to verify that same scammer.
  2. Layer 2: Real-World Use: Business Email Compromise (BEC), bank callbacks, Signal safety numbers, and hardware wallets.
  3. Layer 3: Channel independence, what to verify, and how to guide users in product design.

Layer 1: The Intuition

1.1 Verifying a scammer with the scammer's own number

A finance employee receives an email from a "supplier": "We have changed our bank account; please send future payments to this new account." The email ends with: "If you have any questions, please call xxx to verify."

The finance employee is cautious and calls the number. The person on the other end confirms the details. The payment is made.

The problem is: The phone number was provided by the scammer within the same email. The information being verified and the information being used for verification come from the same channel. Since the attacker controls this channel, they control both the "question" and the "answer."

The correct approach is: Use a phone number that you already had and was not provided by this email to call the supplier.

1.2 Why the webpage and wallet are not two separate channels

What you think The reality
The webpage shows one address, the wallet popup shows an address, and both match The address in the wallet popup is what the webpage passed to the wallet. If the webpage is tampered with, the wallet displays the tampered address.

A wallet can guarantee that "what you are signing is what is displayed in the popup," but it cannot guarantee that "what is displayed in the popup is what you actually intended."


Layer 2: Real-World Use


Layer 3: Principles and Engineering

3.1 Channel Independence

The standard for two channels being "independent" is: If an attacker breaches one, they do not automatically breach the other.

Combination Is it independent?
Email + Phone number provided in that email No
Webpage + Wallet popup triggered by that webpage No
Computer webpage + Another app on a mobile phone Mostly (unless both devices are compromised simultaneously)
Computer + Hardware wallet screen Yes (provided the hardware wallet can fully decode)
Online messages + In-person or phone call Yes

3.2 What to verify

3.3 Guiding users in product design

A product cannot perform out-of-band verification for the user, but it can:

3.4 Relationship with other lines of defense

Defense What it prevents What it fails to prevent
Page integrity monitoring Long-term webpage tampering Tampering during the monitoring gap
Wallet popup verification User misreading the page Webpage tampering
Out-of-band verification Webpage tampering, email spoofing, MITM User negligence/laziness

Out-of-band verification is the final and most human-dependent line of defense. It has the highest cost, so it should only be required at the most critical moments, consistent with the logic of risk control scoring and friction design.


Summary

Layer Key points
Intuition You cannot use a phone number provided by a scammer to verify that same scammer
Essence Verification must use an independent channel that the attacker cannot control
Application BEC callbacks, bank verification, safety numbers, hardware wallet screens
Product Prompts at critical moments, explaining the reason, providing small-amount test transfer alternatives