Custodire Bitcoin non significa soltanto proteggere la seed phrase o scegliere tra exchange e hardware wallet. Significa anche capire quanto la propria attività on-chain renda visibili i collegamenti tra acquisti, indirizzi, saldi e pagamenti. La blockchain di Bitcoin è trasparente: chiunque può osservare le transazioni, gli input, gli output e la cronologia associata a un indirizzo.
Il CoinJoin è una tecnica che prova a rendere più difficile questa analisi combinando in un’unica transazione gli input e gli output di più partecipanti. Non cancella la storia della blockchain, non rende Bitcoin anonimo in senso assoluto e non sostituisce una buona procedura di custodia. Può però modificare il modo in cui le monete vengono collegate tra loro e il livello di privacy ottenibile.
La domanda corretta, quindi, non è se il CoinJoin “renda anonimi” i Bitcoin, ma quali informazioni possa nascondere, quali informazioni restino visibili e quali nuovi errori possano compromettere il risultato.
Che cos’è un CoinJoin
CoinJoin è il nome dato a una transazione Bitcoin costruita congiuntamente da più utenti. Una transazione normale può avere uno o più input appartenenti allo stesso soggetto e diversi output destinati a destinatari differenti. Il modello CoinJoin aumenta il numero di partecipanti e cerca di rendere meno evidente quale input corrisponda a quale output.
Un esempio semplificato aiuta a capire il meccanismo. Immaginiamo che cinque persone vogliano utilizzare ciascuna una quantità simile di Bitcoin. Invece di creare cinque transazioni separate, collaborano alla costruzione di una transazione con diversi input e diversi output. Gli output possono avere importi uguali o comunque strutturati in modo da rendere meno affidabile l’associazione basata soltanto sugli importi.
La transazione viene comunque registrata pubblicamente sulla blockchain. Restano visibili gli input, gli output, le commissioni e il momento in cui la transazione è stata confermata. Ciò che diventa più incerto è il collegamento individuale tra ogni moneta entrata nella transazione e ogni moneta uscita.
Il CoinJoin non è una caratteristica separata della blockchain e non crea una nuova criptovaluta. È un metodo di costruzione e coordinamento delle transazioni, generalmente gestito tramite software o protocolli dedicati. Il funzionamento concreto può cambiare in base allo strumento utilizzato, ma il principio resta quello della combinazione di fondi appartenenti a più partecipanti.
Quale informazione può proteggere
Il principale obiettivo è ridurre la certezza con cui un osservatore può ricostruire i movimenti di un determinato utente. Senza tecniche di questo tipo, una persona che conosce un indirizzo può spesso seguire il saldo ricevuto, il pagamento effettuato e gli eventuali indirizzi di resto.
Il CoinJoin può rendere meno chiaro:
- quale output appartenga a uno specifico input;
- quali monete siano state controllate dallo stesso partecipante prima della transazione;
- quanto del saldo originario sia stato trasferito a un determinato indirizzo;
- quali collegamenti tra indirizzi siano certi e quali soltanto probabili.
Il livello di privacy dipende dalla struttura della transazione, dal numero dei partecipanti, dalla qualità degli importi, dalla ripetizione dei round e dal comportamento successivo dell’utente. Una singola operazione non produce necessariamente lo stesso risultato di una strategia coerente di gestione degli UTXO.
È importante distinguere tra due concetti. La privacy riguarda la difficoltà di associare un’attività a un’identità o di collegare tra loro transazioni diverse. La sicurezza della custodia riguarda invece la capacità di impedire accessi non autorizzati e di recuperare il wallet. Il CoinJoin può intervenire sul primo aspetto, ma non protegge la seed phrase, il PIN o il dispositivo.
Che cosa il CoinJoin non nasconde
Il CoinJoin non rende invisibili tutte le informazioni. La blockchain continua a mostrare la transazione e la sua struttura. Inoltre, l’analisi può sfruttare dati esterni, errori dell’utente e movimenti effettuati dopo il CoinJoin.
Non vengono automaticamente nascosti:
- l’esistenza della transazione sulla blockchain;
- gli input e gli output registrati pubblicamente;
- le commissioni pagate;
- gli importi e le tempistiche presenti nella transazione;
- i collegamenti creati dall’utente prima o dopo l’operazione;
- le informazioni già raccolte da un exchange o da un altro intermediario.
Se, dopo il CoinJoin, l’utente riunisce gli output ottenuti con monete provenienti da un indirizzo già associato alla propria identità, può indebolire o annullare parte del risultato. Anche spendere insieme due UTXO con origini diverse può suggerire a un osservatore che tali monete siano sotto il controllo della stessa persona.
Lo stesso vale per i pagamenti con importi molto riconoscibili, per l’utilizzo immediato degli output e per l’invio a un servizio che identifica il cliente. La privacy on-chain non può essere separata dalla privacy operativa.
UTXO, resto e separazione delle monete
Per comprendere i rischi è necessario conoscere il modello UTXO di Bitcoin. Un UTXO è una quantità di Bitcoin disponibile per essere spesa. Quando una transazione utilizza un UTXO di valore superiore al pagamento, la differenza viene generalmente inviata a un output di resto controllato dal mittente.
Nel contesto CoinJoin, il resto può avere un trattamento diverso dagli output principali. Se viene riconosciuto o riutilizzato in modo improprio, può offrire indizi utili a chi analizza la transazione. Per questo alcuni strumenti separano logicamente gli output considerati più riservati da quelli già collegati a una provenienza identificabile.
La gestione pratica dovrebbe quindi basarsi su una distinzione chiara tra:
- UTXO con una storia potenzialmente identificabile;
- UTXO che hanno partecipato a operazioni collaborative;
- output di resto;
- fondi destinati a pagamenti, risparmio o trasferimenti verso un exchange.
Questa separazione non è una garanzia matematica di anonimato. Serve a evitare che il wallet scelga automaticamente monete incompatibili tra loro e ricrei collegamenti che l’utente stava cercando di ridurre.
CoinJoin e hardware wallet: ruoli diversi
Un hardware wallet protegge principalmente le chiavi private, mantenendole all’interno del dispositivo e chiedendo una conferma per firmare le transazioni. Il CoinJoin, invece, riguarda la costruzione della transazione e la gestione della privacy degli UTXO.
Le due tecnologie possono quindi avere ruoli complementari, ma non sono intercambiabili. Un hardware wallet non rende private le transazioni. Un CoinJoin non mette al sicuro una seed phrase salvata male o un computer compromesso.
Prima di firmare è necessario verificare almeno:
- quali UTXO vengono utilizzati come input;
- quali output sono destinati a un altro partecipante e quali al proprio wallet;
- quale importo viene pagato come commissione;
- quali indirizzi sono classificati come resto;
- se il software utilizzato mostra correttamente la transazione sul dispositivo di firma.
Quando il dispositivo non consente di comprendere la struttura della transazione, firmare alla cieca aumenta il rischio operativo. La conservazione della chiave privata non elimina il rischio di autorizzare una transazione costruita male o indirizzata a output inattesi.
Rischi operativi e di controparte
Un CoinJoin richiede spesso un coordinatore, un software specifico o un servizio che organizza la collaborazione tra partecipanti. Questo introduce rischi ulteriori rispetto a una normale transazione Bitcoin.
Il coordinatore potrebbe essere indisponibile, modificare le condizioni del servizio, applicare commissioni, raccogliere dati tecnici o diventare oggetto di un attacco. Anche se non controlla direttamente le chiavi private, può avere visibilità su indirizzi, tempi, identificativi della sessione e informazioni di rete.
Esistono inoltre rischi di phishing. Un sito falso può presentarsi come strumento CoinJoin e chiedere la seed phrase, la chiave privata o una firma non collegata alla procedura prevista. Nessun servizio legittimo dovrebbe richiedere la seed phrase per partecipare a una transazione collaborativa.
Altri errori frequenti sono:
- installare software da link ricevuti via messaggio o social network;
- confondere una transazione CoinJoin con un deposito su un protocollo DeFi;
- inviare tutti gli UTXO del wallet senza comprendere il risultato;
- mescolare subito gli output con monete di origine diversa;
- ignorare commissioni, tempi di coordinamento e condizioni del servizio;
- considerare “puliti” o “anonimi” gli output senza valutare la loro storia on-chain.
CoinJoin e servizi regolamentati
La provenienza e la storia delle monete possono essere valutate diversamente da exchange, intermediari e altri servizi. Un UTXO che ha partecipato a un CoinJoin non è automaticamente illecito, ma potrebbe essere sottoposto a controlli aggiuntivi o a richieste di spiegazione.
Non è prudente presumere che ogni piattaforma accetti allo stesso modo depositi provenienti da transazioni collaborative. Le politiche possono cambiare e dipendono dal servizio, dalla giurisdizione e dalle procedure di conformità applicate. Prima di trasferire fondi è opportuno verificare le condizioni aggiornate dell’intermediario, senza utilizzare il CoinJoin come strumento per eludere obblighi legali o fiscali.
La privacy finanziaria è un’esigenza legittima, ma non equivale al diritto di occultare attività illecite. Inoltre, le regole fiscali e gli obblighi di conservazione della documentazione non vengono cancellati dalla struttura tecnica di una transazione.
Una procedura prudente di valutazione
Chi sta considerando il CoinJoin dovrebbe prima definire lo scopo: ridurre il collegamento tra un acquisto e un pagamento, separare attività finanziarie diverse o evitare la pubblicazione involontaria del saldo complessivo. Senza un obiettivo preciso, la complessità può superare i benefici.
Una procedura ragionevole comprende:
- mantenere la seed phrase offline e non inserirla mai in software o siti web;
- usare un wallet dedicato, separato dai fondi destinati alla conservazione di lungo periodo;
- imparare a leggere input, output, resto e commissioni prima di firmare;
- testare il flusso con importi che non mettano in pericolo il patrimonio complessivo;
- conservare una registrazione privata delle operazioni necessarie per la contabilità e la fiscalità;
- non riunire automaticamente gli output con UTXO aventi provenienze diverse;
- valutare la reputazione del software, la trasparenza del coordinatore e i rischi di controparte;
- prevedere un piano per recuperare il wallet anche se il software utilizzato non fosse più disponibile.
La separazione tra wallet operativo e wallet di risparmio resta una misura importante. Il primo può essere utilizzato per attività che richiedono maggiore flessibilità; il secondo dovrebbe rimanere semplice, documentato e il meno esposto possibile a software, servizi e procedure complesse.
Il CoinJoin è quindi uno strumento di privacy, non una polizza assicurativa per la custodia. Può rendere meno immediata l’analisi dei collegamenti tra UTXO, ma richiede comprensione del modello di Bitcoin, controllo degli output, disciplina nella gestione del resto e attenzione ai servizi coinvolti. La protezione più solida nasce dall’unione di chiavi private ben custodite, procedure verificabili e consapevolezza di ciò che la blockchain continua comunque a rendere pubblico.


