Hyperledger Fabric Tutorial für Anfänger: Umfassender Leitfaden

Veröffentlicht: 2021-02-24

Es sind zahlreiche Hyperledger-Frameworks und -Tools verfügbar . Eines der erfolgreichsten ist Hyperledger Fabric. Seit seiner Veröffentlichung im Jahr 2016 hat sich Hyperledger Fabric zu einem beliebten Framework für die Entwicklung von Unternehmensanwendungen entwickelt. In diesem Hyperledger Fabric-Tutorial für Anfänger führen wir Sie durch alles, was Sie wissen müssen, direkt von dem, was es ist, wie die Struktur ist und wie Sie Ihre erste Anwendung darauf ausführen. Beginnen wir ohne weitere Verzögerung mit unserem Hyperledger-Fabric-Tutorial .

Inhaltsverzeichnis

Was ist Hyperledger Fabric?

Hyperledger Fabric ist ein Blockchain-basiertes Framework der Enterprise-Klasse. Es ist ein Open-Source-Framework, das die Berechtigung DLT (Distributed Ledger Technology) für die Entwicklung von Anwendungen und Geschäftslösungen bereitstellt. Zu den Kernfunktionen von Hyperledger Fabric gehören:

  • Hochgradig modulare Architektur
  • Plug-and-Play-Konsens
  • Unterstützung für Solidity und EVM
  • Unterstützt JSON-Abfragen, schlüsselbasierte Abfragen und andere abfragbare Daten
  • Mehrsprachige Smart-Contract-Unterstützung

Lassen Sie uns mit dem Grundwissen über Hyperledger Fabric und seinen Kernfunktionen zum nächsten Teil dieses Hyperledger Fabric-Tutorials für Anfänger übergehen .

Lernen Sie Softwarekurse online von den besten Universitäten der Welt. Verdienen Sie Executive PG-Programme, Advanced Certificate-Programme oder Master-Programme, um Ihre Karriere zu beschleunigen.

Was ist die Hyperledger Fabric-Systemarchitektur?

Bevor Sie mit unserem Kerntutorial zu Hyperledger Fabric beginnen , ist es wichtig, sich mit der zugrunde liegenden Architektur vertraut zu machen. Eine solide Kenntnis der Struktur hilft Ihnen zu verstehen, wie das Framework funktioniert.

  • Transaktionen : Es gibt zwei Arten von Transaktionen: Bereitstellen und Aufrufen. Die Bereitstellungstransaktionen werden zum Erstellen von Chaincodes verwendet, bei denen es sich um Programme handelt, die von der Blockchain ausgeführt werden. Auf der anderen Seite werden Aufruftransaktionen verwendet, um Transaktionen im Kontext mit den zuvor bereitgestellten Chaincodes auszuführen.
  • Datenstrukturen : Wie bei jedem Blockchain-Framework befinden sich die in Hyperledger Fabric verwendeten Datenstrukturen in Schlüssel-Wert-Paaren. Die Kettencodes manipulieren die Daten mit den Put- und Get-Operationen.
  • Hauptbuch : Es ist eine Abfolge aller erfolgreichen und nicht erfolgreichen Änderungen an der Kette.
  • Knoten : Sie sind die Kommunikationsagenten oder mit anderen Worten Einheiten eines Netzwerks.
  • Kunde : Endbenutzer oder jemand, der in ihrem Namen handelt.
  • Peer : Sie kümmern sich um die Zustände der Kette und sorgen dafür, dass alles reibungslos läuft.

Hyperledger Fabric Tutorial für Anfänger zur Entwicklung ihrer ersten App

Da wir nun die grundlegende Architektur kennen, ist es an der Zeit, unsere erste Hyperledger-Fabric-App zu entwickeln.

Aufbau und Start des ersten Netzwerks

Dieser Schritt umfasst die Installation von Voraussetzungen und Beispielkomponenten, um mit der Entwicklung unserer App zu beginnen.

Aufbau des Netzwerks

