Il white paper su Bitcoin spiegato in modo semplice - Capitolo 2

Disponibile come podcast
Condividi l'articolo:

Nel L'articolo precedente, abbiamo studiato insieme le prime parti del Bitcoin White Paper. Abbiamo scoperto che lo scopo originale di Bitcoin è offrire un sistema di pagamento elettronico peer-to-peer basato su prove crittografiche piuttosto che sulla fiducia.

Abbiamo anche esaminato i principi spiegati nelle prime parti del Libro bianco:

  • firme digitali;
  • Il server di timestamp distribuito;
  • E una prova del lavoro.

In questo secondo capitolo, proseguiamo insieme la nostra esplorazione del Libro bianco dalla parte 5, da dove eravamo interrotti, alla conclusione del documento.

Puoi anche scaricare Il White Paper di Bitcoin nella sua versione originale in inglese, oppure La traduzione di Arnaud-François Fausse in francese.

Rete

In questa quinta parte del White Paper, Satoshi descrive come funzionano i nodi Bitcoin. Nota che all'epoca la difficoltà del proof-of-work su Bitcoin era bassa. Il mining non era quindi ancora industrializzato come lo è oggi e ogni nodo ha preso parte automaticamente a questo processo.

Satoshi riassume magnificamente il funzionamento di base del sistema Bitcoin in pochi punti:

  1. Le nuove transazioni vengono trasmesse a tutti i nodi;
  2. Ogni nodo raccoglie le nuove transazioni in un blocco;
  3. Ogni nodo lavora per trovare un proof-of-work difficile per il suo blocco;
  4. Quando un nodo trova un proof-of-work, trasmette il blocco a tutti gli altri nodi;
  5. I nodi accettano il blocco solo se tutte le transazioni sono valide e non sono già state spese;
  6. I nodi esprimono la loro accettazione del blocco lavorando per creare il blocco successivo nella catena, utilizzando l'impronta digitale del blocco accettato come impronta precedente.

Gli altri due paragrafi di questa sezione descrivono come funziona la rete Bitcoin stessa. In particolare, Satoshi ci spiega il comportamento che devono essere adottati dai nodi in caso di divisione della catena.

➤ Scopri di più su divisioni, blocchi obsoleti e meccanismi di rete.

Bonus di risultato

Poiché il proof-of-work di Bitcoin stabilisce un costo in termini di tempo di CPU ed elettricità per moltiplicare i voti, abbiamo dovuto trovare un incentivo a partecipare al mining. Questa sezione descrive come i minatori possono essere pagati con Bitcoin.

Inizialmente, questo incentivo economico si basa sulla creazione di nuovi bitcoin ex nihilo. Ciò consente di creare un bonus di rendimento, garantendo al contempo la circolazione dell'offerta di moneta. Il vantaggio di questo processo di distribuzione è che non richiede l'intervento di un'autorità centrale.

Satoshi ci dice che questo incentivo potrebbe anche, a lungo termine, basarsi esclusivamente sulle commissioni di transazione in Bitcoin. Grazie a ciò, si può creare un sistema monetario completamente non inflazionistico.

📌 Lo sapevi? Anche se l'idea di un'offerta di moneta limitata è discussa in questa sezione, va notato che Satoshi Nakamoto non menziona mai il famoso limite di 21 milioni nel White Paper di Bitcoin.

Questo incentivo viene distribuito al minatore attraverso la prima transazione in ogni blocco. È una transazione speciale, chiamata «coinbase», che consente al minatore vincente di riscuotere le commissioni di transazione e creare nuovi bitcoin.

➤ Scopri di più sul dimezzamento dei Bitcoin.

Richiesta di spazio su disco

In questa settima parte, possiamo scoprire come vengono costruiti i blocchi Bitcoin. Hanno una piccola intestazione con metadati. Le transazioni, invece, sono strutturate con un accumulatore crittografico chiamato «Merkle Tree». In questo modo, puoi ottenere un riepilogo molto piccolo di tutte le transazioni in un blocco. Questo digest, chiamato «Merkle Root», è incluso nell'intestazione di ogni blocco.

Nota che dall'implementazione di SegWit nel 2017, ora ci sono 2 diversi alberi Merkle nello stesso blocco Bitcoin.

➤ Scopri di più sulla creazione di un blocco Bitcoin.

Verifica dei pagamenti semplificata

