Hyperledger Fabric Tutorial Deutsch für Anfänger


Zurück zu Neu bei Nirolution Hyperledger Tutorial Blog

Hyperledger Fabric Tutorial Deutsch für Anfänger

In diesem Tutorial zeigen wir dir, wie dir alles wichtige über den Hyperledger Fabric. Danach wirst du eine einfache Dapp erstellen können. Dafür erklären wir was der Hyperledger Fabric ist und warum du ihn benutzen solltest. Danach erklär ich dir die Hyperleder Architektur und entwickeln dann Schritt für Schritt eine Hyperledger Applikation.

„Hyperledger Fabric Tutorial Für Beginner: Step by Step Guide“ – Content:

  1. Was ist Hyperledger Fabric?
  2. Hyperledger Fabric Funktionalitäten
  3. Fabric Komponenten
  4. Hyperledger Dapp Programmieren

Was ist Hyperledger Fabric?

Hyperledger Fabric ist eine private Blockchain, die Unternehmen hilft dezentralisierte Applikationen zu entwickeln. Sie verfügt über eine modulare Architektur, mit der wir ein hohes Maß an Privatsphäre, Flexibilität, Belastbarkeit und Skalierbarkeit erreichen. Dadurch können wir mit Fabric Apps für jede Branche entwickeln.
Mittlerweile arbeiten mehr als 40 Organisationen in dem Hyperledger Fabric Projekt zusammen. Ziel ist es dabei, das beste Unternehmensframework auf dem Markt zu entwickeln.

Aber warum solltest du dich für Hyperledger Fabric entscheiden?
Fabric bietet für Unternehmen eine großartige DLT-Technologie. Es hat einige großartige Features, die es zu einer idealen Wahl für ein Unternehmen machen. Deshalb wird es auch zukünftig immer mehr Hyperledger Apps geben. Was das genau für Features sind, zeigen wir dir im Folgenden.

Hyperledger Fabric Funktionalitäten

Fabric hat 5 Merkmale, die es zu einer der besten Frameworks für Unternehmen macht.

Identitätsmanagement

Das Identitätsmanagement ist für die meisten Unternehmen von entscheidender Bedeutung. Folglich kannst du mit Fabric sicherstellen, dass die Berechtigung klar geregelt wird.

Effizienz

Fabric ist im Gegensatz zu öffentlichen Blockchains viel effizienter. Das liegt daran, dass Netzwerkrollen den Nodes zugewiesen werden. Zudem werden Transaktionen getrennt vom Engagement durchgeführt.

Modularität

Fabric bietet einen modularen Aufbaue. Dadurch kannst du andere Applikationen einfach integrieren. Zudem kannst selbst den Konsens, den Algoryithmus, die Identität und vieles mehr festlegen.

Privatsphäre

Hyperledger bietet dir durch seine Architektur eine angemessene Vertraulichkeit und Datenschutz. Das bedeutet, dass du Datenkanäle nutzen kannst bei denen keine Informationen durchsickern können.

Chain Code Contracts

Hyperledger Fabric bietet dir mit Chain Code eine Funktionalität, um eine bestimmte Art von Transaktion aufzurufen.

Hyperledger Komponenten

Bevor wir mit der Entwicklung einer Hyperledger Dapp anfangen können, musst du zuerst die Komponenten von Hyperledger Fabric verstehen. Zudem erklären wir dir die Datenstruktur und alle wichtigen Komponenten.

Die Systemarchitektur

Fabrik besteht aus vielen Nodes, die miteinander kommunizieren. Diese bilden das gesamte Netzwerk ab. Zudem gibt es Chain Code, der von der Blockchain ausgeführt wird. Sie speichern Daten und führen Transaktionen aus.

Transaktionen

In Hyperledger Fabric gibt es zwei Arten von Transaktionen.
Deployment-Transaktionen: Sie sind dafür verantwortlich, einen neuen Chain Code mit Parameter als Programm zu erstellen. Danach wird der Chain Code auf der Blockchain installiert.
Invoke-Transaktionen: Damit können Transaktionen aufgerufen werden, die bereits von Chain Code installiert wurden.

Datenstrukturen

Die Daten in Fabric sind nach dem Key-Value-Store (KVS) struktuiert. Die Schlüssel sind meistens Namen, und der Wert sind Blobs. Mit dem Chain Code kannst du die Daten mit der -Get und -Put Option verändern.

Ledger

Der Ledger ist eine Übersicht aller erfolgreichen und erfolglosen Zustandsänderungen. Er besteht also aus geordneten Blöcken, die Transaktionsarray beinhalten.

Nodes

Nodes könne alle Kommunikationseinheit innerhalb des Netzwerks sein. Darunter fallen Computer, Laptops oder auch Zusammenschlüsse von Pcs.

Client

Ein Client ist jemand, der als End-User handeln kann.

Peers

Peer handhabt den Zustand des Ledgers. Zudem stellen sie sicher, dass das Netzwerk optimal agiert. Die Peers können unterstützende Peers sein, was dazu beiträgt, eine Transaktion zu befürworten.

Hyperledger Dapp Programmieren

Nachdem wir nun alle wichtigen Komponenten besprochen haben, können wir jetzt unsere Hyperledger Dapp entwickeln. Du wirst lernen, wie du mit Smart Contracts, Chain Code und anderen Anwendungen innerhalb des Frameworks umgehen musst.
Zuerst müssen wir eine Entwicklungsumgebung einrichten. Diese brauchst du, damit deine App das notwendige Netzwerk zur Verfügung steht. Zudem brauchst du sie, damit du Smart Contracts ausführen kannst.

