Module 1 / 2
Wallets – hot vs cold, multisig, operational security
In crypto there is no complaints department. If you sign a malicious transaction, send funds to the wrong chain or expose your seed, the transaction is irreversible. Most losses do not come from "Hollywood hackers" but from basic operational errors: phishing, unlimited...
- Author
- Zordon Intelligence Sp. z o.o.
- Updated
- 8 min read
- Structure sources
- 2
Introduction
In crypto there is no complaints department. If you sign a malicious transaction, send funds to the wrong chain or expose your seed, the transaction is irreversible. Most losses do not come from “Hollywood hackers” but from basic operational errors: phishing, unlimited approvals, one wallet for everything.
This lesson is the operational security (OPSEC) standard for a DeFi trader. You will learn to tell wallets apart, design a 3-wallet architecture, use multisig and verify transactions before you sign them. This is not paranoia – it is a procedure like a stop loss.
Wallet taxonomy
| Type | Examples | Where are the keys? | Connected to the net? | Purpose |
|---|---|---|---|---|
| Hot wallet – browser | Rabby, MetaMask, Phantom | Encrypted on disk / in the extension | Yes | Interacting with dapps, small amounts |
| Hot wallet – mobile | Rabby mobile, Phantom, Trust | Phone secure enclave | Yes | At hand, small amounts |
| Cold – hardware | Ledger, Trezor, Keystone | In the SE chip, never leaves it | No (offline signing) | Vault, staking, large holdings |
| Multisig | Safe (formerly Gnosis Safe) | Distributed, e.g. 2 of 3 keys, some on HW | Logic in the contract | Team treasury, your own treasury |
| MPC | Fireblocks, some CEXs | Key split into shares | Partly | Institutions |
The rule: hot for interaction, cold for storage. Never the other way round.
The 3-wallet architecture – the KursTradera standard
Do not keep everything in one MetaMask that you also use to farm airdrops.
Wallet A – Vault (cold, hardware):
- 70-80% of long-term capital.
- Zero interaction with new dapps. Only staking through the official interface + sending to Wallet B.
- Steel seed backup, never entered digitally. 2 copies in different locations.
- Connected only through Rabby/MetaMask as watch-only, for signing.
Wallet B – Operating (hot, Rabby – the main one):
- 15-25% of capital in dapps with an established reputation (Uniswap, Aave, Lido).
- Approval limit – you grant an approval only for the transaction amount, not unlimited.
- Separate for each major narrative (e.g. one for ETH mainnet, another for L2) if you want to limit the blast radius.
Wallet C – Burner / Airdrop (hot, a new seed every quarter):
- 1-5% of capital, for tests, mints, new chains.
- You assume it will be drained. You regularly migrate funds to B.
- Never send from the Vault straight to the Burner – always through B or a new intermediate address.
Flow:
Vault (cold) -> B (operating, verified dapps) -> C (burner)
Never: C -> Vault (you contaminate your anonymity and your security)
Seed, private key, passphrase – what you are really protecting
- Seed (12/24 words): The master key. Whoever has it owns everything on every chain.
- Private key: A derivative of the seed for one specific address. Exposing one key = losing that address, but the seed still compromises the rest.
- Passphrase (25th word, BIP39): An extra word that creates a hidden wallet. It works as 2FA. If you lose the passphrase, even with the seed you will not recover the funds. If someone steals the seed without the passphrase, they will not recover the hidden wallet.
Procedure:
- Generate the seed offline on a hardware wallet, not on a website.
- Write it down by hand, 2 copies on steel plates (Cryptosteel/Titanium). Never a photo, never the cloud, never Notepad.
- Test the recovery on a second device before you send larger funds.
- Consider a passphrase for the Vault – store it separately from the seed.
Approvals, permit and transactions – where the money disappears
The most common cause of a drain: an unlimited ERC20 approval.
When you give a DEX an approval for USDC, you tell the contract: “you can spend any amount of my USDC until I revoke it”. If the DEX contract is hacked or swapped for a phishing one, it can clear out the USDC.
How to defend yourself:
- Use Rabby – before you sign it shows what you are actually signing: an approval, a permit or a transfer.
- Grant the approval for the transaction amount, not unlimited (Uniswap lets you set a custom limit).
- Regularly clear approvals: Revoke.cash, Rabby Approval Center.
- Tell the difference:
| Signature type | What it does | Risk |
|---|---|---|
eth_sendTransaction | Sends an on-chain transaction, you pay gas | Executable, check the contract address |
eth_sign, personal_sign | Off-chain message signature (login, listing) | Usually low, but a phishing message can be a decoy |
eth_signTypedData (Permit) | Grants permission to spend a token with a signature, without a transaction | High – it is like an approval, but with no gas |
setApprovalForAll | For NFTs – access to every NFT in a collection | Very high – one signature = all the NFTs |
The rule: if a dapp asks for setApprovalForAll for NFTs and it is not OpenSea/Blur, do not sign it from a wallet holding expensive NFTs.
Checklist before signing (mandatory)
1. Is the URL the official domain? (check the project's Twitter, not Google Ads)
2. Does Rabby/MetaMask show the correct contract and network?
3. Is this an unlimited approval? If so -> change it to a limit or use the Burner
4. Is the function called "Claim" but the contract wants "TransferFrom" on every token? -> SCAM
5. Is the gas amount absurd (e.g. 1 ETH gas for a claim)? -> often a hidden transfer
Multisig – Safe
Safe (safe.global) is a contract that requires M of N signatures.
Example: your Vault as a 2/3 multisig:
- Key 1: Ledger at home
- Key 2: Trezor in a bank safe deposit box / at family
- Key 3: Keystone or paper in a safe
To send funds you need a signature from 2 of the 3 devices. Stealing one does not end in a loss. Losing one does not block the funds.
Multisig is also the standard for DeFi projects – if a project keeps its treasury on an EOA (an ordinary wallet) rather than on a multisig with a timelock, that is a red flag.
Uses:
- Your personal treasury >$25k
- Any shared management of capital
- Storing seeds for a company – key 3 with a lawyer
Phishing – vector #1
Attacks do not break cryptography. They break your process.
The most common scenarios:
- Fake airdrop: DMs on Discord/Telegram “You are eligible, click here”. A domain with a typo.
- Fake update: “You must restart MetaMask”. Never enter your seed in a browser.
- Drainers as Google ads: a sponsored “Uniswap” result leads to
uniswaρ.com. - Clipboard swap: malware replaces the copied address with the attacker’s address. Always check the first 4 and last 4 characters of the destination address.
Mitigation:
- Bookmarks: all dapps in favourites – enter only from bookmarks.
- Rabby + Wallet Guard / Pocket Universe simulates the transaction.
- A separate browser for crypto only (e.g. a Brave profile), with no random extensions.
- DNS: use an extension that warns you about a new domain (<30 days).
When the plan says do not trade
- When you have only one wallet for everything. With no Vault / Operating / Burner split – one bad transaction = losing everything. Architecture first, trading second.
- When a dapp asks for an unlimited approval and you have no time to check what you are signing. No time = no trade. Use a Burner with a small amount.
- When you are four hours into clicking airdrops and you are tired. Tiredness = no checklist = signing a drain. Every farming session ends with a revoke and closing the browser.
- When the seed has ever been in a clipboard, a photo, the cloud, Discord. Treat the wallet as compromised. Create a new Vault.
- When a hardware wallet tells you to update the firmware from a link in an email. Update only from the official Ledger Live / Trezor Suite. Never from a link. If you have doubts – do not update on a trading day.
The mistakes that cost the most
- One seed for 20 wallets in MetaMask with no hardware. One hole and every account falls.
- Keeping all your capital in a hot wallet “because it is more convenient”. Convenience costs 100% when you get drained.
- Copying the seed into 1Password/Notion/Gmail as a “backup”. That is not a backup. That is exposing the key to the internet.
- No $1 test transaction before sending $10k to a new chain. Wrong networks, memo, chain ID – a $1 test saves capital.
- Ignoring approvals after farming. After an airdrop campaign you have 30 unlimited approvals to suspicious contracts. Those are ticking bombs. Clear them every week.
Measurable exercise
OPSEC audit – 60 minutes once a month:
- Open Rabby Approval Center + Revoke.cash for every wallet. Record the number of active unlimited approvals.
| Wallet | Network | Number of unlimited ERC20 | Number of setApprovalForAll NFT | Date of the last clean-up | Clean-up plan |
|---|
- Target: 0 unlimited on the Vault, <5 on Operating, any number on the Burner, but cleared every 14 days.
- Run a Vault recovery test on a second device (without wiping the first) – does the seed + passphrase work?
- Simulate phishing: send yourself a fake link and check whether the bookmark procedure protects you.
- Write down the inheritance procedure: what should the family do if you lose access? Where is the seed, where are the instructions? Without it the vault becomes a furnace.
Metrics:
Number of unlimited approvals: 0 in the Vault = PASS
Time to recover the wallet from the seed: <15 min = PASS
$1 test transaction before every transfer >$1000: 100% = PASS
Check yourself
- How does a seed differ from a private key and why is the seed critical?
- Describe the 3-wallet architecture and the flow of funds.
- What is a permit and why is it more dangerous than an ordinary signature?
- When does a Safe 2/3 protect you, and when is it not enough?
- How do you check whether you are signing an unlimited or a limited approval?
Frequently asked questions
Ledger or Trezor? Both are better than hot. Ledger has a Secure Element, Trezor is 100% open source. For the Vault consider both (manufacturer diversification). The most important thing is to buy from the official store, not from a marketplace like Allegro.
Is Rabby safer than MetaMask? Rabby has better transaction simulation, shows an approval breakdown and warns about phishing. That does not mean MetaMask is bad – but in multi-chain farming Rabby reduces operational errors.
Is keeping the seed in a bank a good idea? Yes, as one of the copies, in steel form. Not paper in an envelope – paper degrades. A bank safe deposit box protects against home theft, but not against institutional inflation – hence the second copy in another location.
What if a project asks me to sign a message to get an airdrop? An off-chain message signature (personal_sign) is usually safe – it does not send a transaction. But if the message contains strange hexadecimal data and Rabby shows “Permit” – do not sign. A message signature can also be abused for ownership verification, but not for transferring funds, as long as it is not typed data permit.
Can I use the same address on many L2s? Yes, the same EVM address works on many L2s (the same keys). That is convenient, but it links your activity. If you want to separate identities (e.g. airdrop farming 20 accounts), use different addresses and avoid funding them from a single source – the chain sees it.
Advertisement
Key takeaways
- In crypto there is no complaints department. If you sign a malicious transaction, send funds to the wrong chain or expose your seed, the transaction is irreversible. Most losses do not come from "Hollywood hackers" but from basic operational errors: phishing, unlimited...
Structure sources
The material is based on source documents. Variable values — fees, limits, regulatory figures — are worth checking at the source before making a decision.
- Glassnode / Nansen — on-chain analytics
- Binance Research — cryptocurrency reports
Disclaimer
- Educational material. Not investment advice or a recommendation. Trading involves the risk of losing capital.
- The materials are educational. They are not investment advice or a recommendation within the meaning of financial instruments trading regulations. Numbers in examples are illustrative unless a measurement date and source are given.
Who writes this and how we check it
The materials are written and verified by Redakcja Kurs Tradera — the rules are described on about the site: every number has a source, and we show gaps openly. Report a factual error via contact — corrections are described in the content.
Progress is stored only in this browser (localStorage) — there is no account and no copy on the server. Clearing site data will remove it. Manage your data