Utilizzando il Merkle tree per organizzare le transazioni in un blocco, gli utenti Bitcoin possono scegliere di non eseguire un nodo completo per risparmiare spazio di archiviazione. Hanno la possibilità di mantenere solo l'intestazione di ogni blocco, pur mantenendo la possibilità di verificare ogni transazione, richiedendo una prova ai nodi completi.

Questa opzione è ciò che ora chiamiamo nodo leggero o nodo SPV (Simplified Payment Verification).

Nell'ultimo paragrafo di questa parte, Satoshi ci mette comunque in guardia sulla necessità di fiducia che richiede questo tipo di nodo leggero rispetto a un nodo intero.

Combinazione e separazione dei valori

La nona parte del White Paper descrive come le monete bitcoin possono essere gestite all'interno di una transazione. Apprendiamo che è possibile unire e dividere monete all'interno della stessa transazione.

Le voci delle transazioni definiscono quali monete bitcoin vengono utilizzate per pagare. In cambio del consumo di UTXO come input, è possibile creare nuovi UTXO come output. Queste uscite rappresentano quindi le destinazioni di pagamento.


Ciò significa che la somma degli output di una transazione Bitcoin deve essere inferiore o uguale alla somma degli input. La differenza tra entrate e uscite rappresenta le commissioni di transazione che possono essere rigenerate dal minatore.

Vita privata

In questa decima parte, Satoshi Nakamoto spiega il modello di privacy del protocollo Bitcoin.

Ci dice che nel sistema bancario tradizionale, la privacy degli utenti viene mantenuta poiché le transazioni non vengono trasmesse pubblicamente. In altre parole, quando paghi la tua baguette con la tua carta di credito, solo la banca è a conoscenza del tuo pagamento.

Il problema con il protocollo Bitcoin è che richiede un annuncio pubblico di tutte le transazioni esistenti. Questo è ciò che consente di evitare la doppia spesa. Quindi, il modello di privacy di Bitcoin si basa sulla separazione tra l'identità degli utenti e le loro transazioni.

Infine, l'ultimo paragrafo di questa parte 10 descrive come potremmo, come utente, migliorare la nostra privacy. Spiega che una nuova coppia di chiavi crittografiche potrebbe essere utilizzata per qualsiasi nuova transazione. Ecco perché oggi ti consigliamo di utilizzare un nuovo indirizzo vuoto ogni volta che ricevi un pagamento in bitcoin.

Satoshi ci informa inoltre che è impossibile evitare un collegamento tra monete diverse se vengono utilizzate come input per la stessa transazione. Questo è ciò che abbiamo chiamato nella parte precedente la «fusione» degli UTXO. Questa euristica di tracciamento onchain è ora nota con l'acronimo «CIOH» che sta per «Common-Input-Ownership heuristic».

Quest'ultimo paragrafo dimostra tutta la lungimiranza di Satoshi Nakamoto, poiché ancora oggi, il riutilizzo degli indirizzi e il CIOH sono le due principali euristiche utilizzate dalle società di analisi della catena per tracciare le transazioni. Ciò dimostra che aveva già una conoscenza approfondita del suo protocollo e delle sue implicazioni future.

Calcoli

L'ultima parte del white paper è probabilmente la più complessa di tutte. Satoshi ci mostra uno scenario in cui un utente malintenzionato tenta di spendere due volte i suoi bitcoin danneggiando il primo destinatario del pagamento nel processo.

