Cos’è bitcoin core

Cos’è bitcoin core

Cos’è bitcoin core

Oltre ad essere il wallet primordiale e più famoso, con il concetto di bitcoin core si intende il progetto open source iniziato dal suo creatore Satoshi e lasciato in eredità all’intera comunità che sviluppa le implementazioni di bitcoin.

Il tutto si svolge alla luce del sole, in modalità open source appunto, e con l’apporto di più utenti da tutto il mondo.

Prima di essere implementato ed accettato dall’intera comunità, una singola feature può richiedere anni di testing prima che sia effettivamente implementata nella mainnet , ovvero il protocollo ufficiale di bitcoin con la sua blockchain.

BIP

Tutte le nuove proposte degne di nota vengono catalogate con un progressivo seguito dal acronimo BIP – Bitcoin Proposal Improvement. 

Ad esempio con BIP0032 ci si riferisce all’implementazione ed accettazione dei wallet deterministici HD in cui è possibile attraverso un seme derivare la coppia di chiavi pubbliche e private

A solito in un progetto di questo tipo, gli sviluppatori sono incentivati a migliorare un prodotto di cui detengono “delle quote” – allo stesso modo delle stock option – e a lavorare attraverso donazioni dalla comunità stessa.

Scaricando il wallet ufficiale, ed installandolo sul computer si può di fatto creare un full node di bitcoin core. Si scaricherà infatti l’intera blockchain – l’intero processo dipenderà dalle prestazioni del proprio computer – e potrà mettersi fino a 2 settimane per sincronizzarsi e richiede almeno uno spazio sul disco almeno pari all’attuale stato della blockchain ( 350 Gb). Qui una guida completa di come crearsi un nodo personale.

Una volta che ha scaricato completamente la blockchain, ovvero si è sincronizzato al pari degli altri peer connessi alla rete, puoi farlo diventare un nodo validatore della rete.

bitcoin core è alla base del concetto più ampio di bitcoin e del suo ecosistema

Cosa significa avere un nodo bitcoin proprio?

Avere il registro di tutte le transazioni mai avvenute ed essere certi di averlo corretto aumenta la resilienza dell’intera rete. Infatti se qualche governo o ente privato ( hai pensato a Visa / Mastercard vero? ) volesse mettersi in mezzo e danneggiare il sistema, dovrebbe entrare simultaneamente in ogni struttura dove sono presente i nodi e scollegarli fisicamente dalla rete. Capisci che più nodi ci sono più questo è praticamente impossibile.

Validare la rete, non vuol dire generare nuovi blocchi, nota bene. Un conto sono i miner che devono risolvere puzzle crittografici attraverso una determinata potenza di calcolo, messi in competizione tra di loro, per trovare una soluzione che li porti a ricevere la ricompensa per la “minazione” del successivo blocco. Se hai intenzione di metterti a minare ora, purtoppo ho una brutta notizia: non per nulla facile.

Ci vogliono infatti investimenti iniziali di hardware e una quantità di energia per poterli far funzionare che solo grandi imprese possono permettersi. O nazioni – leggi Russia ultimamente.

Quello che fa un nodo, quando è reso pubblico, oltre che scaricare i dati li può anche inviare in uscita. Ovvero passarsi le informazioni tra gli altri nodi della rete. Se infatti io volessi creare dal nulla un blocco in più, il resto della rete si accorgerebbe subito che quel blocco siccome è condiviso solo da me e non da altri probabilmenente non è affidabile e quindi verrà scartato.

Ecco quindi che se un’entità controllasse la maggior parte dei nodi, avrebbe la possibilità di falsare il corso dei blocchi introducendoli a proprio piacimento alcuni che conterrebbero transazioni fasulle.

Questa possibilità e resa difficile dal fatto che la facilità con qui può essere costruito un nodo pubblico è sempre più facile ed anche se non vuoi farlo direttamente sul tuo computer, ti basta un investimento di circa 200€ con un Raspberry, un Hard Disk e Umbrel à ho fatto un articolo a riguardo qui.

Il nodo pubblico è a tutti gli effetto un software wallet, anche se è sconsigliato mantenerci dei fondi perché più vulnerabile di altri. Quindi se hai intenzione di scaricarti il wallet ufficiale di bitcoin core ( e aprire le porte in entrata ed uscita sul router 8333 in modo da permettere la trasmissione anche in uscita) ti consiglio di non caricarci dei fondi. Se invece usi Umbrel, il tuo nodo seppur pubblico avrà un indirizzo .onion e girerà quindi sulla rete Tor avendo quindi una maggiore garanzia di anonimato e sicurezza.

