Blockchain: la guida completa

Cosa sono i blockchain? Piccola premessa: neanche noi conoscevamo l’argomento, poi è diventato il topic di qualsiasi nostro discorso. Perché sono importanti, perché son precisi soprattutto. E perché il boom degli ultimi mesi ci ha portato a rivalutarli completamente. Altra piccola premessa: partiamo dalle criptovalute, che sono basate su quest’algoritmo molto sui generis. Grazie a questa serie di numeri e parole, il blockchain permette di regolare le reti peer-to-peer in un modo mai visto prima: forma una catena di blocchi che contengono eventi, ma che allo stesso tempo possono essere di qualsiasi tipo e non solo transazioni. Per questo motivo diventa importante sottolineare come il sistema blockchain abbia applicazioni molto versatili. Che vanno oltre le criptovalute.

La rete peer-to-peer

La peer-to-peer è invece una rete che connette i dispositivi tra loro: non passa attraverso un server, è diretto - Guida Blockchain

Okay, partiamo anche qui dalle basi. Le reti peer-to-peer sono diverse dalla tipica rete internet. In quelle tradizionali, l’utente si connette a un server via dispositivo: il server in questione prende delle informazioni e le invia al dispositivo. Come? Attraverso la connessione. L’utente riesce in questo modo a navigare sul web, prendendo e dando dei dati. I servizi di messaggistica ne sono un esempio clamoroso e di facile intuizione. Ecco perché c’è la doppia spunta: per far arrivare il messaggio c’è bisogno che entrambi i dispositivi siano connessi a Internet.

La peer-to-peer è invece una rete che connette i dispositivi tra loro: non passa attraverso un server, è diretto. Per questo non ha un’entità che controlli materialmente la rete, per questo non ha un punto di rottura singolo. Non dipende da nessuno.

A cosa serve e cos’è la blockchain?

Ma a che serve la blockchain? Mettiamo il caso di una rete PTP: c’è bisogno di una regolamentazione di fondo affinché si possano utilizzare i dispositivi. Nelle reti con un server centrale è lo stesso server a determinare la crittografia dei messaggi sent&received. Non solo: determina anche lo scorrere cronologico dei messaggi, li trasmette seguendo determinati criteri. Ecco: in un sistema PTP, questo è il lavoro della blockchain. Che è semplicemente una catena di blocchi, al cui interno si possono riscontrare dati organizzati per una determinata crittografia. Inviare denaro o ricevere documenti sono processi crittografati: cioè comunicati a tutti i dispositivi della rete. I dispositivi sono organizzati anch’essi in ordine cronologico, sistematico. Formando, appunto, un blocco.

Una volta costruito questo blocco, ci sono poi delle regole matematiche da rispettare: altrimenti scoprirete da solo che il server è stato manomesso, con tanto di furto di dati. Se il blocco rispetta queste regole interne viene aggiunto alla catena.

Perché non i server centrali? Bisogna aver ‘fiducia’ nella PTP. Non bisogna sempre avere un terzo che controlli. La blockchain, in questo senso, elimina subito questo bisogno di fiducia: che è normale, sia chiaro. Ma cosa c’è di più tranquillizzante di un algoritmo matematico? Così giusto, così numerico, così perfetto. I protocolli eliminano tutti i problemi connessi all’era digitale, dal monopolio dei big data alla stessa paura dei consumatori nei mercati digitali.

Esempio pratico per capire la Blockchain

Sperando che sia tutto chiaro, vi dobbiamo ugualmente un esempio: per interfacciarsi al sistema blockchain ci viene in soccorso Vitalik Buterin, fondatore di Ethereum. La blockchain non va capita – spiega -, ma nello stesso momento in cui la utilizzate essa vi avrà già cambiato la vita. In pratica: è un sistema computerizzato che è fatto per aiutare. Solo aiutare.

Primo passo: installare un client

Ecco: adesso installiamo insieme un client. E questi sono i passaggi fondamentali:

  • Usiamo il bitcoin come esempio. Primo step: muniamoci di un client. Cos’è? È il programma necessario per entrare nella rete peer-to-peer, nel quale circola la criptovaluta. Il client utilizzato è Bitcoin Core: molto affidabile e utilizzato su ogni sistema operativo.
  • Scaricato il client, lo andiamo a installare sul dispositivo che preferiamo. Quindi questo sarà automaticamente connesso alla rete Bitcoin. Vuol dire, in soldoni, che avremo sempre una copia costante della blockchain, con le transazioni fatte fino a un dato momento.
  • All’interno della blockchain troveremo diversi risultati: tutti anonimi, s’intende. Anche questo grazie al protocollo, che nelle informazioni ha il riferimento del wallet del mandante, quello del ricevente e della quantità di Bitcoin trasferita. Ogni wallet ha inoltre un codice alfanumerico che resta irrintracciabile. Ergo: non è possibile sapere con precisione cosa si riferisce a chi.

