Vuoi richiedere una collaborazione con Fintech Advisor?

Ti piacerebbe pubblicizzare il tuo business su Fintech Advisor?

Sei un influencer e vorresti parlare di Fintech Advisor alla tua community.

Vuoi collaborare come editore oppure vuoi proporci una proposta di collaborazione?

Compila il modulo qui a lato e parlaci di te e della tua proposta!

Valuteremo la tua proposta e ti ricontatteremo nel giro di quale giorno.

3 + 15 =

oracle-problem:-una-tra-le-piu-grandi-sfide-del-mondo-blockchain

Oracle problem: una tra le più grandi sfide del mondo blockchain

Giu 3, 2020 | Blockchain | 0 commenti

Negli ultimi due articoli che ho scritto riguardanti “tutta la verità sugli smart contract” (parte 1 e parte 2), avevamo visto una questione molto ostica legata agli smart contract ovvero quella dell’oracle problem che possiamo tradurre in italiano come “problema dell’oracolo“.

Si tratta di una questione abbastanza spinosa che tende a minare una delle caratteristiche fondamentali della blockchain e dei suoi smart contract ovvero il concetto di trustless.

Prima di addentrarci nel merito capiamo insieme di cosa si tratta.

Cos’è l’oracle problem?

Dal momento che uno smart contract non ha conoscenza della realtà esterna, in alcuni casi deve fare affidamento su una fonte che gli dia un input per poter procedere e in determinate condizioni.

Questo è legato al fatto che qualsiasi sistema informatico non può in alcun modo conoscere il mondo esterno, l’unico modo che ha per agganciarsi alla realtà che viviamo fuori dai pc è quella di fare affidamento su degli input.

Nel caso della blockchain e più nello specifico negli smart contract questo implica interporre una terza parte esterna al contratto e alle sue parti che lo hanno stipulato.

Questa terza parte darà degli input al contratto per permettergli di eseguire dei comandi successivi, ed è in quel preciso momento che prende vita il problema dell’oracolo.

Facciamo subito un esempio pratico.

Immagina un contratto di assicurazione di una casa.

Il contratto tra le due parti, proprietario della casa ed assicurazione, attesta che: se la casa viene incendiata, l’assicurazione pagherà al proprietario 2 milioni di euro.

In questo contratto ci sono fondamentalmente 3 elementi: una polizza attiva, un controllo nei confronti dello stato della casa e, se si verifica la condizione di incendio, pagare il contraente della polizza.

Semplice giusto?

Nei contratti ordinari, intesi come quelli cartacei firmati su carta con penna, prima di vedersi pagata la nostra polizza esistono decine di punti interrogativi come:

  • Verso quale conto bancario deve pagare la compagnia assicuratrice?
  • La polizza è ancora attiva?
  • Il contraente ha sempre rispettato i propri oneri?
  • Chi presenta il reclamo è il contraente?
  • La compagnia assicurativa ha i fondi per pagare il contraente?

Solo dopo aver avuto le risposte a tutte queste ed altri interrogativi allora possiamo giungere al nocciolo della questione, ovvero: la casa è bruciata veramente?

Questa risposta richiederà l’attestazione di un ente terzo, che nello specifico potrebbero essere i vigili del fuoco, e a quel punto il cerchio si chiuderà.

Nel mondo blockchain tutto invece si “riassume” ad uno smart contract.

Il contratto intelligente è in grado di verificare in maniera autonoma tutte le condizioni che abbiamo citato sopra, garantisce la presenza di fondi nell’address dell’assicurazione, conosce l’address del contraente, conosce lo stato dei pagamenti della polizza (sa quindi se è attiva o meno), l’unica cosa che può variare la sua esecuzione facendogli effettuare l’operazione successiva è il cambio del valore legato allo stato della casa (integra/bruciata).

In quel caso sono i vigili del fuoco che dando un input al contratto possono cambiare tale stato e far scattare l’operazione successiva che è il pagamento della polizza.

