Mixer, CoinJoin e criptovalute orientate alla privacy · Lezione 2 di 5
CoinJoin
9 min di lettura
Le transazioni CoinJoin sono il punto in cui il tracciamento più spesso si trasforma in una controversia. L’accusa vuole sapere se i fondi sono «passati attraverso» un servizio di mixing e sono finiti su un exchange; gli esperti della difesa sanno che i metodi di de-mixing pubblicati non hanno un tasso di errore convalidato per i design moderni. Questa lezione si basa sulle strutture descritte nella lezione IDFE-BA Mixer, CoinJoin e offuscamento nei grafi e insegna a distinguere ciò che la blockchain dimostra, ciò che un’euristica suggerisce e ciò che solo un wallet o un documento può mostrare.
Due affermazioni diverse: rilevamento e de-mixing
È facile confondere due domande, che presentano profili di errore molto diversi.
Il rilevamento chiede: si tratta di una transazione CoinJoin e, in caso affermativo, di quale design? Si basa sulla struttura (gruppi di output di pari importo, numero di input e output, tagli del pool, schemi delle commissioni) e può essere convalidato rispetto a dati di riferimento noti. Stütz e colleghi (2022) hanno addestrato un classificatore su 28.890 transazioni fornite da un coordinatore Wasabi e hanno riportato un’accuratezza del 99,98% e un tasso di falsi positivi dello 0,0114%; una regola di soglia più semplice ha raggiunto un’accuratezza del 99,31%, senza falsi positivi e con un tasso di falsi negativi dell’1,38%. Per Whirlpool hanno tracciato i mix a partire dalle loro prime transazioni, effettuando verifiche incrociate con un dataset indipendente. Tra luglio 2018 e febbraio 2022 hanno identificato 30.251 transazioni Wasabi e 223.597 Whirlpool.
Il de-mixing chiede: quale output corrisponde a quale input? È un’affermazione di controllo relativa a delle persone, e nessuno studio pubblicato offre un tasso di errore convalidato sul campo per collegare un output CoinJoin moderno a uno specifico input. I risultati del rilevamento possono essere esposti come fatti, citando un tasso di errore. I risultati del de-mixing sono collegamenti euristici o inferenze e devono essere valutati di conseguenza (vedere la lezione Tracciamento secondo uno standard probatorio).
Chi conosce la corrispondenza
È il design a determinare chi, se qualcuno, detiene la corrispondenza tra input e output. Da questo dipende la possibile fonte delle prove. Le date sono importanti: il coordinatore Samourai è andato offline dopo l’arresto dei suoi fondatori nell’aprile 2024, e la società che gestiva il coordinatore predefinito di Wasabi ha cessato l’attività il 1° giugno 2024, mentre altri coordinatori hanno continuato a operare.
| Design (contesto) | Struttura | Chi conosce la corrispondenza |
|---|---|---|
| Whirlpool | Pool fissi, cinque input e cinque output di pari importo; una tx0 preparatoria crea monete delle dimensioni del pool e trattiene il resto come resto | Ogni utente conosce solo le proprie monete; il coordinatore è stato progettato per non collegare gli input agli output |
| Wasabi 1.x | Round di grandi dimensioni con un gruppo principale di output di pari importo e output di resto per i partecipanti | Ogni utente conosce le proprie monete; il coordinatore è progettato per non collegarle (firme cieche) |
| Wasabi 2.x (WabiSabi) | Importi di input arbitrari, output in tagli standard, round molto grandi | Ogni utente conosce le proprie monete; il coordinatore è progettato per non collegarle (credenziali anonime) |
| JoinMarket | Un taker paga i maker perché partecipino; per la maggior parte dei partecipanti, un gruppo di pari importo più il resto | Il taker conosce l’intera corrispondenza; ogni maker conosce le proprie monete |
La conclusione pratica è che la prova di de-mixing più affidabile non è un’euristica, ma un wallet. Il wallet di un partecipante registra quali output sono suoi, spesso con etichette e cronologia completa delle monete. Con un’autorizzazione legale, i file del wallet, i backup e i dati sincronizzati su un dispositivo sequestrato possono chiarire ogni CoinJoin a cui il soggetto ha partecipato (vedere le lezioni Wallet su dispositivi sequestrati e Recupero del wallet con autorizzazione legale). Il wallet di un taker JoinMarket chiarisce l’intera transazione. Un coordinatore sequestrato, invece, può contenere registri dei round, orari di registrazione e dati di rete, ma per design non dovrebbe contenere la corrispondenza; verificate che cosa contenga effettivamente prima di fare promesse.
Comportamento successivo al mix e resto tossico
Gli utenti e il loro software rivelano collegamenti dopo il mix. Ecco gli schemi su cui si basano le ricerche pubblicate e i casi investigativi:
- Resto tossico: il resto non sottoposto a mix (in Whirlpool, il resto della tx0; in altri design, gli output di resto all’interno del CoinJoin). È collegato in modo deterministico alle monete dell’utente precedenti al mix. Se viene successivamente speso insieme a output successivi al mix, l’euristica degli input comuni collega tali output allo stesso wallet.
- Consolidamento: più output successivi al mix spesi insieme, che li ricollegano a un unico controllore e spesso ricreano l’importo originario.
- Schemi di finanziamento pre-mix: Stütz e colleghi descrivono uno schema «a stella», in cui un’entità finanzia più input CoinJoin, e uno schema «raccoglitore», in cui più output successivi al mix confluiscono in un wallet.
- Calcolo degli importi: output successivi al mix che, sommati al netto delle commissioni, corrispondono all’importo pre-mix e arrivano insieme a un servizio.
- Corrispondenza basata su importi arbitrari: quando gli importi non sono uguali, la corrispondenza tra input e output diventa un problema della somma di sottoinsiemi. Atlas (2014) ha usato questo tipo di corrispondenza degli importi per collegare input e output nella prima funzionalità CoinJoin di un fornitore di wallet.
Gavenda e colleghi (ESORICS 2025) hanno misurato quanto il consolidamento riduca l’insieme di anonimato: una diminuzione media successiva al mix del 10–50% per Whirlpool, Wasabi 1.x e Wasabi 2.x; per Wasabi 2.x la diminuzione è inferiore al 20%, perché i suoi utenti ripetono spesso il mix. Hanno inoltre stimato che, persino per un round Wasabi 2.x reale di dimensioni mediane, enumerare tutte le corrispondenze possibili è computazionalmente impraticabile; di conseguenza, gli utenti mantengono una privacy sostanziale, a meno che un analista non disponga di informazioni esterne.
Ricerche pubblicate e relativi tassi di errore
| Studio | Che cosa ha misurato | Dati di riferimento noti | Che cosa può riportarne una relazione |
|---|---|---|---|
| Stütz et al. (2022) | Rilevamento di transazioni Wasabi e Whirlpool; volumi; schemi successivi al mix | Transazioni fornite dal coordinatore; mix di prova | Tassi di errore del rilevamento per quel design e quel periodo |
| Gavenda et al. (2025) | Perdita dell’insieme di anonimato dovuta al consolidamento; enumerazione delle corrispondenze | Round emulati e dati aggregati della blockchain | Che le fughe di informazioni sono comuni e la loro entità aggregata; non un tasso di errore per singolo output |
| Atlas (2014) | Corrispondenza degli importi in un servizio CoinJoin delle prime generazioni | Analisi delle transazioni di quel servizio | Una debolezza storica del design; non applicabile ai design con output di pari importo |
Ne derivano tre regole. Indicate il design e il periodo a cui si riferisce un dato. Non trasformate mai una riduzione aggregata dell’insieme di anonimato nella probabilità che un determinato output appartenga al soggetto. E dichiarate che le euristiche di de-mixing non dispongono di tassi di errore convalidati sul campo, prima che lo sollevi la difesa (vedere la lezione Divulgazione e contestazione della difesa).
Un caso svolto
Un riscatto di 0,20000000 BTC arriva all’indirizzo del soggetto (grado A). Una tx0, 7c2e…91ab, lo suddivide in tre monete pre-mix di circa 0,0503 BTC ciascuna, un output per la commissione del servizio e 0,0471 BTC di resto. Ogni moneta pre-mix entra in un mix diverso cinque per cinque e viene sottoposta a mix più volte. Nove giorni dopo compare questa transazione:
txid e5d0…3a77 3 input, 1 output
in 0.05000000 bc1q…h4tn (output successivo al mix del mix 2b91…0c4d)
in 0.05000000 bc1q…p9we (output successivo al mix del mix 61fa…d802)
in 0.04710000 bc1q…z6qc (output di resto della tx0 7c2e…91ab)
out 0.14690000 bc1q…dx7e (indirizzo di deposito, Exchange K secondo l’etichetta)
fee 0.00020000
L’esaminatore ragiona passo per passo:
- Calcolo. 0,05 + 0,05 + 0,0471 = 0,1471 BTC in entrata; 0,1469 in uscita più 0,0002 di commissione. Gli importi tornano.
- Ciò che è deterministico. Il resto della tx0 proviene dal riscatto (grado A). I due output successivi al mix provengono dai rispettivi mix (grado A come flussi). Nulla collega in modo deterministico le monete del soggetto precedenti al mix a questi specifici output.
- L’euristica. La spesa congiunta del resto tossico e di due output successivi al mix indica che un unico controllore gestisce tutti e tre gli input. Eccezioni come PayJoin o una spesa collaborativa sono improbabili per un consolidamento con un solo output, ma l’affermazione resta basata su un’unica euristica: grado C.
- Ciò che l’euristica non dimostra. Non dimostra che questi output contengano il valore del riscatto. Il wallet potrebbe aver sottoposto a mix altre monete. L’affermazione riguarda il controllo, non il flusso.
- La terza moneta pre-mix. Non è stata rilevata alcuna fuga di informazioni. Va indicata come non tracciata, non come «probabilmente nello stesso wallet».
- Passo successivo. Richiedete a Exchange K i registri relativi a
bc1q…dx7e. Se il titolare del conto è il soggetto, l’affermazione sul controllo ottiene una conferma indipendente e sale al grado B. Se viene sequestrato un dispositivo, i dati del wallet potrebbero chiarire la questione.
Che cosa si può e non si può affermare
| Affermazione | Base | Stato |
|---|---|---|
«La transazione 2b91…0c4d è un CoinJoin in stile Whirlpool, cinque per cinque.» | Struttura; tassi di errore pubblicati per il rilevamento | Supportata; citare il tasso |
| «La moneta pre-mix del soggetto era un input della transazione.» | Spesa deterministica | Supportata, grado A |
«L’output bc1q…h4tn era controllato dal wallet che deteneva il resto della tx0.» | Resto tossico speso insieme a output successivi al mix | Supportata come grado C; grado B se corroborata dai registri |
| «L’output 3 del mix appartiene al soggetto perché vi ha partecipato.» | Uno dei cinque candidati | Non supportata; riportare l’insieme dei candidati |
| «I fondi del riscatto del soggetto si trovano ora presso Exchange K.» | Collegamento di controllo più un’ipotesi sul valore | Esagerata; dire che il wallet collegato al riscatto vi ha depositato 0,1469 BTC |
| «Tutti gli output del mix sono contaminati.» | Regola del veleno | Non supportata |
Focus sull’esame: la differenza tra rilevamento di CoinJoin (convalidato, con tassi di errore pubblicati bassi) e de-mixing (senza tassi di errore convalidati sul campo); chi conosce la corrispondenza in Whirlpool, Wasabi 1.x, WabiSabi e JoinMarket, e perché i dati del wallet su un dispositivo sequestrato costituiscono la prova di de-mixing più forte; resto tossico, consolidamento, schemi a stella e raccoglitore, calcolo degli importi e corrispondenza tramite somma di sottoinsiemi; i risultati di Stütz et al. (2022) e Gavenda et al. (2025) e i loro limiti; il fatto che un collegamento basato su una spesa congiunta è un’affermazione di controllo, non di flusso; valutazione e formulazione dei risultati su CoinJoin e dichiarazione corretta dei valori non tracciati.