Blockchain e Smart Contract [Ep 2/10]

di Daniele Lonardo

Nel precedente articolo della nostra newsletter abbiamo approcciato l’argomento della blockchain – una tipologia di Distributed Ledger Technology capace di archiviare asset e transazioni su di una rete peer-to-peer – tentando di fornire al lettore una breve introduzione all’argomento. In questo nuovo articolo andremo ad analizzare le varie tipologie di blockchain esistenti. Per sommi capi, e sulla base di alcune caratteristiche comuni, possiamo individuare tre macro-categorie di blockchain:

(1) Blockchain permissionless (o blockchain pubbliche, aperte). Esse si caratterizzano per il fatto che l’accesso al network è libero: non sussistono restrizioni né con riferimento alla lettura delle varie transazioni poste in essere, né per la loro effettuazione, né con riferimento alla possibilità di partecipare al meccanismo di consenso. In altre parole, i meccanismi di controllo all’interno di tale tipologia di blockchain è di tipo distribuito e fa capo a tutti i partecipanti alla rete: ciò significa che tutta la community può accedere alle informazioni registrate all’interno della blockchain e tutti i suoi partecipanti sono chiamati a validare le operazioni di volta in volta poste in essere. Un esempio classico di blockchain di tipo permissionless è il Bitcoin, una tra le più note criptovalute, ma in questa famiglia è ricompresa anche la blockchain di Ethirium e, più in generale, tutte quelle DLT che si basano su di un protocollo per il consenso distribuito che impiega la Proof-Of-Work o la Proof-Of-Strike (acronico PoW o PoS[1]). In tale sistema, le regole di validazione sono decise ab initio dagli amministratori di sistema, i cd. Core developpers. I soggetti che entrano, successivamente, all’interno della rete accettano tali regole senza poter in alcun modo incidere su di esse, modificandole.

(2) Blockchain permissioned (o blockchain private, chiuse). In tale tipologia, le attività di controllo e di validazione sono limitate ad un gruppo ristretto di partecipanti, i quali seguono specifiche linee guida (cd. Governance). Le attività di validazione vengono quindi svolte da alcune specifiche categorie di soggetti, esplicitamente autorizzate all’uopo: tale attività risulta preclusa a tutti gli altri soggetti. La blockchain di tipo permissioned è adatta a quelle organizzazioni o aziende che necessitano di garantire l’autenticazione dei partecipanti e dei nodi della rete ed in alcuni contesti, una blockchain di tipo permissioned potrebbe risultare decisamente più appropriata rispetto ad un sistema permissionless. Ad esempio, nel caso in cui un soggetto pubblico o privato abbia la necessità di gestire una serie di transazioni ricorrenti ovvero nel caso in cui la Pubblica Amministrazione abbia la necessità di mantenere la governance delle transazioni registrate, tale tipologia di blockchain sarebbe la più adatta.

(3) Blockchain ibride. In tale tipologia, il meccanismo del consenso sulle transazioni è controllato da un ristretto insieme di nodi preselezionati. Essi hanno un’influenza maggiore rispetto agli altri nodi della rete ed attraverso particolari meccanismi (ad esempio di voto), possono determinare quali transazioni o meno andranno a confluire nei blocchi. Le operazioni di lettura della blockchain può essere aperta al pubblico ovvero limitata ai soli partecipanti al network. Tali tipologie di blockchain (parzialmente decentralizzate) si prestano a casi d’uso in cui da un lato è necessario mantenere il governo sulla registrazione delle varie transazioni poste in essere ma – dall’altro – si desidera rendere pubblica la consultazione della blockchain.

Una tipologia di blockchain ibrida potrebbe essere utilizzata, ad esempio, nel caso in cui una Pubblica Amministrazione abbia necessità di inserire e validare asset e transazioni che, per loro natura, sono però destinate ad essere visibili (pubbliche) agli altri membri della community.

Con riferimento alle caratteristiche comuni che permettono di distinguere le differenti tipologie di DLT, evidenziamo:

(i) la tipologia di rete, capace di definire gli attori che partecipano al network, i meccanismi che permettono l’ingresso di nuovi soggetti nonché il loro ruolo con riferimento al processo di validazione;

(ii)  il consenso, capace di determinare le modalità con cui la community aggiorna il registro dei blocchi e da cui dipende la sua capacità di resilienza nei confronti di attacchi malevoli volti a modificare il contenuto dei blocchi;

(iii) la struttura del registro, che definisce le modalità con cui le informazioni vengono organizzata all’interno della blockchain.

[1] La PoW è un sistema oneroso di validazione dei blocchi basato su algoritmi che devono essere (i) resilienti, ossia devono resistere anche di fronte a possibili cambiamenti esterni imprevedibili; (ii) scalabili, cioè non devono costituire possibili “colli di bottiglia” all’accesso; (iii) noti e (iv) condivisi. La PoS, invece, si basa sulla quota effettiva di criptoasset a disposizione del miner. Pertanto, in un sistema PoS, più quote di criptoasset si hanno nella rete, più blocchi possono essere validati. Ad esempio, se un miner detiene il 3% del totale della criptovaluta in circolazione, tale miner potrà validare solo il 3% dei blocchi.

Articoli

Menu