Da 0 satoshi a capire davvero come funziona: blockchain, wallet, indirizzi, Lightning Network, nodi e BTCPay. Senza promesse di ricchezza, senza gente che urla sui Telegram.
"Non è tuo se non controlli le chiavi. Non è una opinione, è matematica." — e no, non puoi chiamare il supporto.
Il problema del doppio-spesa risolto da uno sconosciuto nel 2008 prima di sparire per sempre. Normale.
Il contante fisico funziona perché puoi darlo a una sola persona: se dai una banconota da 20€, non ce l'hai più. In digitale questo non esiste: un file puoi copiarlo. Il problema del "doppio-spesa" è: come faccio a pagare online senza che una banca centrale tenga il registro delle transazioni? Bitcoin risolve questo con una blockchain pubblica, verificata da migliaia di nodi indipendenti. Nessuna banca centrale. Il registro è distribuito e immutabile.
Satoshi Nakamoto pubblica "Bitcoin: A Peer-to-Peer Electronic Cash System". 9 pagine. Ha cambiato il mondo. Poi è sparito. Nessuno sa chi è. Probabilmente non torna a sistemare i bug.
3 gennaio 2009. Il primo blocco contiene il titolo del Times: "Chancellor on brink of second bailout for banks". Messaggio per i posteri. Le banche hanno comunque ricevuto il bailout.
Il limite assoluto. Hardcoded nel protocollo. Non lo cambia nessuno. L'ultimo satoshi verrà minato intorno al 2140. Dopo, nessun nuovo BTC.
Decentralizzato — nessun server centrale. Migliaia di nodi full nel mondo tengono una copia identica della blockchain.
Permissionless — non chiedi a nessuno il permesso di usarlo. Crei un wallet, ricevi BTC. Fine.
Censorship-resistant — nessuno può bloccare una transazione valida. Nemmeno uno stato.
Trasparente — tutte le transazioni sono pubbliche e verificabili su qualsiasi block explorer.
Pseudonimo — non sei identificato per nome, ma un indirizzo può essere ricondotto a te se non stai attento.
Divisibile — 1 BTC = 100.000.000 satoshi (sat). Puoi mandare 1 sat (~frazioni di centesimo).
| Unità | Valore in BTC | Quando usata |
|---|---|---|
| BTC | 1 | Importi grandi, prezzo di mercato |
| mBTC (millibitcoin) | 0.001 | Meno usato |
| μBTC / bits | 0.000001 | Raramente |
| sat (satoshi) | 0.00000001 | Lightning Network, microtransazioni, fee |
| msat (millisatoshi) | 0.000000001 | Solo su Lightning, unità interna |
Proof of Work, mining, halving e perché non puoi "fare refund" alla tua ex che ha il tuo indirizzo
Ogni blocco contiene l'hash del blocco precedente. Cambiare un blocco invalida tutti quelli successivi. Per riscrivere la storia servono più del 50% dell'hashrate mondiale. Non conviene.
I miner competono per trovare un numero (nonce) tale che l'hash del blocco sia inferiore a un target. È un lavoro computazionale costoso da fare e istantaneo da verificare. Chi vince aggiunge il blocco e riceve la block reward. Gli altri hanno bruciato elettricità per niente.
Il target si aggiusta ogni 2016 blocchi (~2 settimane) per mantenere la media a 1 blocco ogni 10 minuti.
È lento? Sì, di design. La lentezza è sicurezza. Nel frattempo puoi fare altro.
Ogni 210.000 blocchi (~4 anni) la block reward viene dimezzata. Era 50 BTC nel 2009. Oggi (2024) è 3.125 BTC per blocco.
Prossimo halving: ~2028 → 1.5625 BTC. L'ultimo satoshi verrà minato intorno al 2140. Dopo, i miner vivranno solo sulle fee.
| Tipo | Cosa fa | Risorse | Ti serve? |
|---|---|---|---|
| Full Node | Verifica ogni transazione e blocco dalla genesis. Ha tutta la blockchain (~600GB). | 500GB+ SSD, 8GB RAM, sempre online | Se vuoi sovranità totale. Raccomandata. |
| Pruned Node | Full node che butta i vecchi blocchi dopo verifica. Tiene solo gli ultimi N GB. | ~20GB SSD | Se hai poco spazio. |
| Archival Node | Full node con tutta la storia. Serve agli explorer e ai wallet server. | 600GB+ SSD NVMe | Solo per infrastruttura. |
| SPV/Light wallet | Non verifica tutto, si fida di un server. Meno sicuro. | Minime | Mobile wallet, uso quotidiano. |
| Mining node | Full node + mining software + ASIC. | ASIC + energia + vicini pazienti | Solo se vuoi pagare più di bollette di quanto guadagni in BTC. |
Modificare il blocco #100.000 oggi significa ricalcolare l'hash di quel blocco, poi del #100.001, poi del #100.002... fino al blocco corrente (~870.000+). E farlo più velocemente di tutti i miner onesti del mondo messi insieme. Economicamente impossibile. Tecnicamente possibile solo con >50% dell'hashrate (51% attack), che oggi richiederebbe miliardi di dollari di hardware.
Seed → chiave privata → chiave pubblica → indirizzo. La parte che fa sembrare tutto più complicato di quanto sia, ma che è importante capire almeno una volta.
Il formato originale dal 2009. Ancora valido e compatibile con tutto. Transazioni più pesanti in byte → fee più alte.
Path BIP44: m/44'/0'/0'/0/x
Introdotto con SegWit (2017) ma mantenendo compatibilità con i vecchi wallet. Inizia con "3". Transazioni più efficienti del Legacy ma non quanto Native SegWit.
Path BIP49: m/49'/0'/0'/0/x
Il formato raccomandato oggi. Inizia con "bc1q". Transazioni ~30% più leggere = fee più basse. Supportato da tutti i wallet moderni.
Path BIP84: m/84'/0'/0'/0/x
Attivato nel 2021 con il soft fork Taproot. Inizia con "bc1p". Aggiunge privacy (le script multisig sembrano transazioni normali), efficienza e le basi per script avanzati (BitVM, etc).
Path BIP86: m/86'/0'/0'/0/x
La chiave privata è un numero casuale a 256 bit. La chiave pubblica si ottiene moltiplicando la chiave privata per un punto fisso della curva ellittica secp256k1.
# Chiave privata: numero casuale 256 bit
private_key = 0xE9873D79C6D87DC0FB6A5778633389F4453213303DA61F20BD67FC233AA33262
# Chiave pubblica: moltiplicazione su curva ellittica secp256k1
public_key = private_key × G # G = generator point della curva
# Indirizzo (Bech32): hash della chiave pubblica
address = bech32(RIPEMD160(SHA256(public_key)))
# La matematica è a senso unico:
# da private_key → address: facile
# da address → private_key: computazionalmente impossibile (log discreto)
Questo è il motivo per cui puoi dare il tuo indirizzo pubblicamente: da esso nessuno può risalire alla tua chiave privata. La crittografia asimmetrica funziona grazie alla difficoltà del problema del logaritmo discreto su curva ellittica. Se qualcuno lo risolve, abbiamo problemi ben più grossi di Bitcoin.
Non custodial o custodial? Hot o cold? Hardware o software? La risposta giusta dipende da quanto BTC hai, da quanto sei paranoico e da quante volte hai già perso la password del WiFi.
L'exchange tiene le chiavi per te. Praticamente come una banca, ma senza garanzie statali, senza numero verde e con più probabilità di fallire nel weekend. Comodo ma: exchange fallisce → perdi tutto. Non sono tuoi BTC, sono una promessa di BTC.
Esempi: Coinbase, Kraken, Binance (conti spot)
Tu hai le chiavi. Tu controlli. Se perdi la seed, nessuno ti aiuta. Se la seed è al sicuro, nessuno ti può portare via i BTC.
Mantra: "Not your keys, not your coins"
Connesso a internet. Comodo per uso quotidiano. Più esposto. Tieni solo quello che spendi.
Offline. Le chiavi non toccano mai internet. Hardware wallet o paper wallet. Per HODLing.
Richiede N di M firme per spendere. Es: 2 di 3 chiavi. Massima sicurezza per grandi importi.
Il wallet desktop per chi vuole capire cosa sta facendo. Controllo totale su UTXO, coin control, collegamento al proprio nodo. Raccomandato per desktop.
Piattaforme: Windows, macOS, Linux
Connessione: Proprio nodo, Electrum server, server pubblici
Wallet mobile Lightning non-custodial. Phoenix è il migliore per user experience: gestisce i canali da solo, ha fee chiare.
Breez: più funzionalità (point of sale integrato)
Il veterano. Leggero, veloce, supporta hardware wallet. Meno user-friendly di Sparrow ma affidabilissimo. Esiste dal 2011.
Attenzione: esistono versioni fake di Electrum in circolazione. Scarica solo da electrum.org.
Mobile. Supporta sia on-chain che Lightning (tramite LNDHub). Interfaccia pulita. Connettibile al proprio nodo.
Modalità watch-only ottima per monitorare cold wallet senza esporre chiavi.
| Dispositivo | Prezzo | Punti di forza | Note |
|---|---|---|---|
| Coldcard MK4 | ~€150 | Massima sicurezza, air-gap, open-source firmware, PSBT | Complesso per principianti. Il preferito dai paranoici. |
| Foundation Passport | ~€250 | Open source hardware + firmware, air-gap, schermo grande | Top per sicurezza ma costoso. |
| Trezor Safe 3 | ~€80 | Open source, facile da usare, ampio supporto software | Buona scelta per iniziare. |
| Ledger Nano X | ~€150 | Popolare, Bluetooth, supporto monete enorme | Firmware proprietario. Data leak 2020: nomi e indirizzi fisici dei clienti finiti in giro. Bella roba. |
| Jade (Blockstream) | ~€60 | Open source, air-gap possibile, economico | Solo Bitcoin/Liquid. Ottimo rapporto qualità/prezzo. |
UTXO model, input/output, script, firma digitale. Bitcoin non usa "saldi" come le banche. Ci ha messo un po' ad abituarsi anche chi scrive questa guida.
Ogni UTXO è bloccato da uno script (locking script / scriptPubKey). Per spenderlo devi fornire un unlocking script (scriptSig / witness) che soddisfa le condizioni.
# Locking script (scriptPubKey) — "puoi spendere solo con questa chiave"
OP_0 <20-byte-pubkey-hash>
# Unlocking script (witness) — "ecco la firma e la chiave pubblica"
<signature> <pubkey>
# Il nodo verifica:
# 1. SHA256(RIPEMD160(pubkey)) == pubkey-hash
# 2. la firma è valida sulla transazione corrente
# Se entrambe vere → UTXO sbloccato → spendibile
{
"txid": "abc123...def456", // 32-byte hash della transazione
"version": 2,
"vin": [{ // inputs: UTXO che stai spendendo
"txid": "prev_tx_hash",
"vout": 0, // indice output nella tx precedente
"witness": ["<sig>", "<pubkey>"]
}],
"vout": [{ // outputs: nuovi UTXO creati
"value": 0.07000000, // BTC al destinatario
"scriptPubKey": {...} // locking script
},{
"value": 0.00900000, // BTC di resto a te stesso
"scriptPubKey": {...}
}],
"fee": 0.00100000 // differenza input - output → va al miner
}
Il coin control è la selezione manuale di quali UTXO usare in una transazione. Disponibile in Sparrow Wallet.
Perché usarlo:
La sala d'attesa delle transazioni. Come scegliere la fee giusta senza pagare troppo né aspettare 3 giorni.
Quando invii una transazione Bitcoin, va nella mempool (memory pool): una coda in attesa che un miner la includa nel prossimo blocco. I miner scelgono le transazioni con fee per vByte più alte. Se paghi poco, aspetti. Se paghi tanto, sei nel prossimo blocco. In periodi di congestione, le transazioni "economiche" possono aspettare giorni o essere dimenticate.
Le fee non si calcolano in percentuale del valore ma in sat per virtual byte (unità di dimensione della transazione).
Una transazione tipica P2WPKH (1 input, 2 output) pesa circa 141 vByte.
# Fee rate scelto: 20 sat/vByte
# Dimensione tx: 141 vByte
fee = 20 × 141 = 2820 satoshi
fee = 0.00002820 BTC
# A ~€60k BTC: circa €1.69
mempool.space mostra il fee rate raccomandato in tempo reale. Controlla prima di inviare.
| Fee rate | Attesa prevista | Quando usare |
|---|---|---|
high priority | Prossimo blocco (~10min) | Transazioni urgenti |
medium | ~30 min - 1 ora | Uso normale |
low | ~3-6 ore | Non hai fretta |
minimum | 1+ giorni o mai | Solo in periodi tranquilli |
Se hai inviato una transazione con fee troppo bassa, puoi sostituirla con una uguale ma con fee più alta, usando il meccanismo RBF (Replace-by-Fee).
Funziona solo se la transazione originale ha il flag RBF abilitato (la maggior parte dei wallet moderni lo fa di default).
# In Sparrow: Transaction > Bump Fee (RBF)
# Scegli nuovo fee rate più alto
# Firma e broadcast → sostituisce la precedente in mempool
# Via bitcoin-cli:
bitcoin-cli bumpfee "txid" '{"fee_rate": 30}'
Se sei il destinatario di una transazione stuck (e non puoi fare RBF), puoi creare una transazione figlia che spende l'UTXO non confermato con fee alta. I miner includeranno entrambe per incassare le fee totali.
Funziona anche per "accelerare" una transazione di qualcun altro verso di te.
Il full node di riferimento. La sovranità assoluta. Un Raspberry Pi che gira 24/7 nel cassetto. 600 GB di blockchain. Il sogno di chi spiega Bitcoin ai colleghi.
600+ GB SSD. Un HDD va bene per il nodo base, un SSD NVMe è raccomandato per IBD veloce.
Minimo 4 GB, raccomandata 8 GB. Durante IBD più RAM = più veloce.
~20 GB/mese dopo sincronizzazione. L'IBD iniziale scarica ~600 GB. Fibra raccomandata.
Hardware consigliato: Raspberry Pi 5 (8GB) + SSD da 2TB, oppure un mini PC tipo Beelink SER5/SER9. Consumo ~10-15W se always-on.
# 1. Scarica Bitcoin Core da bitcoincore.org
wget https://bitcoincore.org/bin/bitcoin-core-27.0/bitcoin-27.0-x86_64-linux-gnu.tar.gz
# 2. Verifica la firma (IMPORTANTE: non saltare questo passaggio)
wget https://bitcoincore.org/bin/bitcoin-core-27.0/SHA256SUMS
wget https://bitcoincore.org/bin/bitcoin-core-27.0/SHA256SUMS.asc
gpg --verify SHA256SUMS.asc
sha256sum --check SHA256SUMS --ignore-missing
# 3. Estrai e installa
tar xzf bitcoin-27.0-x86_64-linux-gnu.tar.gz
sudo install -m 0755 -o root -g root -t /usr/local/bin bitcoin-27.0/bin/*
# 4. Crea data directory
mkdir -p ~/.bitcoin
# Rete principale
mainnet=1
# Indicizza tutte le transazioni (necessario per alcuni wallet/explorer)
txindex=1
# Accetta connessioni RPC (per wallet come Sparrow)
server=1
rpcuser=bitcoinrpc
rpcpassword=CAMBIA_QUESTA_PASSWORD_LUNGA_E_CASUALE
# Bind RPC solo su localhost (sicurezza)
rpcbind=127.0.0.1
rpcallowip=127.0.0.1
# Memoria per dbcache durante IBD (aumenta se hai RAM)
dbcache=4096
# Pruned node: risparmia spazio (commenta se vuoi nodo completo)
# prune=20000 # 20GB, disabilita txindex se usi prune
# Tor (opzionale ma raccomandato per privacy)
# proxy=127.0.0.1:9050
# listen=1
# bind=127.0.0.1
# Avvia il nodo (IBD può durare 2-12 ore con SSD NVMe, giorni con HDD)
bitcoind -daemon
# Monitora progresso sync
bitcoin-cli getblockchaininfo
"verificationprogress": 0.9987, # 99.87% sincronizzato
"blocks": 839001,
"headers": 839100
# Crea wallet
bitcoin-cli createwallet "mywallet" false false "" false true true
# false false = no disable_private_keys, no blank
# true true = use_descriptors, load_on_startup
# Genera un indirizzo per ricevere
bitcoin-cli getnewaddress "" "bech32"
bc1q...xyz
# Ferma il nodo (sempre in modo pulito!)
bitcoin-cli stop
# Stato della blockchain
bitcoin-cli getblockchaininfo
bitcoin-cli getnetworkinfo
bitcoin-cli getmempoolinfo
# Wallet
bitcoin-cli getbalance
bitcoin-cli listunspent # lista UTXO
bitcoin-cli getwalletinfo
# Transazioni
bitcoin-cli gettransaction "txid"
bitcoin-cli getrawtransaction "txid" true # decoded
bitcoin-cli decoderawtransaction "hex"
# Fee rate raccomandato
bitcoin-cli estimatesmartfee 6 # fee per conferma entro 6 blocchi
"feerate": 0.00025, # BTC/kB → converti in sat/vByte
# Invia transazione
bitcoin-cli sendtoaddress "bc1q..." 0.01 "" "" false true 1 "unset" null null 20
# ultimo parametro = fee rate in sat/vByte
# Blocco specifico
bitcoin-cli getblockhash 839000
bitcoin-cli getblock "$(bitcoin-cli getblockhash 839000)" 2
Per la massima privacy, esegui Bitcoin Core sopra Tor. Il tuo IP non sarà visibile ai peer della rete.
# Installa Tor: sudo apt install tor
# Poi in bitcoin.conf:
proxy=127.0.0.1:9050 # SOCKS5 proxy Tor
listen=1 # Accetta connessioni entranti
bind=127.0.0.1 # Solo loopback per inbound non-Tor
onlynet=onion # Solo connessioni .onion (massima privacy)
# Il nodo genererà automaticamente un indirizzo .onion
# Visibile in: bitcoin-cli getnetworkinfo → localaddresses
Sparrow Wallet → File → Preferences → Server → Bitcoin Core (o Electrum)
# Modalità Bitcoin Core (consigliata)
URL: http://127.0.0.1:8332
Username: bitcoinrpc
Password: [quella che hai messo in bitcoin.conf]
# Modalità Electrum Server (serve Electrs o Fulcrum installato sul nodo)
URL: 127.0.0.1:50001 (TCP) o 127.0.0.1:50002 (SSL)
Pagamenti istantanei, fee da microsatoshi, scalabilità. Il layer 2 di Bitcoin. Anche quello che ti fa dire "aspetta che apro un canale" ogni volta che vuoi pagare una birra.
Invece di mettere ogni birra sulla blockchain (lento, costoso), apri un canale di pagamento con il bar: depositi dei BTC in un contratto 2-of-2 sulla blockchain (on-chain, una volta), poi fai quanti pagamenti vuoi off-chain, aggiornando il bilancio del contratto tra voi due senza toccare la blockchain. Quando chiudi il canale, il saldo finale viene settato on-chain. Milioni di transazioni, due transazioni on-chain.
Per aprire un canale serve una transazione on-chain che blocca BTC in un contratto multisig 2-of-2. La transazione va confermata (~10-30 min).
# LND: apri canale con un peer
lncli openchannel \
--node_key 03abc...def \
--local_amt 1000000 \
--push_amt 0
# local_amt: satoshi che metti tu
# push_amt: satoshi da dare al peer subito (opzionale)
# Aspetta 3 conferme
lncli pendingchannels
lncli listchannels
Per ricevere pagamenti Lightning generi una invoice (BOLT11 o BOLT12): una stringa che contiene importo, descrizione, nodo destinazione e scadenza.
# Genera invoice per 50000 sat
lncli addinvoice --amt 50000 --memo "birra"
"payment_request": "lnbc500u1..."
# Paga una invoice
lncli payinvoice lnbc500u1...
# Pagamento senza invoice (keysend)
lncli sendpayment --dest 03abc... --amt 1000 --keysend
| Implementazione | Linguaggio | Punti di forza | Quando usarla |
|---|---|---|---|
| LND (Lightning Labs) | Go | Più usata, ecososistema ricco, ThunderHub, RTL | Nodo domestico, BTCPay Server |
| CLN (Core Lightning) | C | Leggera, modulare, plugin system | Chi vuole customizzazione |
| Eclair (ACINQ) | Scala | Base di Phoenix wallet, mobile-friendly | Server con Phoenix |
| LDK (Lightning Dev Kit) | Rust (library) | Libreria per integrare LN in app proprie | Sviluppatori |
ThunderHub — dashboard web per LND. Gestisce canali, pagamenti, routing. La più completa.
Ride The Lightning (RTL) — UI web compatibile con LND, CLN, Eclair. Robusta e matura.
Amboss — analytics di rete Lightning. Ottimo per decidere con chi aprire canali.
1ML.com — esplora la rete Lightning, capacità dei canali, statistiche nodi.
Accetta pagamenti Bitcoin senza intermediari. Self-hosted, gratuito, zero commissioni. Perfetto per spiegare ai clienti perché non puoi usare il POS normale.
BTCPay Server è un processore di pagamenti open source che installi tu stesso sul tuo server. Nessuna commissione di terze parti, nessuna KYC, nessuno che può congelare il tuo account. I pagamenti vanno direttamente nel tuo wallet. È usato da negozi, creator, ONG, e chiunque voglia accettare BTC senza dipendere da servizi custodial.
# Prerequisiti: Ubuntu 22.04, Docker, 80GB SSD
sudo apt update && sudo apt install -y docker.io docker-compose git
# Clona e configura BTCPay
git clone https://github.com/btcpayserver/btcpayserver-docker
cd btcpayserver-docker
# Variabili d'ambiente
export BTCPAY_HOST="pay.tuo-dominio.com"
export NBITCOIN_NETWORK="mainnet"
export BTCPAYGEN_CRYPTO1="btc"
export BTCPAYGEN_LIGHTNING="lnd"
export BTCPAYGEN_REVERSEPROXY="nginx"
export BTCPAYGEN_ADDITIONAL_FRAGMENTS="opt-save-storage"
# Setup e avvio (scarica tutto, ~10 minuti)
. ./btcpay-setup.sh -i
# Stato servizi
btcpay-up.sh
btcpay-info.sh
WooCommerce — plugin BTCPay per WordPress/WooCommerce. Il più usato. Configura in 5 minuti.
Shopify — BTCPay app su Shopify (tramite payment provider).
API diretta — REST API per integrazioni custom. Genera un API key nel pannello.
POS — BTCPay ha un Point of Sale integrato per vendite in presenza (QR code).
Pay Button — widget HTML da incollare in qualsiasi sito. Genera HTML dal pannello.
<!-- Generato dal tuo BTCPay Server -->
<form method="POST" action="https://pay.tuo-dominio.com/...">
<button type="submit">₿ Paga con Bitcoin</button>
</form>
Dal pannello BTCPay: Stores → Create New Store. Dai un nome, imposta valuta di default per conversioni.
Store → Wallets → Bitcoin → Connect. Inserisci xpub/zpub del tuo hardware wallet. BTCPay genera indirizzi fresh per ogni pagamento, ma non ha la chiave privata — non può spendere i tuoi BTC.
Store → Wallets → Lightning → Internal Node (usa il LND/CLN del BTCPay). Oppure connetti un nodo esterno via macaroon/grpc.
Imposta scadenza invoice (default 15 min), numero di conferme richieste per on-chain (1-6), comportamento BOLT11/BOLT12 per Lightning.
Le truffe sono più sofisticate di quello che pensi. La paranoia ragionevole è la norma. Se pensi di non essere un bersaglio, significa che non hai ancora abbastanza BTC.
Coldcard/Trezor venduti su Amazon da terze parti con firmware modificato che ruba la seed. Compra solo dal sito ufficiale.
"Hai perso Bitcoin? Ti recuperiamo tutto per una piccola fee". È una truffa al 100%. Non esiste recupero di una seed persa. Nessuno può farlo.
Malware che sostituisce l'indirizzo Bitcoin negli appunti con l'indirizzo dell'attaccante. Verifica sempre l'indirizzo destinatario prima di inviare.
"Manda 0.1 BTC, ti tornano 0.2 BTC". Elon Musk, Vitalik, Michael Saylor non fanno giveaway. Mai. Chiunque lo prometta è una truffa.
Nessun supporto legittimo ti chiederà mai la seed phrase. Mai, per nessun motivo. Chi la chiede ti sta fregando.
Siti fake di Electrum, Sparrow, Trezor che sembrano identici all'originale. Controlla sempre l'URL e scarica solo dal sito ufficiale.
Ti mandano tiny amounts di BTC per de-anonimizzare il tuo wallet. Se poi usi quell'UTXO in una transazione, collegano i tuoi indirizzi. Usa coin control.
Qualcuno ti costringe fisicamente a rivelare le chiavi. La difesa: passphrase BIP39 + wallet esca con pochi BTC da "sacrificare".
La passphrase (spesso chiamata "25° parola") è un'estensione della seed che genera un wallet completamente diverso. Se qualcuno trova la tua seed di 24 parole, senza la passphrase non trova nulla.
Un setup multisig 2-of-3 richiede 2 firme su 3 per spendere. Puoi usare 3 hardware wallet diversi (es. Coldcard + Trezor + Jade) e conservarli in posti diversi.
Vantaggi: perdi un dispositivo/seed → ancora sicuro. Un attaccante ne trova uno solo → non basta.
Sparrow Wallet supporta multisig nativo. Usa standard Miniscript/output descriptors per interoperabilità.
La blockchain di Bitcoin è pubblicamente trasparente. Tutte le transazioni sono visibili. L'anonimato è pseudonimia: se il tuo indirizzo viene collegato alla tua identità, chiunque può vedere tutto il tuo storico.
Cosa non fare per la privacy:
Strumenti per la privacy:
Le plusvalenze da Bitcoin sono tassate al 33% (aliquota vigente dal 2025, introdotta dalla Legge di Bilancio 2025 per redditi diversi di natura finanziaria da crypto-asset) senza soglia di esenzione: ogni guadagno è tassabile indipendentemente dall'importo.
Il regime precedente (26% con soglia €2.000) è stato abolito. L'obbligo di monitoraggio fiscale (quadro RW) rimane.
Qualcosa è andato storto. Respira. Forse si risolve. Se hai mandato BTC all'indirizzo sbagliato, smetti di respirare e vai direttamente all'ultima voce.
Se la transazione è ancora in mempool (non confermata): Se hai abilitato RBF, puoi fare bump fee verso te stesso con RBF (double spend). Alcune mempool possono essere "svuotate" di transazioni con fee bassissima dopo giorni.
Se è già confermata: I Bitcoin sono persi se non conosci il destinatario. Bitcoin è definitivo. Non c'è banca da chiamare, non c'è "storno". Impara per la prossima volta: controlla sempre l'indirizzo prima di inviare.
Prevenzione: Invia sempre prima un importo piccolo di test. Usa wallet con verifica visiva dell'indirizzo. Con hardware wallet, verifica lo schermo del dispositivo.
Verifica su mempool.space: controlla se la transazione è ancora in mempool o è stata droppata.
Se hai RBF abilitato: usa bump fee dal wallet (Sparrow: tasto destro sulla tx → Bump Fee).
Se non hai RBF: usa CPFP — crea una transazione che spende l'output non confermato con fee alta.
Se la tx è stata droppata dalla mempool: ritrasmettila con fee più alta. Con Sparrow: puoi ribroadcastare la transazione originale dopo averla modificata.
Controlla i log: tail -f ~/.bitcoin/debug.log
"Verifying blocks" infinito: corruzione del database. bitcoin-cli stop poi riavvia con bitcoind -reindex-chainstate. Lento ma risolve.
Pochi peer connessi: bitcoin-cli getpeerinfo. Se meno di 5 peer, aggiungi nodi manualmente in bitcoin.conf: addnode=x.x.x.x:8333
IBD lentissimo: aumenta dbcache in bitcoin.conf (4096 o più se hai RAM). Chiudi altri programmi. Un SSD NVMe fa la differenza enorme vs HDD.
Disco pieno: la blockchain cresce. Usa prune= se lo spazio è limitato, oppure aggiungi storage.
Canale stuck / offline peer: se il peer è offline da tempo, puoi forzare la chiusura unilaterale.
lncli closechannel --force \
--funding_txid <txid> \
--output_index <idx>
# Attendi timelock (144-2016 blocchi) prima di poter spendere
Backup canali perso: se hai il SCB (Static Channel Backup), recupera con: lncli restorechanbackup --multi_file channel.backup. Se non hai backup, i fondi nei canali potrebbero essere irrecuperabili.
Nodo LND non parte: controlla ~/.lnd/logs/bitcoin/mainnet/lnd.log. Problemi frequenti: porta 9735 non raggiungibile, Bitcoin Core non sincronizzato.
Wallet non sincronizzato: aspetta che si aggiorni. Con Sparrow connesso al proprio nodo: verifica che il nodo sia sincronizzato al 100%.
Gap limit: i wallet HD generano indirizzi sequenzialmente e si fermano se trovano troppi indirizzi vuoti di fila (default gap limit = 20). Se hai ricevuto su indirizzi "lontani", aumenta il gap limit: in Sparrow → Wallet Settings → Gap Limit.
Tipo di indirizzo sbagliato: hai una seed che genera indirizzi Taproot ma stai cercando con un wallet che guarda solo Legacy? Riimporta come tipo corretto.
Passphrase BIP39: stai cercando nel wallet sbagliato. La passphrase genera un wallet completamente diverso.
Hai ancora il dispositivo e PIN: esporta la seed dal dispositivo prima che si rompa. Trezor e Jade la mostrano dal menù. Coldcard ha l'export sicuro.
Hai solo il wallet file (non hardware): per Sparrow/Electrum, il wallet file cifrato con password contiene le chiavi. Se conosci la password, puoi estrarre la seed.
Non hai nulla: se hai perso seed, dispositivo E password — i BTC sono irrecuperabili. Non esiste terza parte che possa aiutarti. Chiunque dica il contrario vuole i tuoi soldi.
Lezione imparata nel modo più costoso: backup multipli della seed, in posti fisici separati, verifica che funzionino PRIMA di depositare.
Tutto quello che devi ricordare in una pagina.