Ricerca nel sito web

Blockchain 2.0 - Introduzione all'Hyperledger Fabric [Parte 10]


Tessuto iperregistro

Il progetto Hyperledger è una sorta di organizzazione ombrello che comprende molti moduli e sistemi diversi in fase di sviluppo. Tra questi singoli sottoprogetti il più popolare è l'Hyperledger Fabric. Questo post esplorerà le caratteristiche che renderebbero il Fabric quasi indispensabile nel prossimo futuro, una volta che i sistemi blockchain inizieranno a proliferare nell'uso principale. Verso la fine daremo anche una rapida occhiata a ciò che gli sviluppatori e gli appassionati devono sapere riguardo agli aspetti tecnici dell'Hyperledger Fabric.

Inizio

Come di consueto per il progetto Hyperledger, Fabric è stato “donato” all'organizzazione da uno dei suoi membri principali, IBM, che in precedenza era il principale sviluppatore dello stesso. La piattaforma tecnologica condivisa da IBM è stata sviluppata congiuntamente nell'ambito del progetto Hyperledger con il contributo di oltre 100 aziende e istituzioni associate.

Attualmente in esecuzione sulla v1.4 della versione LTS, Fabric ha fatto molta strada ed è attualmente considerata la soluzione aziendale di riferimento per la gestione dei dati aziendali. La visione centrale che circonda il progetto Hyperledger inevitabilmente permea anche il Fabric. Il sistema Hyperledger Fabric porta avanti tutte le funzionalità scalabili e pronte per l'azienda che sono codificate in tutti i progetti dell'organizzazione Hyperledger.

Punti salienti del tessuto Hyperledger

Hyperledger Fabric offre un'ampia varietà di funzionalità e standard basati sulla missione di supportare lo sviluppo rapido e le architetture modulari. Inoltre, rispetto ai suoi concorrenti (principalmente Ripple ed Ethereum), Fabric assume una posizione esplicita nei confronti delle blockchain chiuse e autorizzate. Il loro obiettivo principale qui è quello di sviluppare una serie di strumenti che aiuteranno gli sviluppatori blockchain a creare soluzioni personalizzate e non a creare un ecosistema o un prodotto autonomo.

Di seguito sono riportati alcuni dei punti salienti dell'Hyperledger Fabric:

  • Sistemi blockchain autorizzati

Questa è una categoria in cui altre piattaforme come Ethereum e Ripple differiscono molto da Hyperledger Fabric. Il Fabric per impostazione predefinita è uno strumento progettato per implementare una blockchain privata autorizzata. Tali blockchain non sono accessibili a tutti e i nodi che lavorano per offrire consenso o per verificare le transazioni sono scelti da un’autorità centrale. Ciò potrebbe essere importante per alcune applicazioni come quelle bancarie e assicurative, dove le transazioni devono essere verificate dall’autorità centrale anziché dai partecipanti.

  • Flusso di informazioni riservate e controllate

Il Fabric ha sistemi di autorizzazione integrati che limiteranno il flusso di informazioni all'interno di un gruppo specifico o di determinati individui, a seconda dei casi. A differenza di una blockchain pubblica in cui chiunque e tutti coloro che gestiscono un nodo avranno una copia e un accesso selettivo ai dati archiviati nella blockchain, l'amministratore del sistema può scegliere come e chi condividere l'accesso alle informazioni. Esistono anche sottosistemi che crittograferanno i dati archiviati con standard di sicurezza migliori rispetto alla concorrenza esistente.

  • Architettura plug and play

Hyperledger Fabric ha un'architettura di tipo plug and play. I singoli componenti del sistema possono essere scelti per essere implementati e i componenti del sistema per i quali gli sviluppatori non vedono un utilizzo potrebbero essere scartati. The Fabric segue un percorso di sviluppo altamente modulare e personalizzabile piuttosto che un approccio unico per tutti adottato dai suoi concorrenti. Ciò è particolarmente interessante per le aziende e le aziende che desiderano costruire rapidamente un sistema snello. Ciò, combinato con l’interoperabilità del Fabric con altri componenti Hyperledger, implica che sviluppatori e progettisti abbiano ora accesso a un insieme diversificato di strumenti standardizzati invece di dover estrarre codice da fonti diverse e integrarli successivamente. Presenta inoltre un modo piuttosto sicuro per costruire robusti sistemi modulari.

  • Contratti intelligenti e chaincode