Ogni nuovo blocco si forma una volta acquisita la dimensione dei dati che contengono: non c’è un limite di tempo o quantitativo nelle transazioni. Per Bitcoin, un blocco può richiedere 1MB di dati per essere aggiunto alla catena, e quindi risultare valido. Per la creazione di un blocco intero, però, c’è bisogno di duemila transazioni. Tempo medio: 10 minuti.

La blockchain può inoltre essere programmata, anche con parametri diversi. Del resto, in questo caso parliamo di protocolli diversi: Litecoin ne è un esempio, e ha l’intento di aumentare la dimensione di ogni blocco per rendere più raggiungibile l’intero sistema.

Secondo passo: aprire un wallet e comprare bitcoin

Ma proseguiamo con ordine. Qual è lo step successivo? Aprire un wallet e comprare Bitcoin. Oh, finalmente ci siamo: ma per operare su un sistema blockchain occorre che ci siano dei dati da immagazzinare nei blocchi. Ossia transazioni. Ecco: per avere i Bitcoin con cui operare nel sistema c’è poi bisogno del Wallet, all’interno vi conserverete la moneta virtuale.

Quali tipi di wallet esistono? Parecchi, partiamo da questi.

  • Alcuni sono online, accessibili da pc e con i Bitcoin messi sul server da un servizio esterno. Questa tipologie di piattaforme offre la possibilità di conservare la criptovaluta offline nei magazzini chiamati deep cold wallets. Spesso è un ‘ripostiglio’ gratuito, nonché sicuro e al riparo da attacchi informatici.
  • C’è un’altra strada da seguire: una volta comprata la valuta, la conservi su un wallet esterno e lo mandi offline (ma collegabile al pc al momento di una transazione).

Alla fine siamo pronti a comprare i Bitcoin. Sì, ma come? Esistono più exchange pronti a cambiare valuta Fiat in criptomoneta.

Terzo passo: operare sulla blockchain

Completate le prime due fasi, si può iniziare ad operare sulla blockchain: a patto che la criptovaluta sia all’interno del nostro portafoglio, il client sia installato e che si faccia parte della rete. Tutto pronto quindi: partiamo con la nostra prima transazione.

Inviare Bitcoin ad un altro wallet presuppone un passaggio ulteriore: la transazione genera un codice automatico che viene tradotto in accredito sul wallet di chi riceve il pagamento. Il codice del movimento è comunicato allora a tutti i nodi che fanno parte della rete. Il nostro computer incluso.

La transazione sarà allora organizzata con le altre: formerà il blocco di minimo 1MB che serve per darle validità. Sarà verificato l’algoritmo e, se non ci sono problemi di fondo, sarà aggiunto alla catena di blocchi.

Come si verifica la blockchain, qui sta il vero inghippo. Non perché sia problematico, ma perché resta un qualcosa di profondamente tecnico: si risolve tutto con l’intuizione. I blocchi sono stati formati, ma all’interno hanno una firma digitale che equivale ad un determinato numero. Questo numero varia in maniera indefinita, e modifica la porzione dei dati che contiene rendendo l’algoritmo infallibile.

Il codice formato deve essere corretto: a questo punto, un’espressione matematica partirà dal codice del blocco precendente, modificando una transazione passata per poi cambiare il codice del blocco in cui è presente. I blocchi successivi non hanno da rispettare l’algoritmo: semplicemente perché non possono. E non saranno correttamente aggiunti alla blockchain.

Per chiarire: i blocchi formati non possono più essere modificati, altrimenti andrebbero ad intaccare (in senso negativo) tutto il sistema. Ecco perché la transazione è parte di un blocco già formata, quindi ben eseguita.

Il fenomeno del mining e la sua relazione con la blockchain

le unità che praticano il mining, gli elementi che assicurano un funzionamento perfetto della rete - Guida Blockchain

Da qui si arriva al fenomeno del mining. Fate attenzione, perché serve fantasia: è una rete enorme di nodi connessi tra loro. Inviano informazioni da organizzare e sistemano i blocchi rapidamente, seguendo complessi schemi matematici di verifica. Un sistema così ha bisogno di molta potenza di calcolo. E questa potenza è impiegata per raccogliere tutte le transazioni e metterle in ordine cronologico, creando alla fine un blocco valido.

Arriviamo ai miners: le unità che praticano il mining, gli elementi che assicurano un funzionamento perfetto della rete. La loro potenza serve a combinare le transazioni per formare i blocchi corretti: formato il blocco, hanno una ricompensa. Tipo zuccherino per i cavalli.

Proof of work e Proof of stake: le due tipologie di blockchain

