Blockchain, come far dialogare ledger separati

Molte aziende e software house, specialmente nel mondo finanziario, puntano su blockchain come base tecnologica per realizzare nuovi tipi di reti e di servizi.

In questo blockchain prevede la condivisione, tra i membri della rete specifica, dei ledger dove sono registrate le transazioni. Ledger diversi di reti differenti però non si parlano, in teoria, e questo può essere sia un vantaggio sia un punto debole.

Proprio pensando a questa necessità di dialogo tra ledger di blockchain è stato sviluppato l'Interledger Protocol (ILP). Descrive una vera e propria architettura di rete per lo scambio sicuro di informazioni tra ledger, in particolare transazioni finanziarie che possono avvenire anche tra sistemi con valute (reali o digitali) diverse.

ILP è chiaramente ispirato al modello delle reti IP: considera il completamento di una transazione tra due ledger come la trasmissione di un pacchetto di informazioni lungo una "rete" di ledger che li unisce. Come nel routing IP, questa trasmissione non segue un percorso prefissato ma passa da un ledger all'altro a seconda di varie condizioni. Non è solo teoria, anzi: la Banca d'Inghilterra ha già testato la fattibilità del dialogo via ILP con un suo progetto pilota.

Come funziona ILP

Nello schema di ILP il dialogo tra ledger diversi non è diretto ma mediato dai connector. A livello logico chi gestisce un connettore non è la stessa realtà che gestisce un ledger, ma nulla vieta che un'entità - ad esempio una banca - svolga entrambe le funzioni. Una transazione che deve passare fra due ledger potrebbe essere ad esempio un pagamento tra un utente del ledger A verso un utente del ledger B.

Lo "stack" di ILP ricorda molto il modello delle reti IP

In sintesi, la comunicazione tra ledger prevede diversi passi logici. Seguendo il nostro esempio, su richiesta dell'utente "pagante" il ledger A genera una transazione di pagamento che blocca (non toglie, ancora) i relativi fondi dell'utente.

Il software del ledger passa i dati al suo modulo inter-ledger, che prepara un pacchetto ILP con tutte le informazioni e lo trasferisce sulla rete dei connector. A seconda del ledger di destinazione, quello di origine decide con che connector comunicare.

Come un router su una rete IP, il connector che riceve un pacchetto ILP lo "legge" e in base all'indirizzo di destinazione decide verso quale altro connector instradarlo. A differenza però di un router, un connector è parte attiva nel processo di pagamento. Per questo ha un suo ledger locale in cui registra una transazione associata a quella che ha ricevuto e blocca i fondi necessari. Poi ritrasmette la transazione in rete.

Questa operazione si ripete per ogni connector fino a quando la transazione non arriva al ledger B. Questo la consulta, la memorizza e finalmente autorizza il trasferimento dei fondi al conto del suo utente.

L'autorizzazione deve contenere la controparte cifrata di un codice generato dal ledger di partenza e deve arrivare a quest'ultimo entro un determinato lasso di tempo, altrimenti la transazione non viene completata.

Il ledger B passa l'autorizzazione al connector da cui ha ricevuto la transazione, ed è questo connector che effettivamente "paga" l'utente del ledger B. Poi l'autorizzazione ripercorre la strada già fatta e a ogni passo il connector paga il precedente, sino a che il ledger A non paga il primo con cui ha dialogato.

Punti forti e deboli di ILP

Il grande punto di forza di ILP è che permette la gestione di transazioni fra ledger che normalmente sarebbero separati e che possono anche gestire valute diverse. O anche "oggetti" del tutto diversi. In questo senso i connector hanno il ruolo di convertitori.

Se ad esempio il ledger di partenza "ragiona" in euro e quello di destinazione in dollari, uno dei connettori della catena di comunicazione eseguirà una conversione al tasso di cambio che offre. È un servizio, per il quale chi gestisce il connettore riceve un compenso.

ILP è anche un protocollo sicuro, sia dal punto di vista strettamente informatico (c'è ampio uso di cifratura e un preciso controllo delle informazioni) sia nella gestione dei pagamenti.

Il modello adottato è quello dei conditional transfer: a ogni passo la transazione economica viene preparata e i fondi bloccati, ma i pagamenti avvengono solo in cascata dopo che i due ledger si sono effettivamente "parlati". E il tutto deve avvenire entro un certo lasso di tempo stabilito in partenza.

La conseguenza principale di questo modello è che il rischio economico per gli utenti del ledger è ridotto al minimo. Chi deve ricevere il denaro lo riceve prima di tutti, chi deve pagare è l'ultimo nodo della catena di ritorno, quindi l'ultimo a "cedere" fondi.

Il rischio è tutto sulle spalle dei connector: se la comunicazione di ritorno per qualche motivo non si completa nei tempi previsti, può accadere che un connettore paghi quello precedente ma non sia pagato da quello successivo.

La catena di comunicazione blockchain a quel punto è spezzata e ILP prevede i metodi per ristabilirla in modo da completare i pagamenti come previsto inizialmente, ma è un rischio finanziario che si considera inevitabile e collegato proprio al ruolo dei connector.

Se questo articolo ti è piaciuto e vuoi rimanere sempre informato sulle novità tecnologiche iscriviti alla newsletter gratuita.

LASCIA UN COMMENTO

Please enter your comment!
Please enter your name here