Notarizzazione e Certificazione su Blockchain
Vedi tutti i miei articoli.
Perché certificare i dati
Oggi le informazioni digitali viaggiano in tutto il mondo alla velocità della luce, tutti i sistemi che coinvolgono la vita privata, sociale e lavorativa dei cittadini sono interconnessi e ogni informazione è facilmente ricercabile, replicabile e condivisibile.
Tuttavia, questa meraviglia tecnologica crea nuove sfide nella verifica dell’attendibilità, autenticità e fonte delle informazioni e nella protezione della proprietà intellettuale, infatti è estremamente semplice appropriarsi delle creazioni altrui, modificarle solo in parte e farle proprie, così come è estremamente facile alterare o forgiare informazione, manipolandola per perseguire obiettivi societari, sociali o politici.
Per proteggersi dall’appropriazione e dalla manipolazione delle informazioni, per molto tempo ci siamo rivolti ai servizi notarili, un’istituzione la cui fondazione in occidente risale all’alto medioevo, servizi che consentono di depositare e certificare determinate informazioni attraverso una terza parte fidata, generalmente autorizzata da stati e governi.
Attraverso la notarizzazione si può dimostrare la validità di un contratto, di possedere una certa proprietà fisica o digitale, e che una determinata informazione esiste a partire da un determinato momento e non è stata successivamente modificata.
Uno degli use case più interessanti di certificazione notarile è la protezione della proprietà intellettuale, ossia la capacità di dimostrare di aver concepito un’opera, un processo, un’idea, una soluzione tecnologica o qualsiasi altra creazione della mente umana.
Un meccanismo più sofisticato che consente di proteggersi dall’alterazione l’omissione o l’inconsistenza delle informazioni è l’auditing, che è la convalida delle informazioni interconnesse eseguito da trusted third-parties e che generalmente si utilizzano in ambito finanziario.
I servizi di notarizzazione e auditing combinati forniscono un servizio di certificazione dei dati e garantiscono il massimo livello di affidabilità del dato e delle organizzazioni ad esso collegato.
Combattere la contraffazione con la certificazione
La contraffazione colpisce le aziende che producono o distribuiscono beni di alta qualità o ad alto valore aggiunto, e si può combattere efficacemente usando le tecnologie blockchain. La strategia principale per contrastare la contraffazione consiste nel verificare l’autenticità e l’univocità di un bene attraverso un identificativo univoco non duplicabile.
A questa può essere abbinata la tracciatura della storia del prodotto, delle sue componenti, lavorazioni manutenzioni e proprietari. Per i batch di un prodotto in quantità limitata o ad alto valore è possibile tracciare ad il numero degli esemplari in circolazione, consentendo a tutti i partecipanti di una supply chain, inclusi merchant e acquirenti, di verificare autonomamente tutti questi attributi attraverso un’app dedicata.
Per rendere più efficace la verifica di autenticità e la tracciatura, gli oggetti fisici possono possono dotare di identificativi non duplicabili come tag anti-tampering, che nei casi più sofisticati possono contenere degli attributi fisici univoci che identificano l’oggetto.
Alterazione dei prodotti nelle supply chain
Molte tipologie di frode si verificano quando esiste un’asimmetria informativa tra acquirente e venditore, sullo stato di usura, manutenzione e funzionamento di un oggetto fisico (ad esempio lo quantita’ di utilizzo e manutenzione di una macchina / veicolo, l’operatività in ore di un apparecchio industriale, i lavori di manutenzione su un immobile. Tali frodi si possono contrastare mantenendo su blockchain una sequenza temporale (o timeline) di letture di attributi specifici di un certo item, che risulta impossibile da alterare a posteriori e che è in grado di apportare valore aggiunto all’item in caso di vendita. Ad esempio aggiungendo una tracciatura mensile del chilometraggio di un veicolo o le ore di utilizzo di un macchinario industriale, in caso di vendita l’acquirente potrebbe controllare la consistenza temporale di queste tracciature ed avere maggiore confidenza (e quindi essere disposto a pagare una cifra maggiore) per il prodotto acquistato.
Per maggiori approfondimenti sul tema blockchain e supply chain consigliamo l’articolo Blockchain e Quality Assessment nelle Supply Chain.
Pain nella certificazione dei dati
I principali problemi nel ricorrere all’utilizzo di sistemi di notarizzazione e certificazione centralizzata delle informazioni sono principalmente connessi a:
- costi: la notazione e la certificazione di informazioni attraverso società specializzate è molto costosa;
- automazione: non è sempre possibile includere i processi di notarizzazione e certificazione tradizionali in un flusso automatico, spesso è necessario un intervento umano che limita velocità e flessibilità;
- reliability: i certificatori umani rimangono sempre corruttibili, soggetti a errori e i loro archivi possono essere distrutti o manomessi da attori esterni.
- eterogeneità: le supply chain prevedono interazioni tra parti che sono spesso distribuite a livello globale, con regolamentazioni e sistemi incompatibili.
Questi pain creano le precondizioni per la nascita di nuove soluzioni su un substrato pubblico decentralizzato come la blockchain.
La certificazione su blockchain
La certificazione dei dati sulla blockchain consente di utilizzare un strumento pubblico, neutro e immutabile per dimostrare l’affidabilità della propria operazioni, usando strumenti di certificazione e auditing. Scrivere dati su blockchain consente a diversi attori di collaborare e contribuire ai dati di un item fisico o digitale, in modo semplice ed efficace. Infatti, grazie alla blockchain è possibile semplicemente scrivere informazioni su un registro globale indelebile, distribuito tra migliaia di nodi indipendenti, che possono essere consultati liberamente e gratuitamente da clienti, investitori e partner.
I vantaggi di usare la blockchain come piattaforma per la certificazione di informazioni e, in una fase più avanzata anche per scambi economici in operazioni commerciali sono molteplici:
- piattaforma neutrale e permissionless: non bisogna sottoscrivere accordi commerciali per poter accedere ai servizi delle principali blockchain pubbliche;
- accessibile da tutti: non ci sono limiti geografici o politici all’utilizzo di tali servizi;
- economica: i costi per la certificazione di un dato e le commissioni di transazione sono una frazione degli equivalenti centralizzati;
- riconosciuto valore economico e di trust: l’affidabilità ed il valore finanziario dei token sottostanti sono riconosciuti a livello internazionale senza sovrastrutture di garanzia;
- programmabile: tutte le operazioni su blockchain possono essere integrate con sistemi automatici.
Principali Use Case di Certificazione
In questa sezione descriviamo le aree tematiche più interessanti che molte aziende stanno esplorando per la certificazione di dati su blockchain.
- Intellectual Property: è possibile certificare una proprietà intellettuale associata ad una creatività digitale o digitalizzabile, è inoltre possibile tracciare operazioni su di essa come la cessione, il pagamento dei diritti e la notifica della riproduzione di un’opera.
- Anti counterfeiting / Anti manipulation: è possibile identificare con sicurezza un item materiale, ad esempio certificando su blockchain alcune sue caratteristiche fisiche uniche, ed è possibile usare queste informazioni per rilevare e quindi scoraggiare contraffazioni e manipolazioni.
- Product / supply chain: è possibile tracciare tutti gli eventi relativi alle materie prime, alla costruzione, al trasporto, alla vendita e al possesso di un item fino al suo smaltimento.
- Business Transparency: è possibile tracciare lo stato finanziario e la produzione di determinati beni da parte di un certo business.
- Self Sovereign Identity: consente a delle organizzazioni (pubbliche e private) di aggiungere informazioni in modo collaborativo associandole ad un’identità digitale auto definita, come certificazioni, patenti e titoli di studio.
- Certified Economic Operations: è possibile certificare ed automatizzare procedure e contratti che prevedano scambi economici e compensi tra parti, supervisionati da Smart Contract.
- Public Administration Transparency: è possibile tracciare le attività finanziarie, gli appalti e l’utilizzo dei fondi di una pubblica amministrazione.
Le principali blockchain pubbliche decentralizzate, grazie alle loro caratteristiche di immutabilità, persistenza illimitata nel tempo, trasparenza, accessibilità e programmabilità sono la soluzione ottimale per la notarizzazione e la certificazione di informazioni.
Tuttavia, scrivere e verificare dati su blockchain è complesso per l’utente digitale medio: è necessario infatti essere familiare con formati di rappresentazione delle informazioni, avere familiarità con primitive crittografiche, saper gestire token wallet e chiavi private, saper interagire con smart contract, saper acquistare token per pagare le fee di scrittura e infine rendere il tutto fruibile per tutte le parti interessate.
Ecco perché molte aziende e startup stanno lavorando allo sviluppo di piattaforme di alto livello che semplificano l’interazione della blockchain nella certificazione dei dati.
Una delle soluzioni con maggior potenziale di innovazione è Themis, una piattaforma dedicata alla certificazione di dati linkati e strutturati su blockchain, pensata per essere general purpose. Questa piattaforma fornisce anche uno strumento per la certificazione di dati testuali semi-strutturati, attraverso una user experience simile a quella di un social microblogging.
Timestamping su blockchain
Qualsiasi informazione digitale può essere convertita in una digital fingerprint unica. Questa fingerprint si presenta come un codice alfanumerico di lunghezza fissa in grado di riassumere dati di dimensioni arbitrarie, può essere generata solo dal contenuto delle informazioni originali, lo stesso contenuto genera sempre la stessa fingerprint, e in nessun modo consente ad osservatori esterni di ricostruire l’informazione digitale originale, garantendo così completa privacy. Tuttavia, data l’informazione originale, è sempre possibile verificare la correttezza del fingerprint. Tecnicamente una digital fingerprint si ottiene applicando una funzione hash.
La scrittura immutabile di fingerprint su blockchain è detta timestamping.
Scrivere una digital fingerprint di un dato su blockchain, insieme ad eventuali metadati (come il nome dell’autore delle informazioni, la società sottostante, la firma digitale creata con certificati emessi da terzi), è sufficiente per dimostrare in modo conclusivo che una determinata informazione, in possesso di una specifica entità, esisteva in un determinato momento, non necessariamente pubblicando il contenuto dell’informazione stessa.
Grazie al fatto che i dati sulla blockchain sono accessibili al pubblico, tutte le verifiche possono essere eseguite in modo indipendente da terze parti interessate e autorizzate, dopo l’accesso ai dati originali, se sono limitate.
Le Authority
La combinazione della digital fingerprint di un dato e il suo timestamp sulla blockchain consentono di dimostrare che questi dati esistevano in un determinato momento, mentre il possesso dei dati (se privato) o la presenza di una digital fingerprint apposta sui metadati del timestamp consente di dimostrare in modo conclusivo che queste informazioni sono state prodotte da una determinata persona o organizzazione.
Infine la storicizzazione di una chiave pubblica di una persona / organizzazione con la relativa procedura di accertamento (KYC) consente di avere una non ripudiabilità della firma stessa.
Modalità di notarizzazione e di certificazione
Il timestamping di dati da parte di entità identificabili con chiavi asimmetriche è detto notarizzazione su blockchain (o semplicemente notarizzazione nel contesto di questo articolo).
La notarizzazione di dati operata da entità certificate è detta data certification.
Nella mindmap sottostante si illustrano i concetti di Data Notarisation, Identity Certification e e Data Certification, le loro relazioni e proprietà principali. In particolare si distinguono le due modalità di Identity Certification (self o 3rd party) e le due modalità di data certification (self o 3rd party) con relative proprietà.
Modalità di timestamp del dato
Precedentemente abbiamo introdotto il concetto di timestamping e di fingerprint, tuttavia esistono diverse strategie per certificare dati su blockchain, con diversi pros e cons. Riassumiamo tutte le strategie di seguito.
- Scrittura di Fingerprint: il fingerprint di un dato raw è scritto su blockchain usando il payload di una transazione.
- > Pros: economico in quanto il dato scritto su blockchain ha una dimensione contenuta a prescindere dalla dimensione del dato originale, compatibile con privacy personale e di business.
- > Cons: il verificatore del dato non è autonomo.
- Scrittura di Fingerprint aggregate: più fingerprint di dati sono aggregate insieme per costruire una fingerprint complessiva che permette di ridurre ulteriormente il numero ed il volume di dati scritti su blockchain.
- > Pros: economico in quanto può aggregare quantità arbitrarie di fingerprint senza compromettere la dimostrabilità.
- > Cons: il verificatore del dato non è autonomo.
- Scrittura di dati raw: un dato raw che si vuole certificare viene scritto direttamente su blockchain usando il payload di una transazione.
- > Pros: il dato può essere verificato indipendentemente da qualunque validatore ed è disponibile per sempre senza possibilità di rimozione.
- > Cons: il dato non può essere cancellato in nessun modo e può introdurre problemi irreversibili di privacy.
Privacy del Dato
Come abbiamo visto in precedenza, i dati su blockchain possono essere essere notarizzati come fingerprint o in plain (raw) format. Il vantaggio principale nello scrivere dati plain consiste esclusivamente nel garantire autonomia a qualunque verificatore. Essendo il processo di scrittura di dati su blockchain molto costoso, la scrittura plain essere applicata solo a dati di piccole dimensioni e circostanziati. La notarizzazione di dati come fingerprint è invece l’approccio da preferire, infatti oltre a tenere sotto controllo i costi di scrittura e renderli indipendenti dal volume di dati certificato, consente di rispettare implementare diversi livelli di privacy garantendo comunque la dimostrabilità del dato, nel rispetto di normative come la GDPR.
Come rappresentare il dato perché sia updatable
Rappresentare il dato certificato su blockchain in un formato che possa essere human e machine interpretable apre scenari di automazione molto potenti, soprattutto quando si parla di coordinare operazioni su una product / supply chain.
La rappresentazione del dato determina la flessibilità dell’uso che se ne fa. Utilizzare dati linkati e strutturati fornisce molti vantaggi esposti di seguito.
- Dato strutturato: il dato ha una struttura machine readable, opzionalmente può essere associato ad uno schema e quindi avere una semantica di interpretazione univoca, ad esempio un dato che rappresenta un’auto potrebbe avere un set di caratteristiche predefinite, tutti le rappresentazioni di un’auto potrebbero far riferimento a quello schema per rendersi univocamente comprensibili a qualsiasi lettore umano e qualunque macchina.
- Dato linkato: collegare informazioni tra loro consente di esprimere relazioni tra dati, queste relazioni possono rappresentare anche l’evoluzione dello stesso dato nel tempo.
I dati su blockchain non sono modificabili, quindi l’unico modo per rappresentare un update è introdurre un nuovo dato che contenga un riferimento ad un dato esistente, definiamo inoltre un protocollo secondo il quale gli osservatori concordano che quel nuovo dato rappresenta un update lecito del dato precedente. Questa operazione può essere validata da uno smart contract o da un protocollo esterno definito esternamente dalla blockchain usata per tracciare l’informazione, non sottoposto alle attuali limitazioni di throughput e di costi.
Nel diagramma sotto vediamo:
- Un esempio di item strutturato con attributi e valori, che può opzionalmente definire uno schema.
- Un esempio di link tra Item.
- Un esempio di update successivi di un Item che va a costruire una timeline.
Questo modello dati consente di fatto di rappresentare grafi di conoscenza, è quindi sufficientemente generico da poter rappresentare relazioni e scenari arbitrariamente complessi.
Altri vantaggi legati all’uso di dati strutturati e con una semantica univoca sono connessi alla possibilità di eseguire controlli di consistenza quantitativi oltre che qualitativi, verificando fatti come la quantity consistency: un certo produttore dichiara di utilizzare una determinata quantità di materie prime certificate per i realizzare un proprio prodotto P. Data la quantità di prodotti P certificati dal produttore, risulta effettivamente che tale produttore abbia acquistato la necessaria quantità di materie prime certificate?
Piattaforme per la certificazione di dati su blockchain
Certificare dati su blockchain è un’operazione che richiede molte competenze, infatti come illustrato in precedenza bisogna definire ed avere dimestichezza con:
- formati dati per rappresentare l’informazione in modo univoco ed interpretabile da tutti o quantomeno dalle parti interessate;
- protocolli per consentire a tutti gli attori di contribuire a tali dati, in modo da distinguere le operazioni lecite;
- gestione di wallet e token e l’acquisto di questi, necessari per pagare al network le operazioni di timestamp.
In funzione del volume di dati che si vogliono certificare, bisogna inoltre trovare un compromesso in termini di frequenza e volume di scrittura compatibile con il throughput della blockchain sottostante.
È inoltre possibile automatizzare transazioni economiche in funzione delle operazioni sui dati certificati, al fine di rendere più rapidi, economici e affidabili i processi finanziari dietro a product e supply chain. Sebbene questa opportunità sia ancora in stato embrionale, in quanto legata alla maturazione dell’uso delle blockchain come strumenti di pagamento B2B, risulta tra le più promettenti, in quanto aumenterebbe notevolmente il livello del trust in catene di prodotto lunghe e distribuite.
Per ottenere tutto questo molti player si rivolgono all’uso di piattaforme off-the-shelf. Tali piattaforme possono essere state costruite con architetture differenti, con diversi compromessi in termini di reliability (quanto dobbiamo fidarci dei gestori), usability (quanto è semplice usarle) scalability (quante operazioni ci consentono di fare). Vediamo le principali categorie per queste piattaforme.
- Fully decentralised: tutte le operazioni di certificazione e validazione sono eseguite da codice on-chain.
- > Pros: è completamente reliable.
- > Cons: presenta limiti di scalability e di usability, in termini di costo e di flessibilità delle operazioni implementabili.
- Semi decentralised: alcune funzionalità ausiliarie come l’aggregazione di dati, l’indicizzazione e alcuni aspetti di validazione sono implementate in modo centralizzato, le funzionalità di certificazione del dato rimangono su blockchain.
- > Pros: non ha limiti di scalabilità e di flessibilità.
- > Cons: non c’è completa reliability per tutte le operazioni e tutti gli scenari funzionali.
- Centralised: tutte le funzionalità sono implementate come un servizio centralizzato. Non c’è nessuna garanzia di reliability tuttavia scalability e usability non hanno limiti tecnici.
Conclusioni
Nell’era dell’informazione è molto facile acquisire dati ma molto complesso verificarne l’attendibilità, è inoltre più importante tutelarne la proprietà e l’autenticità.
Gli strumenti tradizionali per la tutela dell’informazione sono obsoleti e costosi, ma oggi la blockchain abilita un nuovo paradigma di certificazione, economico e programmabile.
È infatti possibile certificare l’origine temporale e l’autorevolezza dei propri dati grazie al timestamping e alla identity certification, usando diversi approcci, alcuni dei quali garantiscono pieno rispetto della privacy e delle norme per la tutela del trattamento dei dati (come GDPR).
Tuttavia usare la blockchain richiede competenze specifiche su come acquistare, detenere ed utilizzare token, su come effettuare transazioni, su come eseguire la scrittura di payload, su come rappresentare l’informazione.
Molte aziende stanno rispondendo a questa opportunità di mercato fornendo piattaforme con diversi gradi di specializzazione, che semplificano le operazioni di scrittura e consultazione di informazioni su blockchain.
Abbiamo esaminato quali sono le caratteristiche principali di queste piattaforme di certificazione, in termini di validazione del dato, dell’authority, della privacy, e descritto un generico modello dati che può essere utilizzato per realizzare i più promettenti scenari di certificazione decentralizzata.
Riteniamo infine che lo sviluppo di soluzioni di certificazione sia solo agli inizi e che questa industria abbia il potenziale per affermarsi come un immancabile strumento complementare nel trend di digitalizzazione dei grandi processi industriali e logistici.
Grazie!
Se sei arrivato fin qui probabilmente hai apprezzato il mio articolo. Perchè non mi lasci un feedback, come un commento o degli applausi? Se sei nuovo su Medium probabilmente non saprai che un click sul bottone applausi vale solo 1 / 50 del voto massimo.