Als erstes müssen Sie das Netzwerk aufbauen und starten. Ohne ein funktionierendes Netzwerk ist Ihre App nutzlos. Sehen Sie sich den Leitfaden zu den Voraussetzungen und die Binärdateien von Hyperledger Fabric , die Docker-Images und den Beispiel - Installationsleitfaden an .

Sobald alles installiert ist, verwenden Sie den folgenden Befehl, um mit dem Beispielnetzwerk in das Repository zu wechseln.

cd stoffmuster/first-network

Verwenden Sie als Nächstes das Skript byfn.sh, um das Netzwerk auszuführen. Der Betrieb dieses Netzwerks erleichtert die Netzwerkkommunikation und startet die wesentlichen Elemente wie Container, Peers, Chaincode usw., die bei dem anderen Prozess helfen. Nach dem Ausführen des Beispielnetzwerks ist es an der Zeit, die Artefakte zu generieren.

Generieren der Artefakte

Verwenden Sie den folgenden Code, um die Artefakte zu generieren, und drücken Sie dann „Y“, wenn Sie zur Bestätigung aufgefordert werden, um mit dem Ausfüllen der erforderlichen Details zu beginnen.

.byfn.sh generieren

Stromversorgung des Netzwerks

Nach dem Generieren der Artefakte müssen Sie das Netzwerk mit Strom versorgen. Es wird alle Komponenten, einschließlich Chaincode und Container, starten, damit neue Peers dem Netzwerk beitreten können. Verwenden Sie den folgenden Code, um das Netzwerk mit Strom zu versorgen:

./byfn.sh hoch

Die Standardsprache für den Chaincode von Hyperledger Fabric ist Go. Sie können jedoch zur Verwendung von Node.js oder Java wechseln, indem Sie die folgenden Befehle verwenden:

.byfn.sh up -l Knoten

.byfn.sh up -l java

Sie können sich auch für die Verwendung mehrerer Programmiersprachen entscheiden, indem Sie einen der folgenden Codes verwenden:

./byfn.sh up -o etcdraft

./byfn.sh up -o kafka

Starten des Netzwerks

Jetzt werden wir das Netzwerk starten. Aber vorher müssen wir:

  • Holen Sie sich das Unterverzeichnis unserer Anwendung
  • Erstellen Sie einen lokalen Klon des Fabric-Sample-Repositorys

Verwenden Sie das folgende Befehlsskript, um das Netzwerk zu starten:

./startFabric.sh Javascript

Nach dem Start des Netzwerks haben Sie alles, um Ihre Anwendung zu entwickeln, von Auftraggebern über Peers bis hin zu Zertifizierungsstellen. Da wir das Unterverzeichnis der Anwendung verwenden, wird automatisch ein Smart Contract gestartet.

Installation Ihrer ersten Anwendung

Verwenden Sie den folgenden Code, um die Abhängigkeiten zu installieren, die zum Installieren und Initiieren der Anwendung erforderlich sind.

npm installieren

Verbindung mit Zertifizierungsstellen

Sobald das Netzwerk eingerichtet ist und läuft, beginnen wir mit der Kommunikation mit den Behörden, die uns erlauben können, Benutzer zur Kette hinzuzufügen. Dazu müssen wir uns dem Certificate Signing Request (CSR) unterziehen. Verwenden Sie den folgenden Befehl, um die Zertifizierungsstelle zu kontaktieren und ein öffentliches, privates und x.509-Zertifikat zu erstellen.

Knoten enrollAdmin.js

Ihre Informationen werden nun in der Brieftasche gespeichert. Um einen neuen Benutzer hinzuzufügen, müssen Sie denselben Prozess durchlaufen und den folgenden Code verwenden:

Knoten reisterUser.js

Dieser Code fügt den Benutzer hinzu und die Details werden in der Brieftasche gespeichert.

Abfrage eines Ledgers

Sie können Leseabfragen verwenden, um ein Hauptbuch über das Blockchain-Netzwerk abzufragen und die Ergebnisse zu erhalten. Die Anwendung führt keine Schreibabfragen aus, da Ledger schreibgeschützt sind.