Ovviamente per poter essere efficiente il nodo dovrebbe poter essere lasciato acceso sempre.

Ho fatto un calcolo di quanto consuma tener acceso un raspberry P4 tutto l’anno : 13€.

Un costo decisamente accettabile.

[ 5V * 3° = 15 W * 24 ore = 360W * 365 gg/anno = 130 KWh * 0.1 € /kwh = 13 € ]

Certo se montiamo il wallet di bitcoincore sul nostro computer che usiamo ogni giorno, sicuramente consumerà più corrente con il fatto di doverlo tenere acceso sempre ( se si vogliono fare le cose bene).

Nulla vieta, e ho fatto così per un po’ di tempo, che solo al momento in cui usavo il computer, accendevo contestualmente il bitcoin core, e dopo essersi scaricato i blocchi che mancavano all’appello durante la sua assenza ( spegnimento del computer), è andato in pari e incomincia a trasmettere pacchetti in unscita.

Cosa significa quindi full node?

Letteralmente nodo pieno – si ma di blocchi si intende.

Cioè che abbia salvato nel suo hard disk l’intera blockchain fino all’ultimo blocco minato.Basterebbe che venisse salvato uno solo di questi nodi per poter ricostruire tutto lo storico.

Resilienza vuol dire infatti anche questo: aumentare la resistenza d’insieme.

Se si riuscisse ad interrompere internet ora in questo momento, nessun nodo riuscirebbe a comunicare più con un altro, chiaro. Così come tutte le altre funzionalità di internet però – e non riusciresti a comprare ugualmente con il POS…

In ogni caso, distruggendo le teorie complottiste, una volta ripresa la connessione i nodi tra di loro accerterebbero che la maggioranza tra di loro hanno la stessa sequenza di blocchi ( e le stesse transazioni al loro intero) che combaciano le une con le altre e concluderebbero che quella è la blockchain esatta.

Non importare le tue chiavi in un nodo pubblico bitcoin core
Non importare le tue chiavi in un nodo pubblico bitcoin core

Cosa ci posso fare con un full node di bitcoin core?

Oltre come abbiamo visto ad aumentare la decentralizzazione della rete, principio cardine alla base della filosofia di bitcoin core, avendo noi la blockchain scaricata sul nostro hard disk, possiamo andare ad interrogare quella rispetto a quella ospitata ( hostata) su qualche altro nodo.

Una delle operazioni che si fanno maggiormente è infatti quella di andare a vedere sull’explorer il saldo di un indirizzo o se è confermata una transazione. Ad esempio su un sito come questo https://www.blockchain.com/explorer oppure questo che preferisco https://mempool.space/

Nel campo di ricerca di possono mettere:

Hash della transazione
Un indirizzo pubblico
Il numero di un blocco

Come facciamo ad avere la garanzia ( = il livello di paranoia ) che quello che stiamo interrogando siano dati corretti e non falsati?

Se lo facessimo con un nodo che abbiamo costruito noi, sappiamo l’affidabilità di quest’ultimo e possiamo essere molto più sicuri che quello che chiediamo:

1. Sia veritiero
2. Non venga propagato dalla rete
3. Non finisca in qualche script in ascolto

Ecco quindi un altro punto per cui valga la pena avere un nodo pieno in proprio.

Quando invio una transazione, posso decidere da che nodo inoltrarla alla rete prima di essere inclusa in un blocco. Di default se non me ne occupo si prendono i nodi pubblici più importanti. Ma per una maggiore sicurezza potrei far passare dal mio nodo personale la richiesta di output.

Aumenta la sicurezza. A patto di sapere quello che si sta facendo a solito.

Un conto è transare centinaia di euro in controvalore, un altro è movimentare milioni di euro….

Le grandezze, come dice il dolce sesso, a volte contano.

Se ti è piaciuto l’articolo donami 200 sats 😍

LNURL1DP68GURN8GHJ7EM9W3SKCCNE9E3K7MF0WQHKXUNFWP6X7CTFW46X7TN2WDHKU80FR87

Leave a reply

Your email address will not be published. Required fields are marked *

Your name

Message