Investor's wiki

CoinJoin

CoinJoin

Cos'è CoinJoin?

CoinJoin è una strategia di anonimizzazione che protegge la privacy degli utenti Bitcoin quando effettuano transazioni tra loro, oscurando le fonti e le destinazioni di BTC utilizzati nelle transazioni.

CoinJoin richiede a più parti di firmare congiuntamente uno smart contract digitale per mescolare le loro monete in una nuova transazione Bitcoin, in cui l'output della transazione lascia i partecipanti con lo stesso numero di monete, ma gli indirizzi sono stati mescolati per rendere difficile il tracciamento esterno.

Il processo è anche noto come miscelazione di monete.

Come funziona CoinJoin?

CoinJoin è stato sviluppato per introdurre un livello di privacy nelle transazioni Bitcoin altrimenti pubbliche. La frase è stata coniata dallo sviluppatore di Bitcoin Gregory Maxwell in un thread di annunci sul forum Bitcoin.

Perché Bitcoin non è esattamente privato

Sebbene Bitcoin nei suoi primi giorni avesse la reputazione di essere anonimo e quindi fosse utilizzato per transazioni su siti darknet come Silk Road, la criptovaluta in realtà fornisce pochissima privacy. Gli indirizzi Bitcoin non elencano i nomi e gli indirizzi degli utenti, ma sono facilmente rintracciabili e qualcuno potrebbe essere in grado di associare il tuo indirizzo IP alla tua transazione Bitcoin.

Una volta identificato un utente, i ricercatori possono utilizzare metodi forensi digitali comuni per tracciare tutti i contatti nella rete. Questo non è un bug di Bitcoin, è la base del suo sistema "trustless": tutte le transazioni sono pubbliche per prevenire le frodi degli utenti.

Altre monete sono state sviluppate per incorporare la privacy degli utenti nel codice della moneta. Monero, ZCash e Dash sono esempi importanti. La tecnologia per la privacy di Monero è simile a CoinJoin, in quanto utilizza firme ad anello per mescolare la firma di chi spende con le firme di altri utenti per rendere quasi impossibile il tracciamento degli indirizzi.

CoinJoin è la misura sulla privacy di prima generazione per Bitcoin

Un utente che desidera implementare CoinJoin nella propria transazione Bitcoin deve trovare un altro utente che desideri anche unire le monete e insieme avviano una transazione congiunta. L'indirizzo da cui viene inviato un bitcoin viene chiamato input.

Considera le seguenti transazioni effettuate contemporaneamente: A acquista un articolo da B, C acquista un articolo da D ed E acquista un articolo da F. Senza CoinJoin, il libro mastro blockchain pubblico registrerebbe tre transazioni separate per ogni corrispondenza input-output . Con CoinJoin viene registrata una sola transazione. Il libro mastro mostrerebbe che i bitcoin sono stati pagati dagli indirizzi A, C ed E a B, D e F. Mascherando gli accordi fatti da tutte le parti, un osservatore non può determinare con piena certezza chi ha inviato bitcoin a chi.

Strumenti CoinJoin

Sebbene il processo sembri chiaro in teoria, in pratica unire le transazioni è difficile per diversi motivi. Affinché i partecipanti all'unione rimangano anonimi, devono connettersi su una rete Tor, devono sapere un bel po' di programmazione e devono fidarsi l'uno dell'altro.

Per superare questi ostacoli, gli sviluppatori di CoinJoin hanno iniziato presto a creare strumenti che rendessero il processo automatico per la maggior parte degli utenti. I primi tentativi di uno strumento CoinJoin sono stati incorporati nei portafogli. I primi esempi sono stati Dark Wallet, JoinMarket e SharedCoins. Queste piattaforme miravano a fornire un ulteriore livello di mascheramento dei dati per gli utenti che effettuano transazioni in Bitcoin.

Gli sforzi successivi includono Wasabi Wallet e Whirlpool di Samourai Wallet. C'è qualche controversia, tuttavia, su quanto siano affidabili e sicuri questi portafogli e quanto bene anonimizzino le partecipazioni di Bitcoin.

Mette in risalto

  • CoinJoin prevede una transazione Bitcoin multi-parte in cui tutte le parti della transazione inseriscono e prelevano la stessa quantità di Bitcoin, ma gli indirizzi sono mescolati nella transazione rendendo difficile rintracciare l'origine delle monete.

  • CoinJoin è tipicamente eseguito automaticamente da servizi dedicati che lo realizzano. L'esecuzione di un CoinJoin senza un tale strumento è difficile e richiede abilità di codifica avanzate.

  • CoinJoin è un processo utilizzato per rendere anonime le transazioni Bitcoin online.