Hyperledger Fabric ist eine Open Source Plattform zur Entwicklung von sogenannten „Permissioned“ Distributed Ledgern, welches stark im Kommen ist. Unter anderem, weil 277 (zum Zeitpunk dieses Beitrages) Mitglieder der Hyperledger.org sind. Unter der Linux Foundation, entwickeln und unterstützen diese Mitglieder die Plattform. Mit dem Ziel eine flexible Blockchain-Lösung für Unternehmen anzubieten. Da ich selbst aktuell in einem Projekt involviert bin, habe ich zwei weitere Freelance Entwickler Alexander Green und Krystian Gaus für die Crypto Community Mainz gewinnen können. Gemeinsam haben wir am 6. November ein Hyperledger Fabric Workshop durchgeführt. Zudem hat sich spontan Tat zu uns gesellt und sein Erfahrung und Best Practices bei der Installation von Hyperledger Fabric mit uns geteilt.

Erklärvideo von Hyperledger Fabric

Auch an diesem Meetup merken wir, dass das Interesse in Blockchain mit der aktuellen Marktentwicklung korreliert. Wo der Bärenmarkt herrscht, herrscht bei Meetups und Konferenzen entsprechend ein Bärenwinterschlaf ;). Ist uns hier in Mainz wurscht, wir machen weiter. Die Qualität zählt, nicht die Quantität. Wir waren 14 Personen und ich startete mit einer generellen Einführung in Hyperledger Fabric. Was ist nochmal der Unterschied zwischen öffentlichen und nicht-öffentlichen Blockchains? Welche Use Cases wurden und werden aktuelle mit Hyperledger (Fabric) umgesetzt? Auf diese Fragestellung ging ich in der Einführung ein.

Hyperledger Fabric Architekur

Danach folgte Alexander Green, Freelance Entwickler, der neben Hyperledger Fabric seinen Spaß an evolutionärer Algorithmen hat. Er stellte die System-Architekur von Hyperledger Fabric vor. Wie funktioniert der Consensus-Mechanismus? Wie läuft eine Transaktion ab und welche Komponenten sind hier beteiligt? Wie kommunizieren hierbei Konsortiums-Mitglieder bzw. Peers und Nodes? Viele neue Wörte tauchten auf, wenn man aus der Welt von Bitcoin und Ethereum kommt. Was auffällt, das Vokabular ist auffallend „Business orientierter“. Peers, Channels, Business Network, Certificate Authorities, Network Participants, etc. Wenn jemand aus der Corporate IT kommt, sind manche Wörter etwas verständlicher.

Hyperledger Fabric Installation – Dos & Don’ts

Es folgte Tat mit den Installations Best Practices. Es gibt gewisse Herausforderungen bei der Installation der Entwicklungsumgebung. Die haben ich selbst auch am eigenen Leib erfahren müssen. Tat teilte uns seine Erfahrung und tagelangen Versuche Hyperledger Fabric aufzusetzen mit. Auf seinen Slides sind Schritt für Schritt Anleitungen zu finden. Welche Befehle musst du in die Konsole eintippen? Welche Versionen von welchem Tool brauchst du? Welche Reihenfolge ist am besten? Für jemanden, der nicht die gleichen frustierten Momente erleben  möchte, können die Installations-Tips einige Zeit sparen. Ich wäre froh gewesen, Tat’s Folien vor 6 Monaten gefunden zu haben :D.

Wie viele andere Blockchain Plattformen, erlebt Hyperledger Fabric die ähnlichen Entwicklungsstufen. Als Entwickler gibt es relativ viele Tools zu installieren und die Lernkurve ist etwas höher die Entwicklungsumgebung aufzusetzen, bis man zum eigentlichen Programmieren kommt.

Hyperledger Composer

Ein Glück gibt es Hyperleger Composer (dachten wir, mehr dazu gleich). Krystian Gaus, der gemeinsam mit mir schon ein Meetup zu IOTA geführt hatte, zeigt den Teilnehmern ein Überblick über Assets und Transaktionen. Wie werden Assets modeliert? Wie werden Transaktionen definiert? Wie könnte ein Chaincode (Smart Contract Wording bei Hyperledger Fabric) aussehen und wie installiert man Chaincode auf Peers? Zusätzlich zeigt er wie wir mit einem Tool (Composer Restserver) von Composer relativ schnell ein RESTful Server per Script zum laufen lässt. Interaktiv zeigte er wie die Teilnehmer direkt Transaktionen über den eigene Rechner abschicken konnten und die Daten in der „Blockchain“ gespeichert werden. Am Ende seines Hyperledger Fabric Workshops stellte Krystian kurz Playground vor. Eine Browser Anwendung, die über IBM Bluemix erreichbar ist und man damit direkt Business Network Anwendungen programmieren und testen kann. Für Personen, die schnell kleine Prototypen entwickeln oder Composer lernen möchte, ist Playground ein einfacher Einstieg.

Zur Entäuschung müssen wir sagen, laut diesem Beitrag wird die Entwicklung von Composer offiziell nicht mehr weitergeführt. Es bleibt die Hoffnung, das andere Entwickler aus der Community das Tool weiter entwickeln.

Spezielle Links zu Quellen und die Kontaktdaten zu Alex, Krystian und Tat findet ihr in den nachfolgenden Slides.

Hyperledger Fabric Slides

Installation Best Practices von Tat (PDF)

Falls ihr die Dateien und Quellcode von Krystian nutzen möchtet. Die Dateien könnt ihr direkt auf meiner privaten gitlab Instanz herunterladen. Hier findet ihr alle .cto, chaincode Beispiel-Dateien.

Nächstes Meetup

Bis zum nächsten Meetup am 4. Dezember. Wir werden auf das Jahr 2018 zurückblicken und die Highlights aus der Blockchain-Welt und unserer Community diskutieren und gemeinsam in einer gemütlichen Runde Glühwein genießen und das Jahr abklingen lassen. Zudem möchte ich Ideen mit euch austauschen, wie wir das Meetup in 2019 inhaltlich gestalten. Ich freue mich auf eine gemütliche Crypto Communtiy Mainz Weihnachtsfeier/-Meetup.