Hyperledger installieren

Bevor wir anfangen können, müssen wir erstmal die richtige Entwicklungsumgebung installieren.
Hier findest du alles, was du für die Installation brauchst.
Die Hyperledger Composer Anleitung kann dir zusätzlich helfen.
Wenn du alles richtig installiert hast, erhältst du ein „fabric-samples“-Repository.
Um in dieses Verzeichnis zu wechseln, gibt folgendes in die CD Command Line ein:

cd fabric-samples/first-network

Um mit dem Projekt anfangen zu können, musst du das Skript byfn.sh verwenden. Dadurch kannst du das Projekt mit vier Peers beginnen. Diese repräsentieren jeweils zwei verschiedene Organisationen. Es startet zudem die benötigten Container, Chain Codes und Transaktionen.

Zertifikat generieren

Du kannst nun die Zertifikate und Keys für das Netzwerk generieren. Dazu musst du den folgenden Befehl ausführen.

.byfn.sh generate

Du musst dann auf Y drücken, damit das Netzwerk mit den erforderlichen Informationen versorgt wird.

Powering Hyperledger

Als Nächstes müssen wir das Netzwerk mit Strom versorgen. Dafür musst du folgenden Befehl eingeben:

./byfn.sh up

Danach wird das Framework die Chain-Code images kompilieren. Zusätzlich stehen auch die Container zur Verfügung, damit neue Peers dem Netzwerk beitreten können.
Bei Fabric wird go als Standardsprache für den Chain Code benutzt. Es wird aber auch Node.js und Java unterstützt. Für den Wechsel zu Node.js gib Folgendes ein:

.byfn.sh up -l node

Und für Java:

.byfn.sh up -l java

Jetzt können wir das Netzwerk starten.
Um das Netzwerk zu starten, geben wir das Shell Skript startFabric.sh ein. Jetzt haben wir ein Netzwerk mit allen wichtigen Komponenten.

User registrieren

Jetzt müssen wir noch alle wichtigen Klassen installieren. Dafür geben wir npm install ein. Dadurch wird Folgendes installiert:

fabric-network class → aktiviert Transaktionen, Identitäten, Wallets
fabric-ca-client → Benutzer werden bei ihren jeweiligen Zertifizierungsstellen registriert

Jetzt da das Netzwerk läuft und wir alles wichtige installiert haben, können wir einen User registrieren.
Zuerst werden wir den Admin registrieren. Dafür muss der Admin bei der Zertifizierungsstelle einen public, privates und ein X.509 Zertifikat erstellen lassen. Dafür musst du folgendes eingeben:

Node enrollAdmin.js

Wenn du einen weiteren Benutzer registrieren willst, brauchst du:

Node registerUser.js

Blockchain verbinden

Jetzt brauchen wir Informationen aus der Blockchain.
Dafür kannst du ganz einfach deine Datenbank mit der Blockchain verbinden.
Das Kannst du mit:

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

Mit dem folgenden Code erstellst du ein Gateway, um die Applikationen mit dem netzwerk zu verbinden.

const gateway = new Gateway();
await gateway.connect(ccp, { wallet, identity: ‘user1’ });

Das ccp wird zur Identifizierung des Benutzers und der damit verbundenen Wallet Informationen verwendet. Da Hyperledger Fabric auf unterschiedlichen Channels läuft, ist es wichtig sich mit dem richtigen Channel zu verbinden.

const contract = network.getContract(‘fabcar’);

Hyperledger Chain Code

Jetzt brauchen wir noch Smart Contracts. Dafür müssen wir verstehen Abfragen ausführen und den Ledger aktualisieren.
Damit wir einen Smart Contract erstellen können, müssen wir die unterschiedlichen Klassen kennen.
Dafür musst du in das Verzeichnis chaincode/fabcar/javascript/lib. Danach öffne fabcar.js in deinem Editor. Hier findest du die Klassen in den Smart Contract zu definieren.
Eine Transaktion könnte so aussehen:

async queryHouse(ctx, houseNumber) {…}

Hyperledger updaten

Wenn wir jetzt mit dem Smart Contract ein Haus gekauft haben, müssen wir den Leder noch updaten.
Dafür erstellen wir zunächst ein neues Haus. Dafür brauchen wir den invoke.js Funktion. Dafür öffne die Datei und gib folgendes ein:

await contract.submitTransaction(‘createHouse’, ‘MyHouse, ‘Size’, ‘Color’, ‘Owner’);

Dadurch ruft die App createHouse Smart Contract Transaktion auf. Du erhälst dadurch das Haus mit allen Informationen. Jetzt müssen wir den Ledger noch updaten. Das machen wir hiermit:

node invoke.js

Jetzt hast du deine erste einfache Hyperledger App, mit der du mit der Blockchain interagieren kannst. Dadurch kannst du weitere komplexere Hyperledger Applikationen entwickeln.

Gefällt dir unsere Hyperledger Fabric Tutorial? Dann folge uns auf Facebook, Pinterest and Steemit.

Bleibe bei deinen Lieblingsthemen auf dem laufenden

Schreibe einen Kommentar

Menü schließen