Okay, grab BlueWallet on your phone. Set up a watch only wallet with a zpub from your air gapped seed wallet. Why? It's dead simple, and QR scanning keeps everything air gapped without fumbling drives. I usually do this for small sends - scan, sign, done. Super short process too.
Build the tx on the watch only app. It spits out a QR. Hop to your offline phone with the full seed wallet, hit send > top options > sign transaction. Scan that QR. Boom, signed tx QR ready. Scan it back on the online one to broadcast. That's it. No internet touches your keys. Ever.
What's the catch? Make sure your watch only is funded right - wrong UTXOs and you're stuck. Test with dust first, like 0.0001 BTC.
Look, your hot wallet's a sitting duck. Malware sniffs keys like candy. Offline signing? Private keys never see the net. Period. In my experience, one bad browser extension and poof - funds gone. This way, you build tx online (gets nonce, fees right), sign cold, broadcast. Hackers rage.
Fees matter too. Bitcoin gas? Nah, it's feerate - aim 1-5 sat/vB for cheap, like 0.000005 BTC total on a basic send. Ethereum's gwei, say 20 gwei base now, but spikes. Wrong guess? Tx stuck forever. Online build handles that auto.
Issue? Nonce wrong if delayed. Check with whatsonchain or whatever. Rescan. And yeah, Electrum's cold storage mode - set it up with --offline flag. Keeps it dumb and safe.
So Ethereum's trickier - nonce and gas gotta be spot on. Use EthOffline tool. Download from ethjs.github.io/offline, chuck on SD card to air gapped machine. No net there, obviously.
First, online: Grab your nonce (etherscan.io, account page). Gas? 21k for basic ETH send, more for contracts - say 50k if multisig. Value in wei, like 1 ETH = 10^18 wei.
Old EthOffline skips EIP155. Replay risk on ETC forks. Use MyEtherWallet offline or hardware now. But hey, for learning? Solid.
In my experience, gas too low? Stuck tx. Use ethgasstation for estimates - 10-20 gwei normal, fee ~0.0005 ETH.
Honestly, if you're not air gapped PC obsessed, hardware's king. Ledger stores keys in Secure Element chip. Offline always. Connect to online PC/phone, it shows tx deets on screen. Verify amount, address. Press button to sign. Boom, signed data back to app. App broadcasts.
No privkeys leave device. Ever. USB/NFC only serialized tx data. I use this daily - Keystone or Coldcard for BTC, Ledger for ETH/DeFi. Fees? App suggests, like 0.3 gwei ETH now, total 0.00021 ETH.
Pro tip: Blind sign? Never. Always check screen. Malware swaps addresses pre sign.
For full nodes, PSBT rocks. Modern standard.
Numbers: Fee 0.000141 BTC on 141vB tx. Precise. Issue? Missing sigs - check "next": "signer".
Monero's view only + full wallet dance. Offline: monero wallet cli --generate new wallet cold.bin. Note seed on paper.
Online view wallet: --generate from view hot.bin --daemon address node.monero.net:18089.
Transfer command makes unsignedmonerotx. SD/USB to cold. signtransfer. signedmonero_tx back. relay.
Fees auto, tiny - 0.0001 XMR ish. Why matter? Ring sigs hide amounts. Offline keeps spend safe.
Sound familiar? Similar to others. But Monero syncs slow - use remote node.
Nxt (old but example): Online NRS client, prep tx, check "Do Not Sign/Broadcast". Grab unsigned bytes/JSON QR or file. Offline NRS, paste, passphrase, sign. Back via QR/USB. Broadcast.
Generic pattern. Works for many. Public needed sometimes first tx.
| Problem | Why? | Fix |
|---|---|---|
| Tx not broadcasting | Invalid sig/nonce/gas | Recheck online build. Use block explorer verify raw hex. |
| QR won't scan | Low res/big data | Use USB file transfer. Or direct screen scan. |
| Fee too low, stuck | Bad estimate | RBF if enabled (BTC). Or bump gas (ETH). |
| Privkey exposed? | You pasted online | Sweep to new wallet NOW. Lesson learned. |
Common? Nonce off by one. Always peek etherscan or mempool.space pre sign. And testnet first - signet for BTC free.
Back to my fave. iOS/Android. Watch only: Import zpub (export from seed wallet > advanced > export extended pubkey). Tracks balance, builds tx perfect - UTXOs selected optimal.
Send screen. Amount, address. QR unsigned. Offline vault wallet scans it under "More > Sign". Signs, new QR. Online scans "Receive signed tx" or whatever. Broadcasts.
Fees: Auto, but tweak - low priority 1sat/vB, sats total standard tx. High? 10sat, 5min confirm.
The thing is, multi sig? Same flow. Watch only multisig builds PSBT QR. Sign sequentially if needed. Wild.
Keystone 3 Pro example. QR king. Online app builds tx QR sequence (data split). Hardware scans all, verifies on color screen, signs, spits signed QRs back. App reassembles, broadcasts.
Data methods: QR, microSD, USB. QR safest - no ports. PSBT standard unifies BTC/ETH/Liquid etc.
One more: Solana? Offline rare, but solana keygen sign with file tx. Pump.fun trades? Build JSON RPC tx online, sign offline privkey, base58 encode sig. Niche tho.