Cosa sono le UTXO e perché sono importanti

Tutti i portafogli bitcoin necessitano di un certo livello di manutenzione per essere gestiti correttamente. Capire cosa siano le UTXO è il primo fontamentale passo in questa direzione. | Tom Honzik

Cosa sono le UTXO e perché sono importanti
Cosa sono le UTXO e perché sono importanti

Tutti i portafogli bitcoin necessitano di un certo livello di manutenzione per essere gestiti correttamente. Capire cosa siano le UTXO è il primo fontamentale passo in questa direzione.

Traduzione a cura di @Wastedtime dall'originale di Tom Honzik- pubblicato il 17 giu 2022

Anche se molti utenti potrebbero non rendersene conto, tutti i portafogli bitcoin necessitano di un certo livello di manutenzione per essere gestiti correttamente. Se state usando un portafoglio custodian, ci pensa lui a prendersi cura di queste cose. Tuttavia, quando tenete i vostri bitcoin in un portafoglio non custodian, nessuno è responsabile della gestione del vostro portafoglio tranne voi. Per mantenere correttamente il vostro portafoglio, dovrete sapere cosa sono gli UTXO e come gestirli.

Da un grande potere...

Molte persone sono desiderose di iniziare con un portafoglio non custodian perché il potere che si acquisisce quando decidete di "essere la vostra banca" è eccitante e liberatorio.

Tuttavia, come dice il vecchio adagio: da un grande potere derivano grandi responsabilità. È un errore pensare che potete semplicemente depositare bitcoin in un portafoglio di custodia personale e dimenticarvene. Comprendere un po' di più sul funzionamento delle UTXO di bitcoin può aiutarvi a preservare la vostra privacy e ridurre la quantità di bitcoin che spendete per le commissioni di transazione.

Che cos'è un UTXO?

Non siete soli se siete tentati di evitare di capire un qualcosa chiamato "UTXO": può sembrare un po' scoraggiante. Probabilmente non aiuta sapere che UTXO è l'abbreviazione di "output di transazione non spesa" (Unspent Transaction Output). Se siete preoccupati di dover essere degli informatici per continuare a leggere, vi assicuro che in pochi paragrafi tutto avrà un senso.

Un conto in banca contro un salvadanaio

Il mondo della finanza tradizionale può fornirci grandi analogie per capire come funziona bitcoin. Per aiutare a spiegare il ruolo svolto dalle UTXO, iniziamo con due diversi modelli mentali per la conservazione dei contanti: un conto bancario e un salvadanaio.

Se aprite un conto bancario e depositate dei contanti in esso, i vostri contanti vengono immediatamente mescolati a tutti gli altri contanti detenuti dalla banca. Potrebbero esserci migliaia di clienti in quella banca, quindi non ha senso per loro tenere i contanti di ogni persona in una pila separata. Mischiano tutto e prendono nota di quanto è vostro. Non fa differenza se depositate una banconota da $ 100 o tre banconote da $ 20 e quattro banconote da $ 10. Tutto ciò che conta è che l'importo totale depositato sia di $ 100. Quando provate a prelevare i vostri $ 100, non vi daranno necessariamente gli stessi tagli di banconote che avete depositato.

C'è una differenza importante se usate un salvadanaio per conservare i vostri contanti. Se mettete cinque banconote da $ 20 nel vostro salvadanaio, il contenuto di $ 100 rimane in quella forma: cinque banconote da $ 20. Se riprendete i $ 100, non riceverete magicamente una sola banconota da $ 100, avrete comunque cinque banconote da $ 20. Inoltre, se voleste pagare a qualcuno $ 10 dei $ 100 nel vostro salvadanaio, c'è un problema: la vostra banconota più piccola vale $ 20, quindi dovreste dividerla in spiccioli in qualche modo.

Il modello di conto bancario è un servizio di custodia che trattiene i vostri contanti per voi, ed è analogo a un exchange che detiene i bitcoin delle persone: i bitcoin di tutti sono mescolati insieme.

Il modello di salvadanaio è invece contante in autocustodia, che è il modello mentale corretto da utilizzare quando si immagina bitcoin nei portafogli non custodian.

