Detecting seed phrase theft with canary tokens
Your seed phrase was stolen 3 months ago. You just don't know it yet. Here's how canary tokens give you an early warning before funds move.
Your seed phrase was stolen three months ago. The attacker found it in a backup file on a compromised NAS. They have not moved your funds yet — they are waiting, watching your wallet grow, timing the sweep for maximum return.
You have no idea any of this has happened.
This is the reality for most crypto holders who get breached. There is no notification, no failed login alert, no suspicious activity email from a bank's fraud department. The first sign of compromise is an empty wallet.
Canary tokens change that equation entirely.
The seed phrase problem
A BIP39 seed phrase is 12 or 24 words that control everything — every address, every chain, every token derived from that master key. Unlike a password, there is no "reset" option. If someone has your seed phrase, they have your funds.
The security model most people follow looks like this:
- Generate a seed phrase
- Write it down or store it digitally
- Hope nobody ever finds it
Step 3 is not a security strategy. It is wishful thinking.
The reality is that seed phrases end up in more places than people realize:
- Password managers that sync across devices (and get breached)
- Cloud backups of phones and laptops (iCloud, Google Drive)
- Text files on encrypted drives (that get decrypted when mounted)
- Screenshots in photo libraries (that sync to cloud services)
- Clipboard history on machines running clipboard managers
- Printer spool files from when you printed that "paper wallet"
Each of these is an attack surface. And the attacker only needs to find one copy.
How canary seed phrases work
A canary seed phrase is a real, valid BIP39 mnemonic — one that derives real addresses on real blockchains. The difference is that you control it, you expect nobody to use it, and you are monitoring every address it generates.
Here is the detection logic:
- Generate a valid 12 or 24-word BIP39 mnemonic
- Derive addresses for Bitcoin, Ethereum, Solana, and other chains
- Fund one or more addresses with a trivial amount (dust)
- Monitor all derived addresses for any transaction activity
- Alert instantly when any address receives or sends a transaction
If an attacker finds your canary seed phrase and imports it into any wallet — MetaMask, Phantom, Electrum, Trust Wallet — the wallet will scan the blockchain for balances. Even viewing the balance requires no on-chain activity, but the moment they try to move funds or the wallet auto-discovers addresses, you have a detection event.
More importantly, sophisticated attackers will test a stolen seed phrase before acting on a real one. They sweep the canary, you get the alert, and now you have time to rotate your actual keys before they get to the real target.
Where to plant canary seed phrases
The key principle is plausible placement — the canary must look like a real secret that ended up somewhere it should not have.
In your secrets vault
Store the canary seed phrase in the same password manager or vault where you keep real credentials. Label it something convincing:
btc-cold-storage-2024hardware-wallet-backup-recoveryledger-nano-seed-phrase
If your vault is ever exported, leaked, or accessed by a rogue employee, the canary fires.
In backup files
Create a file named wallet-backup.txt or recovery-phrase.enc and include the canary seed phrase. Place it in:
- NAS backup folders
- Cloud storage (encrypted zip with a guessable password)
- USB drives stored in a safe
- Time Machine / backup volumes
In code repositories
Developers sometimes accidentally commit secrets. Create a .env.local file in a private repo with a line like:
WALLET_MNEMONIC="abandon abandon abandon ... about"
If the repo is ever cloned by an unauthorized party, or if the repo accidentally goes public, the canary fires the moment someone tries to use that mnemonic.
In documents and notes
A file named crypto-notes.md in your Documents folder, containing what looks like a real seed phrase alongside fake portfolio notes, is an excellent trap for attackers who gain file system access.
The detection timeline advantage
Without canary tokens, the timeline looks like this:
Day 0: Attacker compromises your backup
Day 1-90: Attacker extracts seed phrase, waits
Day 91: Attacker sweeps wallet
Day 91: You discover empty wallet
Day 91: Nothing you can do
With a canary seed phrase:
Day 0: Attacker compromises your backup
Day 1: Attacker tests canary seed phrase
Day 1: You receive alert: "Canary triggered"
Day 1: You rotate all real keys
Day 91: Attacker tries to sweep — finds empty wallets
That early warning window is the entire value proposition. It turns a catastrophic loss into a controlled incident response.
Multi-chain monitoring
A single BIP39 seed phrase derives keys for multiple blockchains through different derivation paths. Effective monitoring covers all of them:
| Chain | Derivation Path | What to Monitor | |-------|----------------|-----------------| | Bitcoin | m/84'/0'/0' | Any UTXO activity | | Ethereum | m/44'/60'/0' | ETH + ERC-20 transfers | | Solana | m/44'/501'/0' | SOL + SPL token activity | | Polygon | m/44'/60'/0' | MATIC + token transfers |
An attacker who finds a seed phrase will typically check the most common chains first. Monitoring all derivation paths maximizes your detection surface.
Beyond seed phrases: other crypto canaries
The canary token concept extends to other crypto-specific attack surfaces:
Exchange API keys: Generate a read-only API key for a fake exchange account. Plant it in a config file. If anyone uses it, the exchange logs the access and your canary fires.
Wallet connect URIs: A WalletConnect session URI that alerts when scanned. Useful for detecting QR code theft from screenshots.
RPC endpoint tokens: A fake Alchemy or Infura API key embedded in a .env file. When someone uses it to query the blockchain, you know.
Smart contract deployer keys: A private key that has deployed a contract with an alerting mechanism. If someone uses the deployer key, the contract event fires.
Getting started
You do not need to build any of this yourself. CanaryGuard ships ETH and SOL wallet canaries today — real keypairs that alert the moment any transaction touches them on-chain. Full BIP39 seed-phrase tokens (multi-chain derivation across a single mnemonic) are next on the Phase 3 roadmap; in the meantime you can deploy an ETH wallet and a SOL wallet per backup location for the same coverage on the two highest-value chains.
Alerts land in Slack, Discord, email, or custom webhooks, chain-aware with Etherscan/Solscan links on the tx.
- Sign up at canaryguard.app
- Create an ETH or SOL wallet canary (Team plan or higher)
- Plant the address or private key in your backup locations
- Configure your alert channel
- Wait — and hope it never fires
The setup takes two minutes. The protection lasts until you rotate the canary.
If you are holding any meaningful amount of crypto, the question is not whether you can afford to deploy canary tokens. It is whether you can afford not to.
Ready to protect yourself?
Deploy your first canary token in under 2 minutes. Free forever for up to 5 tokens.
Get Started Free