Verwenden Sie den folgenden Code, um alle Daten aus dem Ledger abzurufen:

node query.js

Als nächstes müssen wir eine Verbindung herstellen, um die Daten zu übermitteln. Nachdem die Verbindung hergestellt wurde, erstellen Sie ein Gateway, damit die Anwendung eine Verbindung zum Netzwerk herstellen kann. Die folgende Codezeile hilft Ihnen dabei.

const { FileSystemWallet, Gateway } = require('fabric-network');

const Gateway = neues Gateway ();

await gateway.connect(ccp, {wallet, identity: 'user1' });

const contract = network.getContract('subdirectory_name');

Das CPP im obigen Code wird verwendet, um auf Benutzerinformationen zuzugreifen und diese zu überprüfen. Die letzte Zeile des Codes stellt eine Verbindung zu einem bestimmten Kanal her. Dies ist unerlässlich, da das gesamte Blockchain-Netzwerk auf mehreren Kanälen läuft.

Vertrag verstehen

Gehen Sie zum Unterverzeichnis chaincode/subdirecory_name/javascript/lib, um auf den Smart Contract der Anwendung zuzugreifen. Im obigen Verzeichnis ist subdirectory_name der Name des Unterverzeichnisses Ihrer Anwendung. Öffnen Sie die Datei application_name.js, die Sie hier erhalten, in einem Editor. In dieser Datei erhalten Sie den Smart Contract und alle Transaktionen, die in der Contract-Klasse definiert sind. Angenommen, Ihre Anwendung bezieht sich auf Autos, die Transaktionsdetails sehen so aus:

asynchrone Abfrage Car(ctx, carNumber) {…}

Lesen Sie: Warum Blockchain die Zukunft ist

Aktualisieren des Ledgers

Der letzte Teil dieses Hyperledger Fabric-Tutorials für Anfänger besteht darin, das Ledger zu aktualisieren. Betrachten wir dasselbe Autobeispiel und sehen wir uns an, wie Sie ein neues Auto im Protokoll hinzufügen können. Verwenden Sie die folgende Codezeile, um dem Ledger ein neues Fahrzeug hinzuzufügen.

warte auf Vertrag. SubmitTransaction ('createCar', 'CAR15', 'Eigentümer', 'Marke', 'Automodell', 'Farbe');

Mit dem obigen Befehl wird ein neues Auto zusammen mit den erwähnten Attributwerten erstellt. Um diese neue Transaktion an das Hauptbuch zu senden, schreiben Sie den folgenden Code:

Knoten invoke.js

Dadurch wird das Ledger erfolgreich aktualisiert.

Fazit

Damit sind wir am Ende unseres Hyperledger-Fabric-Tutorials angelangt . Die Blockchain-Technologie und das Hyperledger Fabric-Framework haben das Potenzial, mehrere Branchen auf der ganzen Welt zu revolutionieren. Dieses Tutorial gab eine kurze Vorstellung davon, wie das Hyperledger Fabric-Framework funktioniert und wie Sie Ihre erste Transaktion und App darauf ausführen. Wenn Sie in die Details einsteigen und lernen möchten, wie Sie mithilfe des Frameworks tatsächliche Geschäftsanwendungen entwickeln, können Sie sich für das Advanced-Zertifikatsprogramm von upGrad und IIIT Bangalore im Kurs Blockchain-Technologie bewerben .

Der Kurs Über 250 Stunden Lernmaterial in Blockchain-Technologie und Frameworks wie Ethereum, Hyperledger Fabric, Distributed Application Development (Smart Contracts Development, Backend Development, API). Wenn Sie eine Karriere in der Blockchain-Entwicklung anstreben, bewerben Sie sich noch heute.

Meistern Sie die Technologie der Zukunft - Blockchain

Bewerben Sie sich jetzt für die Executive-Zertifizierung in Blockchain von IIITB