Autore: Sparrow Wallet | Tradotto da: Asia Leone | Sparrow Wallet Guide
Pre-requisiti
Questa guida illustra come ottenere forward privacy mixando con il servizio di coinjoin di Samurai Whirpool. Nella guida rapida trovate un'introduzione a Sparrow Wallet e tutte le informazioni necessarie per l'installazione.
Perchè Coinjoin?
È una sfortunata verità che Bitcoin non garantisce la massima privacy. Pur essendo Bitcoin pseudonimo per definizione, molti utenti lo acquisiscono attraverso exchange centralizzati - CEX Centralized Exchange - che per legge richiedono all' utente documenti di identità validi ed in taluni casi un selfie, da qui il termine KYC Know Your Customer; in Italia anti -riciclaggio AM\L anti-money laundering. In aggiunta, ci sono una serie di euristiche diffuse, che possono essere applicate per analizzare le transazioni nella blockchain , rendendo possibile determinare con un alto grado di probabilità l'appartenenza dei fondi ad un individuo.
Queste euristiche sono generalmente rese possibili perchè valori e tipi di script utilizzati nelle transazioni di Bitcoin sono pubblici e generalmente si desume che tutti gli input siano controllati dalla stessa entità.
Coinjoin è una tecnica semplice, ma allo stesso tempo efficace in grado di rendere difficile o impossibile l'utilizzo delle euristiche per la determinazione della proprietà dei fondi. I partecipanti di una coinjoin si coordinano per creare una transazione che usa lo stesso tipo di script per tutti gli input, ciascuno contribuisce e riceve outputs dello stesso valore. La struttura della transazione rende impossibile rintracciare con certezza l'appartenenza dei fondi. In aggiunta, ad ogni successivo mix - round fatto in sequenza la probabilità di successo dell'analisi ( e quindi la determinazione della proprietà) sui fondi diminuisce significativamente con ogni round.
Perchè Whirpool?
Ci sono diversi tipi di coinjoin, ciascuno con i propri tradeoff.
Sparrow Wallet si configura come cliente nella coinjoin implementata da Samurai Whirpool, che offre un alto grado di anonimato attraverso una serie di scelte di design revisionate e ben testate nel corso degli anni. La proprietà dei fondi è garantita durante l'intero processo di coinjoin.( I vostri UTXOs sono e rimangono di vostra proprietà e quindi spendibili solo da voi). È importante ricordare che la liquidità di Whirpool è offerta dagli utenti; ogni utente che partecipa incrementa il grado di anonimato - anonymity set - per tutti gli altri utenti.
Preparare il wallet
L'utilizzo del servizio Whirpool è piuttosto semplice. Per iniziare è necessario un software wallet di tipo BIP39, anche conosciuto come hot wallet. È sufficiente inserire il seed ( le parole che fungono da backup) all'interno di Sparrow, se siete già in possesso di un altro wallet, oppure crearne uno nuovo direttamente da Sparrow. L'hot wallet è un requisito necessario per il mixaggio in quanto il client di Whirpool deve firmare le transazioni. Il wallet deve essere una derivazione standard dell'account di default #0 - ad esempio, m/84'/0'/0' per Native Segwit. I wallet Taproot (P2TR) ed i seed generati da Electrum non sono supportati al momento.
Qualora non disponiate già di un wallet compatibile potete seguire la guida rapida per crearne uno. Per iniziare è necessario un saldo superiore a 0.001 BTC (100,000 sats). Se disponete già di un Whirpool wallet potete recuperarlo, vedi sezione altri mixing client.
Avviare il mix
Per iniziare, cliccate sulla sezione UTXOs e selezionate quello che intendete mixare (tenere premuto Ctrl o Cmd per la selezione multipla) quindi cliccate il bottone Mix Selected (dovete prima essere connessi).
Vi verrà mostrato un riquadro con alcune informazioni importanti circa il ruolo di Sparrow come client di Whirpool. Per lo svolgimento di una coinjoin è necessario il coordinamento contemporaneo di più utenti per creare una singola transazione. In Whirpool, è il server stesso di Whirpool che funge da coordinatore. Per un maggiore anonimato, tutte le comunicazioni con il server di Whirlpool avvengono tramite input "ciechi".
Tor proxy
Inoltre, se avete configurato un proxy Tor o state usando un server di Electrum su indirizzi .onion, la comunicazione con il server di Whirpool sarà con Tor. È possibile configurare un proxy Tor anche se il vostro server è su indirizzo di rete locale - Sparrow utilizza Tor solo per collegarsi a servizi indirizzabili dall'esterno.
Potete verificare se il collegamento con Tor è attivo attraverso l'icona nella barra di stato a sinistra della levetta del server.
Sparrow non utilizza i server di Samurai ne per le transazioni ne per fornire informazioni sugli UTXOs. Tutte queste informazioni provengono dal server al quale vi siete connessi; solo il server indipendente Whirpool riceve comunicazioni e i dati che ricevono sono "ciechi" quindi non c'è perdita di privacy nell'utilizzo di Tor.
Una volta che avete compreso la privacy dell'implementazione del Whirpool di Sparrow potete procedere cliccando Next, oppure Cancel per impostare un Tor proxy se lo desiderate. Un proxy Tor interno si avvia automaticamente se ci si connette a un server Electrum o a Bitcoin Core su un indirizzo .onion. Altrimenti, è necessario impostare un proxy Tor esterno per utilizzare Tor. Il modo più semplice per far funzionare un proxy Tor esterno è scaricare ed eseguire Tor Browser e abilitare il proxy nelle preferenze del server su localhost con la porta 9150. Sparrow utilizzerà il proxy Tor configurato per il coordinatore Whirlpool (e per tutte le altre comunicazioni esterne).
Premix, Postmix e Badbank
Una coinjoin tramite Whirlpool comporta una serie di passaggi e la creazione di 3 portafogli aggiuntivi. Questi portafogli sono tutti basati sullo stesso seed utilizzato per creare il wallet BIP39 in uso. Utilizzano semplicemente percorsi di derivazione diversi (ma ben noti) per ricavare altri indirizzi. Ciò significa che è sempre possibile recuperare tutti i fondi, purché si disponga ovviamente del seed.
I 3 portafogli aggiuntivi:
- Premix Questo portafoglio contiene gli UTXOs della prima transazione premix (chiamata anche Tx0). La transazione premix divide gli UTXOs in quantità uguali pronte per il mixaggio.
- Postmix Questo portafoglio contiene gli UTXOs dei vostri mix. Whirlpool selezionerà gli UTXOs da entrambi i portafogli Premix e Postmix per includerli nelle transazioni coinjoin. I fondi in questo portafoglio possono essere considerati mixati e possono essere spesi in maniera anonima e sicura, soprattutto dopo un certo numero di round.
- Badbank Questo portafoglio contiene il resto della transazione Premix (Tx0), ovvero ciò che rimane dalla divisione degli UTXOs in entrata (divisi in parti uguali). È possibile mixare questi UTXOs (direttamente in questo portafoglio) se sufficientemente grandi, ma non combinateli - in una transazione - con fondi già mixati!
Articolo interessante sella gestione di questi UTXOs, chiamati Doxxic change.
Configurazione della transazione premix
Come già detto, la transazione premix (Tx0) è necessaria per dividere gli UTXOs selezionati in quantità uguali pronte per il coinjoin. Inoltre, con questa transazione pagherete le commissioni necessarie ai miners per la transazione coinjoin e pagherete una piccola commissione una tantum al server Whirlpool. Se ne avete uno, questa commissione può essere scontata inserendo un codice di sconto o SCODE. È inoltre possibile regolare la tariffa per la transazione premix. Se non si dispone di uno SCODE, lasciare semplicemente il campo vuoto e procedere con Next.
Infine dovrete selezionare in quale mixing pool volete entrare. Attualmente ce ne sono quattro:
- 0.5 BTC
- 0.05 BTC
- 0.01 BTC
- 0.001 BTC
Verranno mostrati solo i pool più piccoli del valore degli UTXOs che avete deciso di mixare . La scelta del pool determina la dimensione degli UTXOs nella transazione coinjoin. Inoltre, la commissione Whirlpool è pari al 5% della dimensione del pool (prima dell'applicazione di qualsiasi sconto). È importante notare che questa commissione viene pagata una sola volta per ciascuna transazione di premix Tx0. Ulteriori mix avvengono automaticamente, incrementando l'anonimato di ciascun UTXO e sono gratuiti!
Nell'esempio, è stato selezionato il pool da 0,001 BTC. Ogni transazione di coinjoin Whirlpool ha 5 output, il che viene definito un set di anonimato (o anonset) di 5. La commissione del pool è indicata come il 5% della dimensione del pool e l'UTXO fornito viene suddiviso in 6 uscite. Il costo del pool è indicato come il 5% della dimensione del pool e l'UTXO fornito viene suddiviso in 6 output.
Una volta selezionato il pool, è possibile fare clic su Preview Premix. Non preoccupatevi, anche se vi verrà chiesta la password del portafoglio, la transazione premix non sarà ancora trasmessa.
Trasmissione della transazione premix Tx0
Una volta cliccato su Preview Premix, si presenterà una vista simile a quella qui sotto. Notate innanzitutto che i portafogli Premix, Postmix e Badbank sono stati aggiunti sulla sinistra. Le schede consentono di selezionare questi portafogli, che si comportano come i normali portafogli Sparrow, tranne per il fatto che non offrono indirizzi (quindi non è possibile ricevere direttamente). Il portafoglio esistente è denominato 'Deposit' e funziona esattamente come prima.
Considerate ora la transazione premix visualizzata. I risultati della transazione mostrano innanzitutto la commissione Whirlpool e l'importo del cambio Badbank. Successivamente, vengono visualizzati gli output premix, come Premix Output #0, Premix Output #1 ecc. Il loro valore è leggermente superiore a quello della dimensione del pool, perché i premix output sono responsabili del pagamento delle commissioni dei miners per la transazione coinjoin. Infine, si può notare la commissione del miner per la transazione premix stessa.
Una volta pronti per la trasmissione, fare clic sul pulsante Broadcast Premix Transaction. Se desiderate modificare gli UTXO inclusi o il pool selezionato, è sufficiente tornare alla tab UTXO.
Dal premix al Postmix
Una volta trasmessa la transazione Premix, il client Whirlpool si avvia automaticamente. Fare clic sul portafoglio Premix e andare nella tab UTXO. Potrebbero essere necessari alcuni secondi prima che il server rilevi la transazione Premix. Una volta fatto, dovreste vedere tutte gli output premix come non confermati. La prima transazione coinjoin inizierà dopo che la transazione premix sarà minata, quindi è necessario attendere che ciò avvenga. Una volta confermata, il client Whirlpool selezionerà uno degli UTXO da includere in un round di mixaggio. Ciò è indicato dalla barra di avanzamento che appare nella colonna centrale "Mixes". Per ulteriori informazioni sull'avanzamento del ciclo di mixaggio, è possibile passare il mouse sulla barra di avanzamento.
Una volta che il coordinatore di Whirlpool ha trovato un numero sufficiente di UTXOs disponibili da parte di altri utenti per unirsi al round, chiederà al client di Whirlpool di firmare il suo input nella transazione per poi trasmetterla. A questo punto, la barra di avanzamento scorre da sinistra a destra in attesa che il server raccolga la transazione appena trasmessa. Questa transazione trasferirà l'UTXO Premix a un nuovo UTXO nel portafoglio Postmix. Fare clic sul portafoglio Postmix a sinistra e andare alla scheda UTXO per vederlo.
Congratulazioni, la prima transazione coinjoin è stata completata! Il client Whirlpool procederà ora a selezionare altri UTXOs premix mixandoli come output postmix.
Successivi Postimix rounds
Ciascun output postmix che ha superato un turno di mixaggio ha un set di anonimato di 5 (in altre parole, una delle 5 possibilità). È un buon risultato, ma non eccezionale. L'ideale sarebbe che questo numero fosse più alto per offrire un vero anonimato. Ottenere questo risultato è molto semplice: basta tenere Sparrow in funzione con il portafoglio aperto. Il client Whirlpool continuerà a funzionare e selezionerà gli UTXOs postmix per partecipare a ulteriori round di mixaggio. Il grande vantaggio è che non comporta alcun costo aggiuntivo: l'anonimato aumenta gratuitamente!
Importante: mentre l'UTXO è in attesa di essere selezionato, è importante che il computer non si arresti in virtù delle impostazioni di risparmio energetico. Se il computer si spegne o va in standby, chiuderà unilateralmente la connessione con il coordinatore causando il fallimento del mix. Per proteggere gli altri utenti, il coordinatore bannerà temporaneamente gli UTXOs che causano il fallimento del mix più volte in un breve periodo. Disattivare la sospensione del computer durante il mixaggio utilizzando il Pannello di controllo in Windows, le Preferenze di sistema in OSX e le impostazioni di Gestione dell'alimentazione in Linux. In alternativa, è possibile installare Caffeine (Windows), Amphetamine (OSX) o Caffeine NG (Linux). Sparrow può anche evitare che il computer si addormenti mantenendo il display sveglio - vedere la funzione nel menu Strumenti.
Se volete, è possibile interrompere e avviare i mixaggi con il pulsante in fondo alla tab UTXOs. Sparrow ricorderà questa impostazione per tutti i riavvii.
Il portafoglio Postmix può essere utilizzato come un normale portafoglio per inviare transazioni. Per impostazione predefinita, utilizzerà l'impostazione "Privacy" per costruisce una transazione. Con questa impostazione, il portafoglio tenta di creare una finta coinjoin di 2 persone (nota anche come STONEWALL) quando si effettua transazione per proteggere ulteriormente l'anonimato di tutti gli output Postmix. Se ciò non è possibile (generalmente a causa di fondi insufficienti), tenete presente che combinare più UTXOs postmix per costruire una transazione indica che questi appartengono allo stesso pseudonimo riducendone l'anonimato.
Di seguito è riportato un esempio di una falsa transazione coinjoin (STONEWALL) tra due persone. I primi due output hanno lo stesso valore, uno è l'importo del pagamento e l'altro viene restituito come resto (oltre ai normali output di resto). Gli input sono accuratamente selezionati in modo che sia impossibile capire dall'esterno se due persone si sono coordinate per creare un coinjoin per aumentare la loro privacy, o se si tratta semplicemente di un pagamento con output aggiuntivi.
Approfondimento sui mix
Affinché si verifichi una coinjoin, è necessario che ci siano da 2 a 3 UTXOs premixati in ogni transazione. In questo modo si garantisce che l'entropia rimanga elevata e che non si mescolino semplicemente le stesse monete tra loro in continuazione, con scarsi benefici. Inoltre, gli UTXOs premixati forniscono le commissioni ai miners per la transazione.
In genere ci sono molti più UTXOs postmix che UTXO premix disponibili per il pool. In pratica, ciò significa che i vostri UTXOs premix saranno di solito mixati a postmix rapidamente, ma una volta nel portafoglio Postmix potrebbe passare un po' di tempo prima che avvenga una transazione postmix-to-postmix. La selezione degli UTXOs postmix per il re -mixaggio avviene in modo casuale ed è quindi soggetta a variazioni: potreste mixare i vostri UTXOs in un breve periodo, oppure aspettare un giorno per avere dei progressi. Si noti che solo un UTXO per pool è registrato per un potenziale remix alla volta. Lasciate Sparrow aperto in background e le transazioni post-mix si verificheranno man mano che gli UTXOs verranno selezionati in un round. Si noti anche che i periodi casuali tra i mix aiutano a interrompere l'analisi dei modelli.
Un maggior numero di UTXOs in un determinato pool, insieme a un ciclo di mixaggio più veloce, aumenta le possibilità di essere selezionati per un mix. Ciascun mix "rompe" i legami deterministici, mentre ulteriori mix aumentano il vostro set di anonimato futuro - forward-looking anon set - .
Per capire meglio date un'occhiate a questo articolo:
A volte può capitare di vedere un'icona di errore accanto al proprio UTXO con un tooltip di "Input rejected". In genere, questo accade quando ci sono troppi fallimenti, ad esempio quando il client viene disconnesso più volte durante un mix, causando troppi fallimenti del mix in un breve periodo di tempo. Il coordinatore di Whirlpool implementa un divieto temporaneo automatico per proteggersi da attacchi o client instabili. Tale divieto scade automaticamente dopo un certo tempo (circa 12 ore). Se volte sbloccare rapidamente uno di questi UTXO , inviare un'e-mail a help@samourai.support con i dettagli dell'UTXO in modo che possano indagare.
Manca un UTXO postmix? A volte il client Whirlpool fa avanzare l'indice degli indirizzi oltre il limite di gap configurato dal portafoglio postmix. È possibile aumentare il limite di gap accedendo alla scheda Impostazioni e facendo clic sul pulsante Avanzate. Assicurarsi di applicare dopo aver chiuso la finestra di dialogo.
Mixare sul cold storage
È anche possibile mixare direttamente in un cold wallet (compresi i portafogli multisig!). Con questa funzione, l'output di postmix andrà direttamente in un altro portafoglio Sparrow aperto di vostra scelta dopo un numero configurabile di round di mixaggio. Questo è decisamente preferibile all'invio esplicito da postmix a un altro portafoglio, che potrebbe combinare gli UTXOs e vanificare i guadagni ottenuti in termini di privacy. È possibile attivare questa funzione facendo clic sul pulsante Mix to... sotto la tabella UTXO nel portafoglio Postmix. Per garantire che i risultati delle coinjoin siano simili, sono supportati solo i portafogli Segwit nativi. È inoltre necessario che il portafoglio di cold storage sia aperto. Ciò è necessario per evitare il riutilizzo degli indirizzi.
La finestra di dialogo visualizzata consente di selezionare il portafoglio e il numero minimo di mix da completare prima di inviarli al cold wallet. Si noti che, per aumentare la privacy riducendo la potenziale analisi dei pattern, c'è una probabilità del 75% di mixare al portafoglio selezionato ogni volta che si raggiunge il numero minimo di mix. In pratica, questo significa potete lasciare Sparrow aperto, e tutti gli output post-mix appariranno nel portafoglio di cold storage selezionato dopo un certo periodo.
Poiché il cold storage wallet deve essere mantenuto aperto in Sparrow, è consigliabile bloccare l'accesso al wallet utilizzando la funzione del menu View. È possibile eseguire questa operazione anche per l'hot wallet che state utilizzando per il mixaggio; il client Whirlpool continuerà a funzionare in background.
Ulteriori client di Mix
Attualmente esistono altri due client Whirlpool: il portafoglio Android Samourai e lo strumento Samourai CLI. Samourai CLI fa parte del pacchetto Ronin Dojo node e può essere eseguito da solo o collegato allo strumento desktop Samourai GUI.
È possibile combinare lo stesso portafoglio BIP39 su uno di questi client e su Sparrow allo stesso tempo. A tal fine, è necessario regolare le impostazioni di Mix To utilizzando la finestra di dialogo descritta nella sezione precedente.
- Per mixare contemporaneamente con Sparrow e l'applicazione Samourai Wallet, modificare il campo index range su Even.
- Per mixare contemporaneamente con Sparrow e lo strumento Samourai CLI/GUI, impostare il campo index range su Odd.
In questo modo Sparrow non cercherà di mixare gli stessi indirizzi dell'altro client utilizzando indici di derivazione diversi.
Per ripristinare un portafoglio Samourai su Sparrow (o un portafoglio Sparrow Whirlpool da seed), creare un nuovo portafoglio in Sparrow utilizzando la stessa procedura descritta nella Guida rapida. Tuttavia, invece di generare un nuovo seed, inserire il seed e il passphrase da Samourai Wallet (o il backup). Una volta creato il portafoglio, è possibile aggiungere gli account Whirlpool (Premix, Postmix, Badbank) dalla scheda Impostazioni. Selezionare "Aggiungi account" in basso, quindi selezionare "Whirlpool Account" dal menu a tendina.
Conclusioni
L'uso delle coinjoin è uno dei migliori metodi disponibili per preservare la privacy. Si può dire che ogni UTXO postmix ha una buona forward-looking privacy - in altre parole, l'appartenenza dei fondi non può essere determinata dal passato. Si noti che questo non cancella le attività passate, ma consente di conservare e spendere bitcoin privatamente. Se considerato nel contesto di un ledger pubblico e aperto come quello di Bitcoin, questo aspetto è prezioso e necessario.
Se volete verificare voi stessi il grado di entropia delle vostre transazioni passate e quelle future - dopo una coinjoin date un'occhiata qui.
È altamente consigliato utilizzare il browser TOR se controllate le vostre transazioni.
Lettura molto interessante
Puoi offrire un ☕️ al Nym per la traduzione ₿
https://paynym.is/+olddust0Dc
AsiaLeone
"In the future everyone will be anonymous for fifteen minutes"
Related Posts
11 imperativi per difendere i vostri bitcoin dai moderni truffatori
Aug 02, 2024
Salvare le chiavi private nel DNA: Bitcoin come informazione
Jun 28, 2024
Lightning è il linguaggio comune dell'economia Bitcoin
Jun 21, 2024