Come funzionano le transazioni in Bitcoin?

Come funziona in dettaglio il processo di transazione Bitcoin? In questo articolo spieghiamo il processo e termini come miner awards, nonces e UTXO.

Mar 03, 2022
|

Come funzionano le transazioni Btc Kv

Punti di forza:

Una transazione Bitcoin comporta diverse fasi che avvengono dietro le quinte dopo che gli utenti hanno premuto il pulsante “invia”:

  • Creare un nuovo indirizzo Bitcoin unico.
  • Invio del pagamento.
  • Verifica della transazione.
  • Codifica delle informazioni in un nuovo blocco.
  • Convalida dei pagamenti utilizzando come input solo gli output di transazione non spesi (UTXO).

Per un approfondimento sul Bitcoin stesso, leggere Che cos’è il Bitcoin? Una guida completa per i principianti della criptovaluta.

Il processo di transazione Bitcoin dietro le quinte

Introduciamo le procedure di transazione Bitcoin con il seguente scenario:

Bob, un commerciante online, decide di accettare Bitcoin come pagamento.

Alice, un’acquirente, dispone di bitcoin e vuole acquistare merce da Bob.

Portafogli e indirizzi Bitcoin

I portafogli sono file che consentono di accedere a più indirizzi Bitcoin. Un indirizzo è una stringa di lettere e numeri, come ad esempio: 1HULMwZEPkjEPech43BeKJL1ybLCWrfDpN. Ogni indirizzo ha un proprio saldo di bitcoin e gli utenti possono creare tutti gli indirizzi che desiderano. Immaginate gli indirizzi come conti bancari che funzionano in modo un po’ diverso.

Creare un nuovo indirizzo

Il software client Bitcoin genera indirizzi Bitcoin per gli utenti. Quando Bob crea un nuovo indirizzo, in realtà sta generando una “coppia di chiavi crittografiche”, composta da una chiave privata (che solo l’utente conosce) e da una chiave pubblica (che è nota a chiunque).

Quando si firma un messaggio con una chiave privata, è possibile verificarlo utilizzando la chiave pubblica corrispondente. Il nuovo indirizzo Bitcoin di Bob rappresenta una chiave pubblica unica e la chiave privata corrispondente è memorizzata nel suo portafoglio. La chiave pubblica consente a chiunque di verificare la validità di un messaggio firmato con la chiave privata.

Invio di un pagamento

Il portafoglio di Alice contiene le chiavi private di ciascuno dei suoi indirizzi. Dice al suo client Bitcoin che vorrebbe trasferire i bitcoin all’indirizzo di Bob. Il cliente Bitcoin firma quindi la sua richiesta di transazione con la chiave privata dell’indirizzo da cui sta trasferendo i bitcoin. Chiunque sulla rete può ora utilizzare la chiave pubblica per verificare che la richiesta di transazione provenga effettivamente dal legittimo proprietario del conto.

In altre parole:

La chiave pubblica viene utilizzata per ricevere bitcoin.

La chiave privata viene utilizzata per firmare le transazioni per spendere i bitcoin.

Quando si spendono bitcoin, il proprietario attuale presenta la propria chiave pubblica e la firma digitale in una transazione Bitcoin. La transazione è firmata digitalmente da una chiave privata, che indica l’autorizzazione a spendere i fondi a cui si riferisce la transazione.

Con la chiave pubblica e la firma digitale, tutti i membri della rete Bitcoin possono verificare e accettare la transazione come valida, confermando che la persona che trasferisce i bitcoin li possedeva al momento del trasferimento.

Come i minatori fanno soldi: Premi ai minatori per la verifica delle transazioni

Supponiamo che Gary, Glenn e George siano minatori di Bitcoin. I loro computer raggruppano le transazioni degli ultimi 10 minuti in un nuovo blocco di transazioni. Ogni blocco include una transazione “coinbase” che paga 50 bitcoin al minatore vincitore, in questo caso Gary. Nel portafoglio di Gary viene creato un nuovo indirizzo con il saldo dei bitcoin appena coniati.