C'è una differenza fondamentale tra il deposito di 0,9 BTC nel vostro portafoglio in una transazione e il deposito di 0,1 BTC nel vostro portafoglio nove volte. Anche se il totale è di 0,9 BTC in entrambi i casi, ogni deposito rimane un'entità separata all'interno del vostro portafoglio bitcoin. Ognuna di queste entità è una UTXO.

Gli UTXO di Bitcoin non sono limitati da un taglio specifico

Quando effettuate un singolo deposito di 0,9 BTC in un portafoglio, il risultato è che ora avete un singolo UTXO di 0,9 BTC. Se invece effettuate nove depositi separati di 0,1 BTC ciascuno, avete nove UTXO per un totale di 0,9 BTC. È simile a mettere nove banconote da $ 10 in un salvadanaio, contro una singola banconota da $ 90.

Un momento, cosa? Una banconota da $ 90? Giusto. L'analogia con il denaro contante e il salvadanaio non funziona perfettamente, perché le banconote in genere esistono in tagli fissi che sono multipli comuni di 5 e 10. Le UTXO di Bitcoin possono esistere in qualsiasi “taglio” o importo. Potete effettuare un deposito su un portafoglio bitcoin per 3.0610477 BTC, e così facendo avreste un singolo UTXO esistente in quel taglio.

Allora perché importa se avete un UTXO di 0,9 BTC o nove UTXO di 0,1 BTC? Ci arriveremo tra un momento.

L'output della transazione non spesa (Unspent Transaction Output)

Innanzitutto, diamo un'occhiata da dove viene il nome "output di transazione non spesa". Per qualsiasi transazione bitcoin (o qualsiasi transazione, del resto) ci sono input e output. Ci sono mittenti e destinatari. Gli input sono i precedenti proprietari del denaro e la quantità di denaro che stanno inviando. Gli output sono i nuovi proprietari del denaro e l'importo che stanno ricevendo. Potrebbe esserci un solo input o più input per qualsiasi transazione, così come un solo output o più output.

Con questo in mente, il linguaggio "output della transazione" dovrebbe avere un po' più di senso; quando depositate bitcoin nel vostro portafoglio, il vostro portafoglio è un destinatario della transazione e quindi riceve un output. La parola "non speso" significa semplicemente che da allora non avete più spostato il bitcoin e l’importo rimane quindi nel vostro "salvadanaio".

Perché le UTXO sono importanti?

Se lasciate i vostri bitcoin nelle mani di un custode, non dovete preoccuparvi delle UTXO. Proprio come i contanti in un conto bancario, i tagli effettivi delle banconote potrebbero essere di qualsiasi importo, perché i vostri contanti sono mescolati con quelli di tutti gli altri. Le UTXO devono ancora essere prese in considerazione dal custode, ovviamente, per i motivi che tratteremo di seguito. Ma voi, come utente finale, non dovete pensarci: tutto ciò che avete è un IOU (I Owe You, una sorta di “pagherò”).

Tuttavia, le UTXO nel vostro portafoglio non custodian sono molto importanti per voi, per motivi simili a quelli per i quali i tagli delle banconote nel vostro salvadanaio potrebbero essere rilevanti per voi. Quando pagate qualcuno con i contanti nel vostro salvadanaio, avete il passaggio aggiuntivo di decidere quali banconote utilizzerete e se avrete bisogno del resto. Quando inviate bitcoin a qualcuno da un portafoglio che controllate, avete il passaggio aggiuntivo di selezionare UTXO, anche se non le conoscete.

Se avete già speso bitcoin fuori dai portafogli custodian e vi state chiedendo perché non avete mai dovuto selezionare UTXO, è perché molte interfacce dei portafogli cercano di rendere le cose semplici e facili da usare. Essi infatti automatizzeranno la selezione delle vostre UTXO per voi, perché non vogliono che i nuovi utenti siano sopraffatti dalla complessità. Tuttavia, per assumere la vera proprietà dei vostri bitcoin e avere il controllo completo sulle decisioni prese, molte interfacce di portafoglio avranno una funzionalità "avanzata" per la selezione delle UTXO, spesso chiamata “coin control” (controllo delle monete). Se l'app del portafoglio che usate non offre il controllo delle monete, dovreste utilizzare un altro portafoglio in un'altra app che vi permetta di farlo.

