26/10/2022
Nuove tecnologie

Blockchain, cybersecurity e la maturità dei servizi distribuiti. Parte 2

Ora che abbiamo capito meglio il funzionamento concettuale e di base della blockchain, vediamo come può tornarci utile.

Uno dei primissimi usi “reali”, come è noto, è stata la creazione di valori monetari digitali, le famose criptovalute (di cui la più antica e nota è proprio il Bitcoin). Il motivo appare ovvio e l’abbiamo detto nel precedente articolo: la possibilità di avere una rete che garantisca una registrazione non modificabile di un dato è un presupposto fondamentale alla gestione digitale di transazioni di valori. In più, dato che la blockchain non è “posseduta” da nessuno, il fatto avere una tecnologia per la creazione di denaro che prescindesse da una banca centrale ha avuto una risonanza simbolica e sociale che ha contribuito alla popolarità di questa applicazione.

Tuttavia abbiamo visto che “battere moneta” è solo uno degli utilizzi concreti possibili di una rete blockchain. In effetti qualche anno dopo la nascita del bitcoin, Vitalik Buterin (matematico e programmatore russo) fonda Ethereum, una nuova blockchain. Ma Ethereum nasce già con una visione più ampia. Vitalik infatti si accorge subito che se abbiamo una tecnologia in grado di scrivere in modo sicuro ed immutabile un dato su una blockchain, perché ci dobbiamo limitare a scriverci sopra solo dei token monetari e le relative transazioni? Possiamo fare molto di più ed è con Ethereum che diventa concreto il concetto di “smart contract”.
Cosa sono?
Spiegato molto velocemente, gli smart contract premettono di eseguire (sulla rete blockchain, dove sono scritti) un contratto, e di mantenerlo in esecuzione finché le condizioni definite sono rispettate. Facciamo un esempio. Ho un contratto di affitto basato sulla blockchain. Il contratto prevede che, ad ogni certa data di ogni mese, dal mio portafoglio venga trasferita una cerca quantità di ethereum ad un altro wallet (quello del proprietario di casa). Finché questa condizione continua ad esistere, la serratura elettronica della porta di casa continuerà ad accettare la mia chiave. In caso contrario, quando le condizioni del contratto non sono più rispettate, la serratura smetterà di funzionare. Ora qualcuno di voi dirà “ok ma c’è bisogno della blockchain per far funzionare una architettura simile?”. Ovviamente no, ma ciò che la blockchain offre rispetto ad altri tipi di tecnologie è, come abbiamo detto, la decentralizzazione e l’immutabilità, il che significa che uno smart contract una volta avviato non può più essere interrotto o modificato. Il contratto continuerà ad esistere nella forma in cui è stato concepito, con tutte le sue regole, limitazioni e “clausole”.

A questo punto possiamo fare un altro esempio, più pertinente.
Immaginiamo di essere un batterista e di aver contribuito, per la componente di percussioni, alla produzione di un certo brano musicale ed immaginiamo che, per questo mio contributo, mi venga riconosciuto un diritto (royalty) del 10% per ogni esecuzione della canzone. Ecco, questo accordo può essere trasformato in uno smart contract. Immaginiamo adesso che il brano venga caricato in una specie di spotify collegato a (o in grado di interagire con) la blockchain in cui risiede lo smart contract del brano. In questo ipotetico servizio di streaming che chiameremo SpotyChain, ogni volta che un utente ascolta un brano paga un certo quantitativo di denaro in criptovaluta. A questo punto il meccanismo è semplice: la canzone viene ascoltata dagli utenti, gli utenti pagano, lo smart contract trasferisce al mio wallet il 10% del valore di ogni ascolto, e continuerà a farlo finché SpotyChain esisterà.
E se il nostro ipotetico SpotyChain dovesse chiudere i battenti? Nessun problema, lo smart contract esiste sulla blockchain, non sul singolo servizio. Dunque se SpotyChain dovesse chiudere, basterà creare un nuovo servizio simile in grado di leggere ed eseguire gli smart contract che esistono a prescindere dal servizio che ci permette di interagire con essi.

Una applicazione molto popolare di questo concetto sono gli NFT, sui quali non ci dilungheremo troppo.
Ci basta sapere che gli NFT sono l’equivalente di un token (moneta) scritta sulla blockchain ma il cui valore non è fungibile. Ovvero, può assumere qualsiasi valore e non può direttamente essere scambiato con un altro NFT. Per dirla in modo semplice, 1 bitcoin “vale” esattamente come un qualsiasi altro bitcoin, e io posso scambiare 1 bitcoin per un altro bitcoin. Questo perché i bitcoin (e tutte le altre criptovalute e in generale il denaro stesso) sono fungibili. Prendiamo invece due dipinti: uno di Monet ed uno di Picasso. E’ vero che sono tutti e due dipinti, è vero che sono fatti presumibilmente con la stessa tecnica, potrebbero anche avere le stesse dimensioni, e potrebbero anche rappresentare lo stesso soggetto ma non è assolutamente detto che abbiano lo stesso valore, anzi, il loro valore tenderà anche ad oscillare nel tempo. Dunque posso dire che i due dipinti non sono fungibili perché non hanno un valore comune e non possono essere direttamente scambiati l’uno con l’altro, né posso utilizzarli come valore liquido (tecnicamente non posso comprare una Bugatti usando un quadro di Picasso).L’esempio dei dipinti non è casuale in quanto gli NFT sono diventati popolari proprio perché sono stati utilizzati per rendere uniche ed immutabili le opere d’arte digitali.

L’NFT di una certa opera esiste solo nelle copie definite dal contratto, e quelle copie non possono essere duplicate ma solo vendute e acquistate, e questo è stata davvero una rivoluzione: per la prima volta nell’infoEpoca in cui ci troviamo possiamo possedere dei contenuti (dati) digitali così come possediamo qualsiasi altro oggetto materiale.

Fino ad oggi, la maggior parte degli utilizzi della blockchain hanno riguardato gli ambiti cryptovalute, DeFi (finanza decentralizzata), NFT. Ma a detta di molti, siamo all’alba della terza espansione di questo settore, che spingerà verso nuovi utilizzi.

In particolare, le caratteristiche di Decentralizzazione, Anti Tempering e Zero proof knowledge, implicite in una architettura blockchain, possono risultare molto utili per usi in ambito cybersicurezza, come vedremo nel prossimo articolo.