Un'applicazione distribuita in esecuzione su una blockchain è chiamata contratto intelligente. Mentre il termine smart contract è più o meno associato alla piattaforma Ethereum, chaincode è il nome dato allo stesso nel campo Hyperledger. Oltre a possedere tutti i vantaggi derivanti dalla presenza delle DApp nelle applicazioni chaincode, ciò che distingue Hyperledger è il fatto che il codice per lo stesso può essere scritto in più linguaggi di programmazione di alto livello. Supporta Go e JavaScript immediatamente e ne supporta molti altri anche dopo l'integrazione con i moduli del compilatore appropriati. Anche se questo fatto potrebbe non significare molto a questo punto, resta il fatto che se il talento esistente può essere utilizzato per progetti in corso che coinvolgono la blockchain, ciò ha il potenziale per far risparmiare alle aziende miliardi di dollari nella formazione e nella gestione del personale a lungo termine. Gli sviluppatori possono programmare nei linguaggi in cui si sentono a proprio agio per iniziare a creare applicazioni su Hyperledger Fabric e non hanno bisogno di imparare o formarsi su linguaggi e sintassi specifici della piattaforma. Ciò presenta una flessibilità che gli attuali concorrenti di Hyperledger Fabric non offrono.

  • Hyperledger Fabric è una piattaforma di driver back-end ed è principalmente rivolta a progetti di integrazione in cui è richiesta una blockchain o un'altra tecnologia di registro distribuito. In quanto tale, non fornisce alcun servizio rivolto all'utente, ad eccezione di funzionalità di scripting minori. (Pensa che sia più simile a un linguaggio di scripting.)
  • Hyperledger Fabric supporta la creazione di sidechain per casi d'uso specifici. Nel caso in cui lo sviluppatore desideri isolare un insieme di utenti o partecipanti a una parte o funzionalità specifica dell'applicazione, può farlo implementando catene laterali. Le catene laterali sono blockchain che derivano da un genitore principale, ma formano una catena diversa dopo il loro blocco iniziale. Questo blocco che dà origine alla nuova catena rimarrà immune da ulteriori cambiamenti nella nuova catena e la nuova catena rimarrà immutabile anche se nuove informazioni vengono aggiunte alla catena originale. Questa funzionalità aiuterà a ridimensionare la piattaforma in fase di sviluppo e introdurrà capacità di elaborazione specifiche per l'utente e per il caso specifico.
  • La caratteristica precedente significa anche che non tutti gli utenti avranno una copia “esatta” di tutti i dati nella blockchain come ci si aspetta solitamente dalle catene pubbliche. I nodi partecipanti avranno una copia dei dati che è rilevante solo per loro. Ad esempio, considera un'applicazione simile a PayTM in India. L'app ha funzionalità di portafoglio e un'estremità di e-commerce. Tuttavia, non tutti gli utenti del suo portafoglio utilizzano PayTM per fare acquisti online. In questo scenario, solo gli acquirenti attivi avranno la corrispondente catena di transazioni sul sito di e-commerce PayTM, mentre gli utenti del portafoglio avranno solo una copia della catena che memorizza le transazioni del portafoglio. Questa architettura flessibile per l’archiviazione e il recupero dei dati è importante durante la scalabilità, poiché è stato dimostrato che enormi blockchain singolari aumentano i tempi di elaborazione delle transazioni. In questo modo la catena può essere mantenuta snella e ben categorizzata.

Esamineremo in dettaglio gli altri moduli del progetto Hyperledger nei prossimi post.

Leggi il nostro prossimo post in questa serie:

  • Blockchain 2.0 - Spiegazione del calcolo distribuito e delle applicazioni distribuite

Articoli correlati