Inoltre, i minatori ricevono le commissioni pagate dagli utenti che inviano transazioni. La commissione è un incentivo per il minatore a includere la transazione nel proprio blocco.

Sequenza di transazioni

  • La transazione viene trasmessa alla rete Bitcoin, dove ogni partecipante convalida e propaga la transazione fino a raggiungere quasi tutti i nodi della rete.
  • La transazione viene verificata da un nodo di mining e inserita in un blocco di transazioni registrato sulla blockchain.
  • Una volta registrata sulla blockchain e confermata da un numero sufficiente di blocchi successivi, la transazione diventa parte permanente del libro mastro aperto e distribuito di Bitcoin ed è accettata come valida da tutti i partecipanti.
  • I bitcoin ricevuti dal nuovo proprietario nell’ambito della transazione possono essere spesi in una nuova transazione.

Codificare le informazioni in un blocco: Hashes crittografici

È la codifica crittografica che rende la blockchain così sicura, dove le funzioni di hash crittografico trasformano una raccolta di dati in una stringa alfanumerica di lunghezza fissa, chiamata valore di hash.

Anche minime modifiche ai dati originali cambieranno drasticamente il valore hash risultante. È essenzialmente impossibile prevedere quale set di dati iniziali creerà un valore hash specifico.

Ad esempio:

Hash crittografici

Nonces

Per creare valori hash diversi a partire dagli stessi dati, Bitcoin utilizza i nonces. Cambiando il nonce si ottiene un valore di hash molto diverso.

Transazioni Bitcoin immagine 7 nonce

I computer di mining calcolano nuovi valori hash in base a una combinazione del valore hash precedente, del nuovo blocco di transazioni e di un nonce. La creazione di hash è computazionalmente banale, ma il sistema Bitcoin richiede che il nuovo valore hash abbia una forma particolare: in particolare, deve iniziare con un certo numero di zeri.

I minatori non hanno modo di prevedere quale nonce produrrà un valore hash con il numero richiesto di zeri iniziali. Così sono costretti a generare molti hash con nonces diversi finché non trovano quello che funziona.

Ma dov’è la transazione di Alice nel Nonce?

Nel frattempo, il trasferimento di Alice a Bob rimane sepolto sotto altre transazioni più recenti. Per modificare i dettagli, chiunque dovrebbe rifare il lavoro svolto da Gary – poiché qualsiasi modifica richiederebbe un nonce vincente completamente diverso – e poi rifare il lavoro di tutti i minatori successivi, il che è quasi impossibile.

Uscita transazione non spesa (UTXO)

Prima di introdurre gli output delle transazioni non spese (UTXO), dobbiamo conoscere gli input e gli output delle transazioni Bitcoin.

Ingresso

Un input è un riferimento a un output di una transazione precedente. Tutti i valori di ingresso della nuova transazione (il valore totale delle monete delle uscite precedenti a cui fanno riferimento gli ingressi della nuova transazione) vengono sommati e il totale (meno le eventuali commissioni di transazione) viene completamente utilizzato dalle uscite della nuova transazione.

Spesso una transazione comprende più input.

Uscita

Un’uscita contiene le istruzioni per l’invio di bitcoin. L’output di una transazione include il valore che tale output avrà al momento della richiesta.

Uscita transazione non spesa (UTXO)

Poiché ogni output di una particolare transazione può essere speso una sola volta, gli output di tutte le transazioni incluse nella blockchain possono essere classificati come output di transazioni non spese (UTXO) o output di transazioni spese. Affinché un pagamento sia valido, deve utilizzare solo UTXO come input.

Ogni transazione ha almeno un ingresso e un’uscita, e ogni ingresso spende i satoshi pagati a un’uscita precedente. Ciascuna uscita attende quindi come UTXO finché un ingresso successivo non la spende. Quando il portafoglio Bitcoin di un utente indica un saldo di 10.000 satoshis, significa in realtà che ha 10.000 satoshis in attesa in uno o più UTXO.