Come proteggersi dagli oracoli corrotti o sleali

Ora la domanda sorge spontanea: cosa fare se l’oracolo è corrotto e poco leale?

Come potrai capire questa condizione se si verifica va ad intaccare completamente l’intero sistema degli smart contract che cercano di agganciarsi al mondo reale.

L’acronimo GIGO (Garbage In Garbage Out) riassume perfettamente il problema degli oracoli, ovvero se l’input esterno è spazzatura l’output sarà spazzatura.

Quindi se si alimentano gli smart contract con dati errati, i contratti elaborano le informazioni così come sono, restituendo quindi un risultato errato e non previsto.

Possiamo dire che in questi casi “l’intelligenza” degli smart contract è direttamente proporzionale (o strettamente correlata) all’intelligenza/etica/onestà degli oracoli, che possono fargli cambiare il loro stato e fargli eseguire azioni successive al cambio di stato.

Tutto sommato lasciami dire che la blockchain allo stesso tempo traccia l’oracolo ed i suoi input.

Se infatti un oracolo effettua più di una volta degli input falsi e sbagliati, tutto questo è scritto e salvato ben in chiaro nella blockchain.

A questo punto la comunità potrà marcarlo come fraudolento ed escluderlo da qualsiasi altro contratto.

Se questo dovesse accadere, quello che potremmo fare è impugnare tali prove per denunciare l’oracolo, nello specifico esempio citato sopra un oracolo poco disonesto potrebbe essere accusato di frode assicurativa.

Conclusione

Arrivati a questo punto spero che il problema dell’oracolo ti sia chiaro.

Per quanto all’atto pratico sia un elemento che mette alcuni dubbi sugli smart contract, sulla loro diffusione ed utilizzo, lasciami dire che non tutti i mali vengono per nuocere.

Infatti nonostante l’oracle problem esista, mi affiderei con molto più piacere ad uno smart contract piuttosto che ad un contratto classico, questo perchè gli smart contract isolano i cambiamenti di stato in maniera chiara.

Mi spiego meglio.

In un contratto ordinario se dovessi ricorrere alla richiesta di riscatto della polizza assicurativa, nel momento in cui eseguo la richiesta non so in che stato mi trovo, ovvero se sto aspettando che un agente intervenga, se sto aspettando il pagamento, se l’assicurazione ha i fondi per pagarmi o altre possibili situazioni.

Con uno smart contract tutti questi fattori vengono eliminati e l’unica cosa che dovrò monitorare è l’input dell’oracolo, input che poi potrò anche verificare.

A fronte di quanto detto in questo articolo, azzarderei nel dire che la soluzione all’oracle problem è da ricercare più nel sociale che nel tecnico, tutto sommato esistono aziende che hanno intrapreso questa grande sfida a livello tecnico, una su tutte ChainLink supportata anche da Google in questa impresa, che sta introducendo il sistema di Proof of concept (PoC).

Spero questo articolo abbia ampliato ulteriormente la tua visione sul mondo blockchain. Se l’hai trovato utile aiutami a condividerlo con i tuoi amici e colleghi e come sempre se hai dubbi o domande lascia pure un commento qui sotto e ti risponderò quanto prima.

L’articolo Oracle problem: una tra le più grandi sfide del mondo blockchain proviene da EtherEvolution.


>>>CREDIT: LEGGI L’ARTICOLO DALLA FONTE ORIGINALE


IMPORTANTE: Questo articolo non è stato originariamente creato da FintechAdvisor e la sua proprietà intellettuale appartiene totalmente alla fonte originale.

Ogni testo, immagine, foto e così via è stato estratto direttamente e automaticamente dalla fonte originale attraverso il suo feed RSS

0 commenti

Invia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

News in Evidenza

LE MIGLIORI NOTIZIE DEL MONDO FINTECH DIRETTAMENTE SULLA TUA MAIL, OGNI GIORNO.

Le nostre ultime Video News!

LE NOTIZIE PIÙ RECENTI