Da aggiungere che esistono soprattutto due tipi di blockchain. Innanzitutto il proof-of-work, Bitcoin lo è; poi i sistemi proof-of-stake, esempio ne è Ethereum. Differenze? Molto importanti, cambiano radicalmente il modo di concepire la stessa blockchain. In questo schema vi diremo perché:

  • Proof-of-work – Punto fondamentale: la potenza di calcolo. Ci sono blocchi difficili da formare, che richiedono tentativi di combinazioni matematiche. I miners cosa fanno: competono tra loro per arrivare prima al blocco successivo, semplicemente provando più serie di numeri. Il problema è che da soli sono impossibilitati per una questione di scarsa potenza di calcolo: per questo, i miners di proof-of-work si riuniscono in gruppetti detti mining pools. In una pool le ricompense vengono spartite tra coloro che si prestano le energie. Lavoro di squadra.

Come vengono assegnate le ricompense? In automatico. Per ogni blocco risolto, una ricompensa costituita da una nuova criptovaluta emessa. Con Bitcoin si arriva ad emettere 21 milioni totali.

  • Proof-of-stake, abbiamo aggiunto. Molto più facile da usare: ha per questo molti vantaggi in termini di scalabilità e di convenienza. Dite addio alle potenze di calcolo esagerate o alle bollette ultra care, la proof-of-skate garantisce un miner nuovo e diverso: che ha la possibilità di risolvere il blocco su parametri precisi. In breve: i nodi che fanno girare l’intera economia sono soltanto alcuni, e a loro si riferiscono per transazioni o detenere grandi somme di criptovaluta. Va a fiducia. Fiducia ben riposta. Il mining di Ethereum ha bisogno anche solo di un normale pc con 8 gb di RAM: dispiace solo per i blocchi, senza ricompense. Ha solo pochi costi di transazione assegnati poi al miner.

La Blockchain non è perfetta

Sia chiaro: la blockchain può fallire. O almeno può farlo in un sistema proof-of-work, che a questo punto conviene sempre meno. Sì, perché i proof-of-work sono ‘abitati’ da miners che competono per loro. Magari due riescono a risolvere lo stesso blocco in pochi secondi e allora vengono ugualmente aggiunti alla blockchain: il sistema qui è fallibile. Non solo: provoca anche una biforcazione della catena di blocchi. Da uno, infatti, ne partono due diversi.

In questo caso, l’intelligenza dei blocchi cercherà comunque di avere la meglio: i protocolli successivi verificheranno l’uno o l’altro pacchetto aggiuntivo. Quello che andrà a formare la catena più lunga sarà finalmente dichiarato valido, l’altro semplicemente eliminato dalla blockchain.

Ah, questi ultimi sono chiamati ‘orfani’, e conviene starne alla larga: una volta che il blocco viene eliminato e si trasforma, appunto, in ‘orfano’, le transazioni non saranno mai più aggiunte alla blockchain. In un sistema proof-of-work, ogni blocco ha il suo miner: non c’è mai la possibilità che due miner risolvano lo stesso blocco a distanza ravvicinata. Anzi: non lo faranno proprio mai.

Smart contracts, l’applicazione fondamentale della blockchain

Superata questa fase, tocca parlare di cose belle: le smart contracts, l’applicazione fondamentale della blockchain. Partiamo dal presupposto che le blockchain permettono di diversificare un lavoro che va oltre lo scambio di criptovalute. Con Ethereum, infatti, si è iniziato a parlare di smart contracts: sono contratti vincolanti in grado di eseguirsi da solo. Cosa? Avete capito bene: come un piccolo patrimonio che si gestisce in autonomia. Ovviamente attraverso un sistema blockchain.

Andiamo di esempi: avete un alloggio su AirBnB, il vostro intento dunque è cederlo in affitto a terzi. Il sistema blockchain si assicura che chi entra in casa riceva la chiave e che arrivi il bonifico con regolare pagamento. Lo smart contract assocerà dei codici per ogni azione e regolamenterà il tutto. Non una questione di fiducia, ma di matematica.

Dulcis in fundo, altre piccole storie da conoscere: ci sono alcuni esempi di blockchain che ce lo rendono più vicino, più ‘umano’. O quasi. Sapevate infatti che con questo meccanismo è possibile riscrivere tutto ciò che viene regolato da un’autorità centrale? Tutto questo a patto che sia un algoritmo a regolarlo. Potrete prestare soldi attraverso uno smart contract: una sorta di assicurazione contro le frodi. Con tanto di cloud senza ente intermedio.

Blockchain è il futuro. E se fosse su TripAdvisor, non avrebbe recensioni negative: esempio estremo, ma certi che ci si è intesi. Di’ pure addio al tuo notaio: risparmia e segui i blockchain. Il futuro è adesso.