Certificati digitali e Blockchain
non è tutto oro ciò che luccica
Introduzione
Le Blockchain hanno sperimentato, negli ultimi anni, un successo non indifferente grazie soprattutto alla moltitudine di ambiti in cui, la sua applicazione, può apportare vantaggi non indifferenti.
Si spazia dall’ambito del Banking e Finance (il primo per cui si è vista una implementazione di questa tecnologia) all’ambito Assicurativo, alla Compravendita di Azioni, senza escludere altri settori quali Sanità, Archiviazione Sicura, Cloud, IoT e Gestione dell’energia.
Sono tutti quei settori per cui è richiesta una garanzia dell’immutabilità dell’informazione (o valore) che viene trasferita tra persone o organizzazioni.
Ovviamente, il settore della Formazione e delle Certificazioni Digitali non fa eccezione: un numero sempre crescente di organizzazioni, accademiche e non, si avvicinano a questo mondo proponendo soluzioni e idee atte a migliorare, standardizzare e automatizzare l’attuale sistema, prevalentemente analogico, di gestione delle certificazioni e delle competenze personali.
Cenni di storia di Blockchain
È utile ed interessante ricapitolare rapidamente la storia di questa tecnologia e delle sue caratteristiche principali.
L’origine della Blockchain è avvolta nel mistero e risale al 2008, anno in cui fu pubblicato un articolo dal nome “Bitcoin: A Peer-to-Peer Electronic Cash System”, ad opera di un autore tuttora ignoto, sotto lo pseudonimo di Satoshi Nakamoto.
Da tale articolo nacque la prima storica implementazione di questa tecnologia: la blockchain Bitcoin, che vide approvato il suo primo blocco, il cosiddetto genesis block, circa due mesi dopo (3 Gennaio 2009).
Ad oggi si è speculato molto sulla reale identità dell’inventore di Bitcoin, e molti, tra individui ed organizzazioni, sono stati coloro che hanno tentato di accaparrarsene il merito, senza pero mai riuscire a fornire a riguardo prove sufficientemente convincenti.
Ma a cosa è effettivamente dovuta la grandissima fama acquisita dalla tecnologia proposta da Nakamoto e quale è l’innovazione che si cela dietro di essa?
Certamente ad una profonda e radicale rivoluzione del concetto stesso di fiducia (trust) applicato a qualsivoglia ambito in cui sono previsti degli scambi (transazioni) per i quali deve esserne garantita l’immutabilità nel tempo.
Il caso d’uso più evidente e più comune di questo paradigma è senza ombra di dubbio lo scambio di denaro per l’acquisto di beni e valori.
Non è affatto un caso che proprio questo è stato l’ambito scelto da Nakamoto per presentare al mondo questa tecnologia.
La grande innovazione nel concetto di fiducia, che Blockchain porta con se, riguarda un radicale e profondo cambio di pattern nei sistemi costruiti che usano un Libro Mastro (Ledger) quale garante della validità delle transazioni in esso annotate.
Da un unico registro centralizzato ed esclusivo, nella mani di un singolo individuo o di una singola organizzazione, si passa ad un Registro Condiviso e Distribuito tra tutti i partecipanti del network.
Ciascuno può annotare le proprie transazioni e controllare la validità di quelle di ciascun altro partecipante, in maniera totalmente libera e trasparente, ma potendo mantenere l’anonimato riguardo la propria identità, con forti garanzie sulla propria privacy e sicurezza.
Blockchain e le Certificazioni Digitali
Le certificazioni rappresentano attualmente il migliore metodo a nostra disposizione per raccogliere e comunicare il set di traguardi raggiunti da un individuo o per denotare una affiliazione.
Con lo standard Open Badge 2.0, è stato reso possibile realizzare un ecosistema per l’emissione, l’archiviazione e la verifica di certificati digitali. La disponibilità di Backpack efficaci e avanzati ci permette di creare “reputazioni professionali” molto aderenti alle reali competenze.
La domanda nasce spontanea: possiamo affiancare all’Ecosistema Open Badge anche un’architettura basata su Blockchain?
L’idea alla base dell’applicazione della tecnologia Blockchain agli ambiti della Formazione e delle Certificazioni Digitali prevede, nella sua forma più semplice, l’emissione di un certificato sotto forma di transazione da inserire in un blocco della Blockchain, da parte dell’organizzazione o dell’ente autorizzato a favore di un individuo.
L’inserimento nella Blockchain del certificato fa sì che, da quel momento in poi, sia l’oggetto che la sua storia divengano a tutti gli effetti immutabili, immagazzinati e fissati “per sempre” nel database condiviso da tutti i nodi della rete Blockchain, i quali saranno anche i garanti stessi della validità di ogni contenuto ivi presente.
In un simile scenario, i vantaggi che ne derivano sono:
- Rapidità di comunicazione e trasmissione dei certificati dagli individui alle organizzazioni che ne richiedono una verifica delle competenze
- Immediatezza nella verifica della certificazione, in quanto viene meno la necessità di una figura intermedia che riveste il ruolo di garante
- Garanzia che tale certificazione non sia stata manomessa o falsificata in alcun modo, che sia stata emessa effettivamente da una determinata organizzazione e che l’identità del destinatario sia comprovabile.
Alcuni esempi reali su Blockchain
Attualmente esistono diverse soluzioni, basate su Blockchain per la gestione delle Certificazioni Digitali. Di seguito , alcuni esempi degni di nota, in grado di gestire tutto il ciclo di vita di una certificazione, dalla sua emissione, fino alla sua verifica.
Blockcert (https://www.blockcerts.org/)
Blockcert è un progetto totalmente open source del MIT Media Lab, ormai alla sua seconda versione.
Tale progetto ha avuto uno sviluppo molto interessante ed è stato possibile osservarlo all’opera in un contesto reale quale, per l’appunto, il MIT, che ha costituito il suo banco di prova iniziale, nonché uno straordinario acceleratore per il suo sviluppo e test.
L’idea alla base di Blockcert, implementata nella Versione 1, è piuttosto semplice:
Ogni certificato emesso da una organizzazione emittente è rappresentato in maniera conforme allo standard Open Badge, sotto forma di documento digitale.
Di tale documento è possibile calcolarne facilmente l’impronta digitale, per mezzo di una funzione detta di Hash Crittografica, ed inserirla in un particolare campo di una transazione Bitcoin (il campo OP_RETURN).
Tale transazione sarà propagata nel network Bitcoin dopo aver inserito la chiave pubblica appartenente al mittente (l’organizzazione emittente) e la chiave pubblica del destinatario della certificazione.
Quando il network approverà tale transazione, tutte le informazioni contenute nel certificato digitale originale possono essere ritenute, a tutti gli effetti, immutabili e immediatamente verificabili da chiunque.
Il processo di Verifica
Il processo di verifica è, difatti, piuttosto immediato.
L’organizzazione a cui è stato comunicato tale certificato (ad esempio da parte del legittimo proprietario), tramite Blockcert, effettua un confronto diretto tra l’impronta digitale del certificato che ha ricevuto e il contenuto della Blockchain Bitcoin.
Se risulta un riscontro positivo, allora non solo il documento è da ritenere valido, ma risulta anche garantita l’autenticità dell’organizzazione emittente e dell’individuo destinatario.
La versione 2
Nella Versione 2 della piattaforma Blockcert, il MIT Media Lab ha dichiarato di aver introdotto due modifiche molto interessanti.
- Invece di salvare l’impronta digitale di un singolo certificato in una transazione, è stato deciso di memorizzare l’elemento radice di una struttura dati denominata “Merkle Tree”, contenente le impronte digitali di un certo numero di certificazioni digitali. Ciò ha consentito di migliorare le prestazioni del sistema e ridurre il numero di transazioni richieste, dal momento che tale struttura dati ha la proprietà intrinseca di rendere immutabile e facilmente verificabile il suo contenuto, fintanto che è garantita l’immutabilità del suo elemento radice, che per tale ragione viene memorizzato nella Blockchain.
- Viene esteso il supporto alla Blockchain Ethereum, oltre che alla rete Bitcoin, e agli smart contracts.
BCDiploma (https://www.bcdiploma.com/)
BCDiploma è un progetto francese, basato su strumenti open source.
Un aspetto interessante di BCDiploma è il fatto di essere basato sulla Blockchain Ethereum, la seconda blockchain più nota al mondo, nonché la prima ad aver introdotto nativamente il concetto di Smart Contracts.
Ed è proprio sugli stessi Smart Contracts che BCDiploma si basa.
I diplomi ed i certificati vengono condivisi ed archiviati nei nodi della network Ethereum, protetti da moderni e robusti algoritmi crittografici (AES_256_GCM), e da tre distinte chiavi di cifratura: la graduate key, la persistance key e la permanent key in possesso della scuola o dell’organizzazione emittente.
La decifratura dei dati contenuti nei diplomi e nelle certificazioni condivise è possibile solo per mezzo di queste tre chiavi.
Un ulteriore elemento di interesse circa questa piattaforma, è la decisione da parte dei suoi creatori, di introdurre una utility Token (BDCT) parallela alla criptovaluta Ether (per l’esattezza una ICO, Initial Coin Offering) con cui poter usufruire dei servizi messi a disposizione della piattaforma.
Nello specifico il processo di verifica della validità di un certificato è effettuabile in maniera totalmente gratuita, mentre per la condivisione nel network un nuovo certificato è richiesto un contributo da versare sotto forma di token BCDT.
SkillChain (https://skillchain.io/it/)
Skillchain è un progetto Italiano che, oltre a condividere la medesima mission e visione dei due competitor presentati in questo articolo, condivide anche alcuni aspetti implementativi con la piattaforma BCDiploma.
Infatti, anch’essa:
- è basata su Ethereum e fa uso degli Smart Contracts;
- utilizza i nodi della network Ethereum per archiviare i documenti;
- utilizza una utility Token per acquistare ed usufruire dei servizi che la piattaforma offre (si tratta sempre di un ICO, che prende il nome di SKI, ed ha un valore fissato in termini di criptovaluta Ether: 1 ETH equivale a 5460 SKI).
La principale differenza con BCDiploma è costituita dal target di documento preferenziale di SkillChain, rappresentato dai Curriculm Vitae, che possono essere visti logicamente come una collezione di traguardi, diplomi e certificazioni.
RecordsKeeper e Certify.pk (https://www.recordskeeper.co/verify-academic-certifications/) (http://certify.pk/)
È interessante menzionare nella nostra lista anche due piattaforme minori: RecordsKeeper e Certify.pk, le quali presentano obiettivi analoghi a quelli dei competitor illustrati finora, si appoggiano a delle Blockchain ancora in fase di test sviluppate da queste stesse organizzazioni.
Non è tutto oro ciò che luccica
È evidente che la tecnologia Blockchain sia in grado di rivoluzionare il sistema di gestione di certificazioni digitali (e non), per mezzo di una tecnologia ideata e implementata attorno al concetto di “trustless trust”, ovvero la possibilità di poter fare affidamento sul sistema senza dover necessariamente riporre fiducia sui suoi partecipanti o sull’ente che ne fa da garante.
Tuttavia, come dice il proverbio, non è tutto oro ciò che luccica, e dal canto suo anche la Blockchain non fa differenza, nascondendo alcune incognite e lasciando spazio a diversi dubbi che andremo ad analizzare di seguito.
1. Sicurezza
Un grande problema da tenere sempre in considerazione, che affligge questi sistemi è la Sicurezza.
Le Blockchain si basano su algoritmi crittografici moderni e robusti, la cui sicurezza è comprovata. Tuttavia ciò non la rende esente da possibili attacchi, punti di vulnerabilità e falle di sicurezza.
Nonostante la sicurezza della Blockchain sia continuamente analizzata da ricercatori e professionisti in tutto il mondo, bisogna accettare il fatto che non può esistere un sistema privo di ogni rischio e perfettamente sicuro e, soprattutto, che la Blockchain non è, né mai sarà, priva di rischi e immune da attacchi informatici.
A prova di ciò è sufficiente prendere come esempio il gruppo hacker che è riuscito a portare con successo un attacco del 51% ad uno dei network principali (riuscendo ad acquisire e monopolizzare oltre la metà della potenza computazione dell’intera community di nodi), consentendogli di riscrivere parte dei blocchi presenti con un contenuto di loro scelta. A titolo informativo tale attacco è uno dei primi ad essere stati teorizzati contro la Blockchain, nonché il più noto sia per cause che per effetti.
2. Trasparenza
Un ulteriore aspetto interessante da analizzare riguarda la Privacy degli utenti che si affidano a questo sistema: uno dei pilastri su cui si basano le Blockchain è senza ombra di dubbio la trasparenza delle informazioni immagazzinate nel Database condiviso dai nodi.
Trasparenza, equivale alla possibilità di leggere liberamente il contenuto delle transazioni da parte di qualunque nodo del network. Ebbene, finché questi dati trasparenti sono rappresentati da transazioni anonime di criptovaluta non si pone alcun problema, – d’altronde questo tipo di anonimato è stato proprio uno dei punti di forza che ha consentito a queste tecnologie di avere il successo che hanno avuto – ma se invece si trattasse dei nostri curriculum vitae, dei nostri diplomi e lauree e delle nostre certificazioni professionali, comprensive di tutti i nostri dati personali, ecco che si accenderebbe immediatamente un campanello d’allarme nelle nostre menti.
A tal proposito le piattaforme presentate in questo articolo hanno cercato di affrontare questo problema in modi diversi tra loro, ognuna introducendo un qualche difetto o potenziale ulteriore problema.
Ad esempio Blockcert ha deciso di anonimizzare totalmente qualsiasi dato personale, memorizzando sulla rete Bitcoin solo ed esclusivamente le impronte digitali del documento (il suo hash crittografico), rendendo in questo modo impossibile risalire tramite la network al contenuto informativo in essa presente; un valido metodo che tuttavia richiede una infrastruttura parallela che ospiti il contenuto dei certificati (o addirittura, per la Versione 2, tutto il Merkle Tree dei certificati aggiunti alla Blockchain).
Skillchain e BCDiploma
Skillchain e BCDiploma dal canto loro hanno preferito sfruttare appieno la potenza degli smart contract, archiviando per intero ciascun documento nella stessa blockchain (comprensivi di dati personali del possessore), ma preoccupandosi di proteggerli per mezzo di algoritmi crittografici moderni e sicuri, la cui sicurezza è garantita fino a prova contraria, e chi può essere certo che tale prova, se mai ci sarà, non provenga da un attaccante malintenzionato?
Blockchain Federate
Infine è possibile operare un’ulteriore osservazione in merito alle network blockchain scelte per queste piattaforme: le più gettonate risultano senza ombra di dubbio le grandi principali blockchain pubbliche, Bitcoin ed Ethereum, ma a cosa è dovuta questa scelta?
Di primo acchito potrebbe sembrare una scelta controproducente, dal momento che entrambe queste network richiedono un pagamento di una fee, in termini di criptovaluta, per ciascuna transazione approvata, come ricompensa per i miner/validator.
Le motivazioni, in realtà, sono molto semplici:
- appoggiarsi su queste network fornisce l’indubbio vantaggio di avere a che fare con community di nodi numerose e di conseguenza poter usufruire di una fiducia e di una sicurezza maggiori (nelle blockchain ad un maggior numero di nodi corrisponde un maggior livello di fiducia e quindi di sicurezza).
- inoltre, basarsi su reti come Ethereum o Bitcoin, fornisce anche una garanzia che tali network non spariranno di certo a breve, per via della grande quantità di denaro che è stata investita su di esse. Ciò garantisce a queste piattaforme un environment più stabile nel tempo e oggettivamente meno aspetti di cui doversi preoccupare.
Ciò che viene spontaneo chiedersi, a questo punto, è se esistano delle possibili alternative a queste network? E, in caso affermativo, quali potrebbero essere?
Ebbene è possibile immaginare una valida alternativa tramite l’utilizzo di quelle che prendono il nome di Blockchain Private e Blockchain Federate.
Tali blockchain si basano su meccanismi intrinsechi, analoghi a quelli delle blockchain pubbliche, tuttavia rinunciano ad alcuni aspetti circa la trasparenza e l’apertura delle informazioni, operando delle restrizioni su alcuni parametri, come ad esempio l’identità ed il numero dei nodi validatori, l’identità ed il numero dei nodi che possono visionare le informazioni, le specifiche informazioni che possono essere visionate pubblicamente, e molti altri…
È possibile immaginare uno scenario che faccia uso di Blockchain Private (o Federate) per la gestione delle credenziali digitali, nel quale:
- I nodi ammessi come nodi validatori sono in numero ristretto e sono rappresentati solo dai grandi atenei, dagli enti certificatori e da poche altre organizzazioni che avranno il ruolo di garante dell’immutabilità della blockchain e che saranno i soli ad avere in carico la responsabilità di approvare ed appendere nuovi blocchi alla catena.
- Solo un ristretto numero di nodi, rappresentato dagli enti e dalle organizzazioni preposte ad emettere certificazioni, potranno inserire nuove transazioni nella Blockchain.
- Le informazioni archiviate nel database condiviso potranno essere validate da qualsiasi partecipante del network (individuo o organizzazione che sia).
- Solo il diretto proprietario dell’informazione avrà il diritto di decidere quali informazioni e dati mostrare a chi, anche con un livello di granularità fine.
- È possibile scegliere un modello di consenso estremamente performante e a basso costo, alzando conseguentemente il numero di blocchi approvati per unità di tempo (throughput della rete) e abbattendo i costi per l’approvazione.
Anche tale scenario presenta evidentemente alcuni pro ed altrettanti contro, poiché se da un lato costituisce una soluzione per alcuni dei problemi esposti e continua ad abbracciare gli ideali di apertura proposti dalla Blockchain, dall’altro contrappone un marcato intento nel rimanere aggrappato al canonico paradigma che vede un ente garante centralizzato, in cui è necessario riporre fiducia.
Per giungere quindi ad una conclusione, il futuro della formazione e delle certificazioni e credenziali digitali, è da riporre nelle mani della Blockchain?
Nessuno può attualmente dirlo con certezza, ciò che è certo, tuttavia, è che si tratta di una tecnologia ancora giovane che intende rimanere in circolo per ancora molto tempo, la quale ha provato di avere un notevole potenziale, tuttora inespresso, in grado di aprire una finestra su un mondo di cui rimane ancora molto da esplorare e comprendere.
La scelta Reiss Romoli
Reiss Romoli è impegnata nella ricerca e nello sviluppo in quest’ambito e lavorerà lungo due direzioni.
La prima, che include obbiettivi a breve termine, prevede di utilizzare la tecnologia Blockcert integrandola con lo standard Open Badge 2.0 di MY OPEN BADGE.
La seconda invece persegue obbiettivi ben più ambiziosi e a lungo termine, che includono (senza limitarsi a) la progettazione e realizzazione ex-novo di una network Blockchain Federata, a cui possano afferire organizzazioni, pubbliche o private, che operano nel settore della Formazione e dell’Istruzione.
Mauro Evangelista (mauro.evengelista@ssgrr.com)