Ad esempio, supponiamo che Oscar (l'aggressore) abbia inviato 2 bitcoin ad Alice. La sua transazione è inclusa nel blocco n. 403. Successivamente, Oscar prova a spendere nuovamente questi stessi 2 bitcoin, quando normalmente non li ha più, per inviarli a Bob.

Per fare ciò, Oscar deve ripetere il blocco n. 403 modificando la transazione di pagamento su Alice, anche se è già confermata nella blockchain. Proporrà un blocco alternativo che non sarà accettato dalla catena onesta. Deve quindi rifare tutte le prove del lavoro già svolto sulla catena onesta, a partire dal blocco n. 403, per cercare di superarlo. Se questo attacco avrà successo, la conseguenza è che Alice avrà accettato il pagamento di Oscar, ma alla fine rimarrà senza Bitcoin.

In quest'ultima parte, Satoshi vuole dimostrare che la difficoltà di questo attacco aumenta esponenzialmente con l'aggiunta di nuovi blocchi rispetto a quello osservato (n. 403 nel nostro esempio). L'obiettivo è riuscire a determinare un numero ragionevole di conferme in base alle quali il destinatario di una transazione possa considerarla probabilisticamente immutabile. Per modellare la probabilità di successo di questo attacco, Satoshi determina che i progressi dell'attaccante seguono una legge di Poisson.

Ci dà quindi la probabilità che l'attaccante riesca nel suo attacco (p), in base al numero di blocchi estratti su quello osservato (z) e assumendo una quota del 10% della potenza di calcolo totale detenuta dall'attaccante (q).

Esegue la modellazione una seconda volta, questa volta assumendo che l'aggressore abbia il 30% della potenza di calcolo totale della rete.

Come puoi vedere, la possibilità di successo di questo attacco (p) diminuisce molto rapidamente con ogni nuovo blocco estratto. Dopo un certo numero di blocchi, questa probabilità diventa ridicolmente bassa. Questo è soprattutto il motivo per cui oggi ti consigliamo di attendere 6 conferme per considerare immutabile una transazione Bitcoin. Se l'attaccante non è in grado di mantenere una potenza di calcolo superiore al 50% della potenza totale della rete, non sarà in grado di eseguire questo tipo di attacco.

Il sistema è sicuro fintanto che i nodi onesti controllano collettivamente più potenza della CPU rispetto a quella di ciascuno dei gruppi di nodi dell'attaccante cooperativo.

Conclusione

Per concludere il suo articolo, Satoshi Nakamoto ricorda che l'obiettivo di Bitcoin è offrire un sistema di transazioni elettroniche che non richieda alcuna forma di fiducia. Ricorda inoltre che il suo protocollo consente di risolvere il problema della doppia spesa in un sistema monetario peer-to-peer.

La rete è robusta nella sua semplicità non strutturata.

Ci spiega anche che i nodi Bitcoin possono lasciare liberamente la rete e unirsi ad essa concordando la catena che ha la maggior quantità di lavoro accumulato.

Infine, Satoshi cita i riferimenti che gli hanno permesso di arrivare a questa riflessione. In particolare, scopriamo il lavoro di Wei Day su B-Money, uno degli antenati di Bitcoin che non ha mai visto la luce. Tra questi riferimenti, c'è anche il lavoro di Adam Back sul protocollo Hashcash, il sistema di resistenza agli attacchi denial of service che ha ispirato il proof of work di Bitcoin.

Questo breve libro di sole 9 pagine ci spiega il funzionamento e gli obiettivi di Bitcoin in modo chiaro e conciso. Anche se il protocollo si è evoluto molto dal 2008, indipendentemente dall'azione del suo creatore, le linee guida principali rimangono invariate. È quindi sempre interessante tornare a questo Libro bianco e ai pochi messaggi che Satoshi Nakamoto ci ha lasciato sui forum online prima di lasciare il progetto nell'aprile 2011.

➤ Scopri il primo capitolo di questa serie sul White Paper di Bitcoin.

Disponibile come podcast

Riepilogo

Condividi l'articolo:

Potrebbero piacerti questi articoli

Bitstack SAS, una società iscritta nel Registro del Commercio e delle Società di Aix-en-Provence con il numero 899 125 090, con il nome commerciale Bitstack, è registrata come agente di Xpollens - un istituto di moneta elettronica approvato dall'ACPR (CIB 16528 - RCS Nanterre n. 501586341, 110 Avenue de France 75013 Parigi) - presso l'Autorità di controllo e risoluzione prudenziale («ACPR»).») con il numero 747088 e approvato come Crypto-Asset Service Provider («PSCA») presso l'Autorité des Marchés Financiers («AMF») come scambio di criptovalute con fondi, lo scambio di criptoasset per altri cryptoasset, esecuzione di ordini di criptoasset per conto dei clienti, custodia e amministrazione di criptoasset per conto dei clienti e fornitura di servizi di trasferimento di criptovalute per conto dei clienti con il numero A2025-003, la cui sede principale si trova al 100 Impasse des Houillères 13590 Meyreuil.

L'investimento in asset digitali comporta il rischio di perdita parziale o totale del capitale investito.
Le performance passate non sono garanzia di performance future.
SCARICA
Bitstack