La selezione manuale delle UTXO utilizzate per ciascuna transazione può fare una grande differenza in due modi principali:

Privacy: le UTXO selezionate possono determinare le informazioni che condividete con altri (ad es. il destinatario) sul saldo del vostro portafoglio e sulla cronologia delle transazioni.

Commissioni di transazione: la gamma delle dimensioni delle vostre UTXO può anche influenzare l'importo che pagherete in commissioni di transazione.

Diamo un'occhiata a entrambi.

Privacy

In un esempio precedente, abbiamo esaminato la possibilità di avere nove UTXO di 0,1 BTC o un UTXO di 0,9 BTC. E se voleste inviare a qualcuno 0,2 BTC? Come sarebbe il processo per ogni caso?

Nel primo caso, con nove UTXO di 0,1 BTC, potete prendere un paio di quelle UTXO per fungere da input per la transazione e inviarle al destinatario. Quella persona otterrebbe una singola UTXO di 0,2 BTC. È abbastanza semplice:

Nel secondo caso, avete solamente la singola UTXO di 0,9 BTC, quindi dovrete ottenere indietro del resto. Se inviate 0,2 BTC al destinatario, vorrete anche inviare gli altri 0,7 BTC al vostro portafoglio (come nuova UTXO su un nuovo indirizzo del portafoglio):

Questo metodo ha lo svantaggio di rivelare più informazioni sul vostro portafoglio. Ricordate che la blockchain di bitcoin è un registro pubblico, quindi tutte le transazioni sono visualizzabili. La persona che ha ricevuto 0,2 BTC può cercare la transazione e scoprire che avete inviato 0,7 BTC da qualche parte come output aggiuntivo. Può ragionevolmente presumere che 0,7 BTC sia probabilmente il vostro resto da una UTXO più grande di 0,9 BTC, quindi avete essenzialmente rivelato a questa persona che avete almeno altri 0,7 BTC nel vostro portafoglio. Inoltre, potrebbero essere in grado di tracciare questa nuova UTXO di 0,7 BTC e monitorare le transazioni future di cui farà parte.

Il resto è spesso inevitabile perché è raro che voi abbiate UTXO che si sommano esattamente per formare l'importo che desiderate inviare. Anche nella situazione con nove UTXO di 0,1 BTC ciascuno, se stavate cercando di inviare a qualcuno un importo alternativo di 0,05 o 0,25 BTC, sarebbe necessaria una modifica. Tuttavia, il resto che invierete a voi stessi sarebbe più piccolo, quindi verrebbe rivelato meno sul saldo del vostro portafoglio. In generale, scegliere UTXO più piccole piuttosto che quelle più grandi quando si invia bitcoin aiuta a preservare la vostra privacy. Tuttavia, avere un sacco di UTXO di piccole dimensioni nel vostro portafoglio ha un costo, di cui parleremo in seguito.

Commissioni di transazione

Come vengono calcolate le commissioni di transazione di bitcoin? Se vi siete persi l'articolo di Buck Perley, è un modo fantastico per approfondire questo argomento. La versione breve è che ci sono due fattori che decidono le commissioni che pagherete per elaborare la vostra transazione:

1. La commissione che avete scelto (costo per byte di dati)

2. La quantità di dati richiesta dalla vostra transazione

Mentre la maggior parte dei portafogli bitcoin vi consente di selezionare la commissione che siete disposti a pagare, ciò su cui avete meno controllo è la quantità di dati che utilizzerà la vostra transazione.

I dati richiesti per la vostra transazione dipendono da diversi fattori, in particolare dal numero di input e output. Per la maggior parte delle transazioni regolari, il numero di output è solo uno o due (se ci sono modifiche), ma il numero di input dipende interamente da quanti UTXO state selezionando dal vostro portafoglio.

Se avete una UTXO di 0,9 BTC e volete inviarne 0,6 BTC a un amico, avrete un solo input:

Farlo in questo modo significherà una commissione significativamente inferiore rispetto a se doveste utilizzare sei input sotto forma di UTXO da 0,1 BTC:

