Bitcoin e gli oracoli


Introduzione
Questa è una presentazione di ciò che si potrà fare fra non molto con Bitcoin e la tecnologia che vi sta nascendo e sviluppando attorno.
Si aprono nuove possibilità per la gestione di accordi, scommesse, assicurazioni, taglie.
Attualmente un software da solo non è in grado di gestire e forzare contratti per via dell’impossibilità di avere un contatto diretto con la realtà, la possibilità di “interrogarla” in modo efficiente e affidabile.
Si stanno quindi cercando soluzioni, e qui ne indicherò una.


Premessa
Prenderò come punto di riferimento il progetto Orisi.
Non è l’unico metodo, non è nemmeno detto che sia tecnicamente il migliore, il più avanzato, quello che si diffonderà di più.
Ma penso che sia il più facile da capire e da spiegare.
Non entrerò poi in tutti i dettagli, per chi volesse sapere di più consiglio la lettura di questa pagina: Orisi White Paper.
Altre soluzioni più avanzate:


Multisig
Nel protocollo Bitcoin vi è la possibilità di creare transazioni multisig, che cioè possono richiedere più firme per poter essere accettate e successivamente confermate dalla rete.
Dicendo firme si intende semplicemente che sul proprio client/software Bitcoin l’utente va a confermare che è d’accordo per eseguire quella transazione, il tutto avviene automaticamente e digitalmente.
Mettiamo ad esempio che io e altri due amici vogliamo creare un fondo comune dove mettere un po’ dei nostri soldi.
Non vogliamo però affidarsi a nessun servizio bancario e/o notaio per la sua gestione, e vogliamo comunque essere sicuri che per ogni uso che verrà fatto di questo fondo, servirà un accordo per almeno due di noi (ma anche tutti e tre se vogliamo).
Pensate quindi di ritrovarvi con in mano il vostro smartphone, e ricevere una notifica che è stata fatta richiesta per spostare una certa quantità di questi Bitcoin.
Farete una chiamata ai vostri due amici per sapere a cosa serve questa transazione e se siete d’accordo che venga effettuata.
Se sarà raggiunto un accordo, semplicemente la confermerete e questa verrà eseguita dal network.
Il tutto ripeto, senza l’ausilio di nessun entità terza, al di fuori del vostro gruppo.

Questo sistema può essere ovviamente usato anche all’interno di software e non solo da persone.

Spiegazione più tecnica: How will multisig addresses work?


Oracoli
Si è dato nome a questi sistemi/software per via della loro funzione.
Prendendo dal testo presente su Wikipedia: http://it.wikipedia.org/wiki/Oracolo
L’oracolo (dal latino oraculum) è un essere o un ente considerato fonte di saggi consigli o di profezie,
un’autorità infallibile, solitamente di natura spirituale.”

L’oracolo è in questo caso sarà un software, o meglio, un servizio a cui domandare lo stato di eventi e situazioni nel mondo, per sapere la “verità”

Questo software sarebbe interrogato online per sapere ad esempio se:

  • Piove nel paese X?
  • Ha Y vinto le elezioni appena concluse?
  • Ha H compiuto 18 anni?
  • Il prezzo di Bitcoin è superiore a K?

Questi sono giusto alcuni esempi.
Tali software/oracoli potrebbero essere istruiti, programmati, per fornire queste risposte.
Ad esempio potrebbero andare a leggere ogni giorno le scritte presenti nella pagina di qualche sito del meteo, e in base a questo dare lo stato del tempo di un luogo.
Oppure, se all’inizio per certe situazioni non fosse facile rendere il tutto automatizzato, i risultati potrebbero essere compilati dai gestori dell’oracolo, che comunque continuerebbe a dare risultati online se interrogato telematicamente.


Affidabili?
Un oracolo però non è detto che sia per forza affidabile:

  • Potrebbe venire bucato da un hacker
  • Non si può essere 100% certi che funzioni ogni volta correttamente
  • Potrebbe scollegarsi durante il processo
  • Potrebbe essere corrotto dal gestore e dare proprio risultati falsi.

Per questi e altri motivi non ci si può affidare ad un entità singola. Cosi è qui che vengono impiegate le transazioni multisig citate all’inizio.

La soluzione a questo problema di affidabilità sarà interrogare più oracoli.
Ognuno di loro darà la risposta e la sua “firma” alla transazione.
La maggioranza delle risposte andrà quindi a decidere il risultato della transazione.
Questo renderà più difficile e costoso la possibilità di compromettere un largo numero di oracoli, magari pescati a caso (o a scelta) da da una ancora ben più ampia lista.
Sarà difficile se non impossibile sia per motivi tecnici (diverse configurazioni sui server), sia per impossibilità di rintracciarli. Alcuni oracoli potrebbero ad esempio essere attivi sul deepweb.


Incentivi
Ma cosa potrebbe spingere delle persone ad attivare sul proprio computer/server un oracolo?
Semplicemente le transazioni che andrebbero ad eseguire, confermare, avrebbero impostate delle fee/commissioni che poi loro andrebbero ad incassare.
Si potrebbe si decidere di offrire il servizio di oracolo gratuitamente, ma anche un oracolo che si facesse pagare per una modica cifra verrebbe facilmente interrogato/utilizzato.
Anzi, forse uno a pagamento verrebbe più facilmente considerato affidabile visto che sarebbe nel suo interesse mostrarsi tale per poter essere usato quante più volte possibile, e ricevere quindi sempre più commissioni.
Si può vedere ad esempio qui, da questa primordiale lista che alcuni oracoli chiedono di essere pagati 0.03 mBTC: http://oracles.li
Il software potrebbe anche, sempre pagandoli, interrogare un grosso numero random di utenti/lavoratori su servizi come Amazon Mechanical Turk. (proposta di un dev)


Conclusione
Questo per definire un po’ come funzionerebbe dietro le quinte tutto il sistema.
Da ricordare sempre che dal lato utente tutto ciò sarebbe invisibile.
Due persone potrebbero fare una scommessa se su un tal giorno pioverà o meno in una determinata zona.
Il tutto si potrà fare comodamente anche da un app sul loro smartphone, facile e sicuro.
Ora, con un po’ di fantasia, in quante cose pensate che si possa utilizzare questo sistema?
Forse si aprono occasioni e situazioni che fino ad ora si consideravano impossibili …