Dieser Blogpost ist ein Artikel in einer Serie von Artikeln zu dem im Dezember 2019 erschienenen Buch „Blockchain mit SAP“ (Rheinwerk Verlag, Bonn, ISBN 978-3-8362-6914-8).
In diesem Blogpost geht es um das fünfte Kapitel aus dem Buch, welches die ersten Schritte zur Erzeugung einer eigenen Blockchain beschreibt.
Account vorbereiten
Bevor Sie ihre erste eigene Blockchain aufsetzen können, müssen Sie dazu einen entsprechenden Account haben. Dies bedeutet, dass Sie entweder einen Enterprise Account haben, oder im Rahmen des Trial Accounts agieren.
In jedem Fall müssen Sie einen neuen Subaccount erstellen, der wiederum mit einer Ausführungsumgebung verknüpft werden muss. Die Cloud Foundry Umgebung ist hier zunächst richtig, denn durch die Wahl dieser Umgebung wird im Service Marketplace der Blockchain Application Enablement Dienst verfügbar.
Blockchain Application Enablement
Das Blockchain Application Enablement ist ein Interface zur Nutzung von Blockchain-Technologien im Rahmen eigener Applikationen in der SAP Cloud Platform. Es abstrahiert die Funktionen der verschiedenen Blockchain-Frameworks unter einer einheitlichen Schnittstelle. Ausserdem bietet es folgende Basis-Dienste für alle Blockchains an:
Timestamping
Timestamping ist ein Service, der den Eingang von Daten mittels eines vertrauenswürdigen Zeitstempels bestätigt und beweisbar macht. Dabei wird das Datum- und Zeitformat RFC3339 verwendet, auch bekannt als ISO-Format 8601. Ein solcher Zeitstempel hat folgendes JSON-Format:
{ "timestamp": "2018-11-26T15:05:07Z" }
Proof-of-State
Der Proof-of-State Service erlaubt die Speicherung von Datenobjekten im JSON-Format zu Nachweiszwecken. Es serialisiert Datenobjekte zur expliziten Speicherung in der Blockchain.
Proof-of-History
Proof-of-History beschreibt die chronologischen Änderungen an einem Datensatz. Dies ist aber gleichzeitig auch eines der Standard-Features einer jeden Blockchain. Das Blockchain Application Enablement vereinheitlich das Format und stellt es über alle in der SAP Cloud verfügbaren Blockchains zur Verfügung.
SAP HANA Integration Service
SAP HANA Integration Service ermöglicht die Einbindung und Kombination von Blockchain-Daten in eine existierende SAP HANA-Datenbank.
Funktionstest mit Swagger
Ein genereller Vorteil der SAP Cloud Platform ist, dass Sie einen Dienst oder eine selbsterstellte API mit einem automatisch erstellten Swagger Interface testen können. Swagger ist eine Software, die mittels einer einfachen strukturierten Sprache konfiguriert wird und auf der SAP Cloud Platform unterstützt wird.
Dies erlaubt schnelle Funktionstests, etwa um zu sehen, ob ein neuer Dienst tatsächlich verfügbar ist, und ob die Aufrufe wie gewünscht funktionieren, noch bevor ein grafisches Frontend erstellt werden muss.
MultiChain Blockchain
Ein MultiChain-Knoten kann nur im Rahmen eines bezahlten Enterprise Accounts in Betrieb genommen werden. Nach Auswahl des Dienstes im Service Marketplace der SAP Cloud Platform können Sie den Serviceplan auswählen, mit dem sie den Dienst starten wollen.
Hier ein Knoten mit dem Serviceplan „small“ auf der Übersichtsseite:
Das erste Icon in der Spalte „Actions“ führt zum sogenannten Dashboard, der Übersichtsseite für die laufende Instanz des MultiChain-Knotens. Die Übersichtsseite führt unter anderem seine interne Multichain-Netzwerk-Adresse, sowie seine wahre IP-Adresse, unter der sich weitere Knoten anmelden können, oder sogenannte Remote Procedure Calls (RPC) zur Programmierung und Konfigurierung der Blockchain durchführen lassen.
Hyperledger Fabric Blockchain
Die SAP Cloud Platform bietet einen sogenannten Dev-Node, einen Entwickler-Knoten für Hyperledger Fabric. Dies ist die kleinste Möglichkeit, um sich mit der Einrichtung von Channels, der Programmierung von Smart Contracts (sogenannten Chaincode) und dessen Testing vertraut zu machen. Ein Hyperledger Dev-Knoten ist auch im Rahmen des Trial-Accounts erstellbar.
Sobald der Knoten läuft, können weiterführende Informationen über ihn im Rahmen
Channels
Channels sind eine Besonderheit von Hyperledger Fabric. Sie beschreiben Kommunikationskanäle zwischen Teilnehmern des Netzwerkes, und sind verschlüsselt. Jeder Channel stellt damit eine eigene logische Blockchain dar. Das interessante dabei ist, dass man als Teilnehmer auf mehreren Channels angemeldet sein kann. Somit kann man zum Beispiel einen Kanal für die Administratoren einrichten, der unabhängig vom Kanal der Teilnehmer ist.
Block Explorer
Der Block Explorer ist ein wichtiges Tool zur Untersuchung der in der Blockchain erfassten Daten. Anhand der chronologischen Blockreihung kann ersehen werden, wann die Blöcke angelegt wurden, und die darin enthaltenen Daten können untersucht werden. Der Block Explorer ist technologie-unabhängig realisiert und kann Blockchain-Daten von Hyperledger und MultiChain darstellen. Untenstehend eine Detaildarstellung eines Datenblocks einer MultiChain-Blockchain.
Weitere Artikel dieser Serie finden sie hier:
- Was ist eine Blockchain und wie funktioniert sie?
- Blockchain-as-a-Service-Angebote der SAP Cloud Platform
- Cloud Computing von SAP: Die SAP Cloud Platform
- Blockchain mit SAP – Geschäftliche Anwendungsszenarien für Blockchains
- Blockchain mit SAP – Blockchain-Anwendungen mit Hyperledger Fabric entwickeln
- Blockchain mit SAP – Blockchain-Anwendungen mit Hyperledger Fabric entwickeln
- Blockchain mit SAP – SAP HANA Integration
- Blockchain mit SAP – MultiChain Anwendungen
- Blockchain with SAP: MultiChain Applications
- Blockchain mit SAP – Hybride Netzwerkarchitektur und Camelot Hypertrust Plattform
- Blockchain mit SAP – Zusammenfassung und Ausblick
Wollen Sie mehr über die Möglichkeiten von Hyperledger Fabric und MultiChain erfahren? Wollen Sie wissen, wie Sie für Ihr Unternehmen die Möglichkeiten der SAP Cloud Platform gewinnbringend einsetzen können? In unserem Buch „Blockchain mit SAP“ erläutern wir Ihnen ausführlich die Vor- und Nachteile der verschiedenen Blockchain-Technologien und wie sie diese in der SAP Cloud Platform betreiben. Eine ausführliche Leseprobe zum Buch stellt der Verlag online bereit.