UTXO durante le transazioni

Immaginate che qualcuno abbia usato l’indirizzo 1HULMwZEPkjEPech43BeKJL1ybLCWrfDpN per ricevere bitcoin già due volte. La transazione del 5 febbraio 2019 contiene 4.000 satoshis e quella del 9 marzo 2019 contiene 6.000 satoshis. La blockchain di Bitcoin non li aiuterà a sommare il saldo in modo tale che esista un record con 1HULMwZEPkjEPech43BeKJL1ybLCWrfDpN: 10.000. Invece, ogni volta che un utente vuole spendere i suoi bitcoin, deve sbloccare le transazioni che gli appartengono (con i bitcoin inviati alla sua chiave pubblica) una per una.

Ad esempio, per inviare 3.000 satoshis, è sufficiente sbloccare la transazione del 5 febbraio 2019 o quella del 9 marzo 2019, poiché entrambe contengono più di 3.000 satoshis.

Ma per inviare 8.000 satoshis, è necessario sbloccare entrambe le transazioni per spendere tutti i bitcoin in una nuova transazione, poiché non è consentita la spesa parziale; l’utente deve utilizzare tutti i bitcoin che ha sbloccato. Se intendevano inviare solo 8.000 satoshis, devono comunque spendere 10.000 satoshis nella nuova transazione, quindi inviare nuovamente 2.000 satoshis a un indirizzo che gli appartiene.

Parole finali – Pagare con i Bitcoin

Mentre le transazioni in Bitcoin funzionano senza problemi, i pagamenti al dettaglio nella vita reale con BTC sono ancora ostacolati dalla lentezza delle transazioni. Eppure, effettuare pagamenti effettivi con il Bitcoin è una delle funzionalità chiave del BTC previste da Satoshi Nakamoto nel libro bianco del Bitcoin. Il Layer-2 di Bitcoin, denominato Lightning Network, offre attualmente una soluzione a questo problema di scalabilità.

Per saperne di più su come effettuare pagamenti quasi istantanei con Bitcoin attraverso la Lightning Network.

Due diligence e ricerca personale

Tutti gli esempi elencati in questo articolo sono solo a scopo informativo. L’utente non deve interpretare tali informazioni o altro materiale come consulenza legale, fiscale, di investimento, finanziaria o di altro tipo. Nulla di quanto contenuto nel presente documento costituisce una sollecitazione, una raccomandazione, un’approvazione o un’offerta da parte di Crypto.com di investire, acquistare o vendere beni digitali. I rendimenti derivanti dall’acquisto e dalla vendita di attività digitali possono essere soggetti a imposte, tra cui l’imposta sulle plusvalenze e/o l’imposta sul reddito, nella vostra giurisdizione o nelle giurisdizioni in cui siete residenti a fini fiscali. Le descrizioni dei prodotti o delle caratteristiche di Crypto.com hanno uno scopo puramente illustrativo e non costituiscono un’approvazione, un invito o una sollecitazione.

Le performance passate non sono una garanzia o una previsione di quelle future. Il valore degli asset digitali può aumentare o diminuire e voi potreste perdere tutto o una parte consistente del prezzo di acquisto. Quando valutate un bene digitale, è essenziale che facciate le vostre ricerche e la vostra due diligence per giudicare al meglio, poiché ogni acquisto sarà di vostra esclusiva responsabilità.

Tag

bitcoin

crypto

cryptocurrencies

hashes

nonces

payments

transactions

UTXO

Condividi con gli amici

Che aspetti a iniziare la tua avventura crypto?

Ottieni subito la guida dedicata alla configurazione dell'account Crypto.com

Cliccando il pulsante Inizia riconosci di aver letto l'Avviso sulla privacy di Crypto.com dove illustriamo come usiamo e proteggiamo i tuoi dati personali.

Common Keywords: 

Ethereum / Dogecoin / Dapp / Tokens