Infatti, poiché le commissioni sono determinate dalla quantità di dati coinvolti piuttosto che dalla quantità di bitcoin, in genere paghereste una commissione più alta per inviare quei sei UTXO di 0,1 BTC, rispetto a quella che paghereste per inviare una UTXO di 100 bitcoin interi!

Più UTXO tenete nel vostro portafoglio, più commissioni pagherete quando arriverà il momento di spostarle. Se il mercato delle commissioni si riscalda nel periodo di tempo durante il quale dovete inviare i vostri bitcoin da qualche parte, avere molti UTXO più piccoli può diventare costoso.

Quindi come gestisco le mie UTXO?

Ci sono dei compromessi per decidere quante UTXO desiderate tenere nel vostro portafoglio e quali UTXO sceglierete quando inverete bitcoin a un nuovo indirizzo. Come spiegato sopra, il bitcoin condensato in UTXO più grandi può aiutarvi a risparmiare sulle commissioni, ma può anche ridurre la vostra privacy. Nel frattempo, bitcoin in blocchi UTXO più piccoli può aiutare a offuscare il saldo del vostro portafoglio, ma può anche portare a commissioni di transazione più elevate in futuro.

Decidere quale sia la vostra priorità può aiutarvi a scegliere una strategia per come potreste voler gestire gli UTXO, che è una parte essenziale dell'autocustodia responsabile.

Approfondiremo le strategie di gestione degli UTXO specifiche per determinate persone in futuro, ma sostanzialmente ci sono tre tecniche principali per gestire gli UTXO:

• Controllo della frequenza dei vostri depositi

• Esecuzione di consolidamento delle UTXO

• Esecuzione di CoinJoin

Controllo della frequenza dei depositi

La prima tecnica a vostra disposizione è la più semplice: potete controllare la frequenza dei vostri depositi nel vostro portafoglio di custodia personale. Ogni deposito unico sul vostro portafoglio crea una nuova UTXO, quindi se acquistate bitcoin ogni giorno su un exchange e poi lo inviate direttamente in autocustodia, potreste finire per avere a che fare con molte più UTXO di quanto vorreste. Invece, potreste acquistare bitcoin ogni giorno, ma spostarli sul vostro portafoglio solo una volta alla settimana o due volte al mese. In questo modo avreste UTXO che si accumulano a una velocità molto più lenta.

Eseguire un consolidamento delle UTXO

La seconda tecnica consiste nell'eseguire un consolidamento delle UTXO. Se avete nove UTXO da 0,1 BTC ciascuna, potete consolidarle. Inviate semplicemente tutte e nove le UTXO a un nuovo indirizzo sul vostro portafoglio. Il risultato finale sarà un singolo UTXO di 0,9 BTC nel vostro portafoglio (meno le commissioni di transazione), senza che alcun bitcoin lasci la vostra custodia. Se eseguite un consolidamento quando il costo delle commissioni è basso, potreste risparmiare cifre interessanti rispetto al dovere spostare nuovamente i bitcoin a un tasso di commissione più alto in un altro momento! Tuttavia, tenete presente che il consolidamento di queste UTXO ora le esporrà come collegate allo stesso utente (a chiunque stia monitorando la blockchain).

Eseguire una CoinJoin

La terza tecnica, chiamata CoinJoin, è una procedura più avanzata che aumenta la vostra privacy coordinando una spesa mista insieme ad altre parti. Le UTXO risultanti rendono molto più difficile il tracciamento dei vostri bitcoin. Questa azione in genere richiede un software specializzato e lo tratterò in modo approfondito in un prossimo articolo.

Scoprite di più su come prendere il controllo dei vostri bitcoin

Questo è solo l'inizio: c'è molto altro da sapere sulla complessità della gestione delle UTXO per persone e situazioni diverse e tratteremo più dettagliatamente questo argomento in futuro. Nel frattempo, registratevi per partecipare a uno dei nostri webinar dal vivo per saperne di più sulle basi di bitcoin e su come assumervi la responsabilità della gestione dei vostri bitcoin eliminando i singoli punti di attacco con un “forziere” multisig di Unchained.

Tom Honzik