L’attendibilità dei dati rappresenta un notevole problema, sul web. Basta in effetti notare le polemiche che ormai da anni caratterizzano le discussioni sulle informazioni online, per capirlo. Un problema che è ancora più evidente nel caso delle blockchain, le quali non possono accedere ai dati che sono collocati al di fuori della catena.
Com’è noto, infatti, molti accordi contrattuali, noti come smart contract, dipendono per la loro realizzazione da dati provenienti dalla vita reale. In mancanza di tali informazioni l’errore è dietro l’angolo, con conseguenze facilmente immaginabili.
Per cercare di risolvere il problema è stata quindi approntata una risposta, sotto forma di servizi di terze parti, gli oracoli blockchain. Una soluzione che funge in pratica da ponte tra blockchain ed esterno, fornendo le informazioni desiderate ai contratti intelligenti.
Cosa sono gli oracoli blockchain
Per oracoli blockchain si intendono i servizi di terze parti che si assumono il compito di fornire informazioni esterne alla blockchain su cui è stato caricato uno smart contract. In pratica, permettono ai contratti intelligenti di comunicare con l’esterno del network e ampliare la portata dell’accordo, rendendo più efficiente il sistema.
Se da quanto detto sinora si è pensato che per oracolo blockchain si intende la fonte di dati stessa, occorre però precisare che in realtà si tratta del livello in cui avviene la richiesta , la verifica e l’autenticazione delle informazioni, prima di trasmetterle al richiedente. Tale richiesta, peraltro, presuppone un richiamo dello smart contract e l’impiego di risorse da parte del network interessato. In alcuni casi, gli oracoli sono in grado non solo di inoltrare informazioni ai contratti intelligenti, ma anche di rimandarli alle stesse fonti esterne.
Oracoli: come possono essere classificati?
Gli oracoli possono essere di vario genere. Ad esempio, si possono suddividere in software e hardware: i primi interagiscono con fonti di informazioni online, ad esempio database o siti, per poi trasmettere dati alla blockchain, mentre i secondi sono in grado di ottenere informazioni dal mondo fisico e metterle a disposizione degli smart contract tramite scanner di codici a barre, sensori elettronici e altri dispositivi delegati alla lettura di informazioni.
Possono poi essere centralizzati o decentralizzati. Quelli centralizzati sono controllati da una sola autorità, che è l’unico fornitore di informazioni per uno smart contract, mentre i secondi attingono da più fonti. I primi, di conseguenza, sono più rischiosi, mentre i secondi possono rivelarsi adatti in sede di previsione, fondandosi sul consenso sociale.
Esiste poi una categoria a parte, quella rappresentata dagli oracoli umani. Si tratta di individui dotati di conoscenze specialistiche in un determinato ambito, ovvero vere e proprie autorità nel loro campo. Incaricati di ricercare e verificare l’autenticità di informazioni da varie fonti, devono poi procedere alla loro traduzione per gli smart contract.
Infine, è possibile distinguere tra oracoli in entrata e in uscita. Quelli in entrata si incaricano di trasmettere informazioni da fonti esterne a smart contract, mentre i secondi praticano la direzione inversa. Un esempio di oracolo in uscita è rappresentato da un meccanismo smart lock, in cui al deposito di fondi su un determinato indirizzo fa seguito l’inoltro dell’informazione tramite un oracolo al meccanismo che deve sbloccarlo.
Gli oracoli sono attendibili?
Naturalmente, sinora abbiamo dato per scontato che gli oracoli sono attendibili. Il problema è che non sempre lo sono. Quando uno di essi viene compromesso, tutto il sistema è destinato a subirne le ripercussioni, in termini di affidabilità.
Un’ipotesi, quella della compromissione, che è del resto resa reale da un determinato attacco, indicato come man-in-the-middle. In questo caso, infatti, l’attaccante può cercare di ottenere l’accesso al flusso di dati tra gli oracoli e lo smart contract e nel caso ci riesca provvedere a modificare o falsare i dati.
Proprio da qui ne deriva la necessità di trovare sistemi in grado di proteggere gli oracoli, facendo in modo che possano servire al meglio la blockchain di cui fanno parte. Una sfida che deve necessariamente essere affrontata dal settore, per non lasciare ombre sul proprio operato.