Amazon Managed Blockchain Blockchain- und Ledger-Datenbanken unkompliziert aufsetzen

Anbieter zum Thema

Blockchain-Frameworks wie Hyperledger Fabric oder Ethereum vereinfachen das Aufsetzen einer entsprechenden Lösung. Noch einfacher soll es mit dem neuen AWS Service „Amazon Managed Blockchain“ gehen. Blockchain-Insider stellt das Angebot vor.

Viele Unternehmen interessieren sich für die Blockchain, weil sie ein Hauptbuch benötigen, das transparent, unveränderlich und kryptografisch überprüfbar ist.
Viele Unternehmen interessieren sich für die Blockchain, weil sie ein Hauptbuch benötigen, das transparent, unveränderlich und kryptografisch überprüfbar ist.
(© Siarhei - stock.adobe.com)

Wenn es um Anwendungen geht, bei denen mehrere Parteien über ein Peer-to-Peer-Netzwerk interagieren und unveränderliche Transaktionen ohne zentrale vertrauenswürdige Instanz aufzeichnen wollen, ist die Blockchain das Mittel der Wahl. Allerdings ist die Erstellung einer skalierbaren Unternehmensanwendung auf Basis der Blockchain noch immer relativ zeitaufwändig und komplex.

Als Antwort auf diese Herausforderung stellte AWS im zweiten Quartal 2019 Amazon Managed Blockchain vor, einen Service, mit dem sich leicht skalierbare Blockchain-Netzwerke erstellen und verwalten lassen. Eine wichtige Rolle spielt dabei die ebenfalls neu auf den Markt gebrachte Amazon Quantum Ledger Database (Amazon QLDB). Sie bietet Funktionen, die mit denen der Blockchain im Bereich der Datenidentität identisch sind, und wurde für Systeme entwickelt, bei denen es eine zentrale vertrauenswürdige Instanz gibt. Damit bietet Amazon QLDB ein transparentes, unveränderliches und kryptografisch überprüfbares Transaktionsprotokoll, das zu einer zentralen vertrauenswürdigen Stelle gehört.

Blockchain- und Ledger-Technologie im Detail

Der Grundgedanke von Blockchains ist die Integrität von Daten: In der Blockchain gespeicherte Informationen können nicht geändert oder gelöscht, sondern lediglich aktualisiert werden. Sogenannte „Hauptbücher“, die Ledgers, sind dabei zentrale Bausteine.

Bereits in frühen Kulturen wie Mesopotamien und im alten Ägypten kamen Hauptbücher aus Stein und Papyruspflanzen zum Einsatz. Heute ist eine Bankanwendung, die die Verfolgung von Gut- und Lastschriften ermöglicht, ein typisches Beispiel für einen Ledger.

Ledgers in der Blockchain – wie auch in Amazon QLDB – bestehen aus folgenden Elementen.

Aktueller und historischer Status: Es handelt sich dabei um eine Datenstruktur, in der die aktuellen und historischen Statuswerte gespeichert werden, damit Anwendungen problemlos auf die Daten zugreifen können, auch ohne das gesamte Transaktionsprotokoll durchsuchen zu müssen.

Journal: Ein Transaktionsprotokoll, in dem der gesamte Verlauf von Datenänderungen in Form von Anhängen aufgezeichnet wird. Jeder neue Datensatz ist dabei mit dem vorherigen verknüpft. Dadurch kann der gesamte Änderungsverlauf der Daten angezeigt werden.

Über kryptografisches Hashing wird außerdem jedem Datensatz eine eindeutige Kennung zugewiesen. Dadurch kann jeder Nutzer zeitlich zurückblicken und den Nachweis erbringen, dass die Datentransaktion stattgefunden hat.

Ledgers in der Blockchain – wie auch in Amazon QLDB – bestehen aus dem aktuellen- und historischen Status und dem Journal.
Ledgers in der Blockchain – wie auch in Amazon QLDB – bestehen aus dem aktuellen- und historischen Status und dem Journal.
(Bild: AWS)

Blockchains enthalten neben einem verteilten Hauptbuch auch einen Konsensmechanismus und eine intelligente Vertragsausführungsumgebung.

Konsensalgorithmen stellen sicher, dass eine Methode existiert, mit der Transaktionen und Daten in das Hauptbuch übernommen werden. Wenn die Konsensanforderungen nicht erfüllt sind, wird die Transaktion zurückgesetzt und ist ungültig.

Intelligente Verträge (Smart Contracts) sind Programme, bei denen Regeln in Form von Programmcode definiert sind. Das Programm prüft dabei kontinuierlich, wann die Bedingungen für einen Vertrag erfüllt sind.

Die Kombination dieser Elemente ermöglicht, dass zwei oder mehr Parteien mit „dezentralem Vertrauen“ miteinander handeln können. Dabei stimmt jede Partei der Transaktion zu und zeichnet sie auf. Das Verfahren ist sinnvoll, wenn mehrere Organisationen unabhängig voneinander den Transaktionsverlauf überprüfen möchten. Ein weiterer Einsatzzweck besteht dann, wenn es zwar keine einzelne Partei gibt, die eine Anwendung pflegen möchte, aber Netzwerkmitglieder dennoch effizient mit anderen Parteien Geschäfte tätigen wollen.

Durch das Konzept des „dezentralen Vertrauens“ lassen sich Effizienzsteigerungen und Kostensenkungen erzielen.
Durch das Konzept des „dezentralen Vertrauens“ lassen sich Effizienzsteigerungen und Kostensenkungen erzielen.
(Bild: AWS)

Ein Beispiel für dezentrales Vertrauen sind Anwendungen rund um den Handel: Der grenzüberschreitende Warenverkehr erfordert die Zusammenarbeit von Akteuren wie Importeuren, Exporteuren, Banken, Reedereien, Versicherungsgesellschaften und Zollabteilungen. Dabei gibt es keine vertrauenswürdige zentrale Instanz. Jeder Stakeholder hat zugleich kein Interesse daran, dass ein einzelner Akteur der Eigentümer des Tätigkeitsprotokolls wird.

Das führt zu langen Bearbeitungszeiten und hohen Kosten, etwa wenn ein Akkreditiv zwischen den Beteiligten hin- und hergehen muss.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Softwareentwicklung und DevOps

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

In einem solchen Szenario lassen sich durch das Konzept des „dezentralen Vertrauens“ Effizienzsteigerungen und Kostensenkungen erzielen. Das System verteilt dabei eine Kopie des Transaktions-Ledgers an jeden Teilnehmer zur unabhängigen Überprüfung.

Managed Blockchain

Das Erstellen und Verwalten von Blockchain-Netzwerken mit klassischen Frameworks ist schwierig, teuer und zeitaufwändig. Anders als bei einem solchen, selbst gehosteten Blockchain-Netzwerk ist es bei Amazon Managed Blockchain nicht erforderlich, Hardware bereitzustellen, Software zu konfigurieren und Netzwerk- sowie Sicherheitskomponenten einzurichten. Stattdessen können Benutzer mit nur wenigen Klicks ein Blockchain-Netzwerk einrichten, das automatisch skaliert. Dadurch können die Anforderungen von Tausenden von Anwendungen mit Millionen von Transaktionen erfüllt werden.

Dabei verwaltet die Lösung die Zertifikate und zeichnet operative Kennzahlen wie die Verwendung von Rechen-, Speicher- und Speicherressourcen auf. Mit der Abstimmungs-API von Managed Blockchain können Netzwerkteilnehmer außerdem Mitglieder hinzufügen oder entfernen.

Außerdem bietet Managed Blockchain eine Auswahl von Instanztypen mit unterschiedlichen Kombinationen aus CPU und Arbeitsspeicher. Anwender können so den zu ihrem Knoten passenden Ressourcenmix selbst zusammenstellen. Die User zahlen dabei entsprechend ihrer Nutzung und müssen sich über Vorabkosten für die Infrastruktur keine Gedanken machen.

Managed Blockchain unterstützt zwei gängige Blockchain-Frameworks: Hyperledger Fabric und Ethereum. Hyperledger Fabric eignet sich vor allem für Anwendungen, die strenge Datenschutz- und Berechtigungskontrollen erfordern und für Anwendungen mit bekannten Mitgliedern. Also etwa Finanzanwendungen, bei denen handelsbezogene Daten nur von einem Teil des Netzwerks – also beispielsweise Banken – ausgetauscht werden.

Ethereum wiederum ist gut für hochverteilte Blockchain-Netzwerke geeignet, bei denen die Transparenz für alle Mitglieder wichtig ist. Folglich ist jede Transaktion für sämtliche Mitglieder des Netzwerks sichtbar. Ein Beispiel für diese Variante ist eine Blockchain-Anwendung zur Kundenbindung, bei der jeder Netzwerk-Retailer die Benutzeraktivität überprüfen kann.

Amazon Managed Blockchain erstellt ein Blockchain-Netzwerk und verwaltet dessen Schlüsselkomponenten.
Amazon Managed Blockchain erstellt ein Blockchain-Netzwerk und verwaltet dessen Schlüsselkomponenten.
(Bild: AWS)

Managed Blockchain erstellt ein Blockchain-Netzwerk und verwaltet dessen Schlüsselkomponenten:

  • Mitglieder
  • Zertifikatsstelle (CA) von Hyperledger Fabric für jedes Mitglied
  • Peer-Knoten
  • Bestellservice

Dabei ist das Blockchain-Netzwerk als Peer-to-Peer-Netzwerk ausgelegt, wobei ein dezentrales Blockchain-Framework ausgeführt wird. Jedes Netzwerk setzt sich aus einem oder mehreren Mitgliedern zusammen. Diese bilden eindeutige Identitäten im Netzwerk, etwa einen Akteur in einem Bankenkonsortium. Jedes Mitglied im Netzwerk kann eigene Peer-Knoten anlegen. Diese verfügen über eine Vielzahl von Rechen- und Speicheroptionen.

Zugleich wird mit jedem Mitglied die Hyperledger-Fabric-Zertifikatsstelle erstellt, die verschiedene Zertifikatdienste bereithält. Diese beziehen sich auf die Benutzerregistrierung, aufgerufene Transaktionen in der Blockchain und TLS-gesicherte Verbindungen zwischen Benutzern oder Komponenten der Blockchain.

Die Peer-Knoten der einzelnen Mitglieder interagieren, um intelligente Verträge auszuführen. Sie werden in Hyperledger Fabric als Chaincode bezeichnet. Dabei erstellen und bestätigen sie im Netzwerk vorgeschlagene Transaktionen und speichern eine lokale Kopie des Ledgers.

Die Regeln dafür definieren die Mitglieder im Rahmen eines Endorsement-Prozesses, basierend auf der Geschäftslogik ihrer Anwendung. So möchte die Bank eines Exporteurs in einer Handelsfinanzanwendung überprüfen, ob der Importeur über die erforderlichen Mittel verfügt, bevor die Transaktion genehmigt wird. Um Blockchain-Anwendungen auf Peer-Knoten zu konfigurieren und mit anderen Netzwerkressourcen zu interagieren, verwenden Mitglieder einen Client, der mit der AWS CLI oder dem SDK konfiguriert ist. Diese Netzwerkressourcen können die Zertifizierungsstelle, den Bestelldienst und Peer-Knoten umfassen.

Über einen AWS PrivateLink kann auf diese Endpunkte zugegriffen werden. Darüber hinaus wurde bei Managed Blockchain die Zuverlässigkeit des Standardbestelldienstes verbessert. Diese Komponente stellt die Übermittlung von Transaktionen über das Blockchain-Netzwerk sicher. Dabei wurde der Bestellservice mithilfe derselben Technologie, wie sie Amazon QLDB zugrunde liegt, neu erstellt. So gibt es ein unveränderliches Änderungsprotokoll, das den vollständigen Verlauf aller Transaktionen im Blockchain-Netzwerk enthält. Zugleich wird sicherstellt, dass die Daten dauerhaft gespeichert werden.

Mehr Vertrauen durch eine Hauptbuchlösung

Viele Unternehmen interessieren sich für die Blockchain, weil sie ein Hauptbuch benötigen, das transparent, unveränderlich und kryptografisch überprüfbar ist. Sie haben jedoch keinen Anwendungsfall, der unbedingt dezentralisiertes Vertrauen erfordert.

Ein typisches Beispiel dafür wäre eine Fahrzeugdatenbank, in der der Besitz und die Zulassungshistorie erfasst wird. Sie soll vor Manipulationen sicher sein. Mit einer relationalen Datenbank lässt sich diese Anforderung nicht unbedingt abbilden. Außerdem gibt es bei einer herkömmlichen Datenbank keine Möglichkeit, die Integrität des Änderungsprotokolls zu verschiedenen Zeitpunkten zu überprüfen.

Daraus erwächst die Frage, was dies für die Hauptbuchkomponente einer Blockchain bedeutet. Zwar werden die Probleme der Datenintegrität und der Auditfunktionalität gelöst und es wird dezentrales Vertrauen in Transaktionen geschaffen. Allerdings handelt es sich nicht um das passende Tool, wenn nicht bei jeder Transaktion über alle Akteure hinweg Konsens gefordert ist.

Die bessere Alternative ist ein zentrales Hauptbuch, das als transparentes, unveränderliches und kryptografisch überprüfbares Transaktionsprotokoll fungiert. Bei Amazon QLDB handelt es sich um eine aus genau diesem Grund erstellte Ledger-Datenbank.

Mit Hilfe der Lösung lässt sich unkompliziert nachvollziehen, wie sich Anwendungsdaten im zeitlichen Verlauf verändert haben. Außerdem müssen keine komplizierten Überwachungsfunktionen in der Anwendung erstellt werden. Ein Amazon QLDB-Journal ist vielmehr ein unveränderliches Protokoll, in dem Transaktionen als Datenblöcke angehängt werden. Wurde eine Transaktion als Block in das Journal geschrieben, so kann sie mehr geändert oder gelöscht werden.

Die einzelnen Blöcke werden dabei unter Verwendung von Kryptographie (SHA-256) miteinander verbunden. Dadurch können Nutzer die Integrität ihrer Daten überprüfen. Weil es sich außerdem um eine Datenbank handelt, bietet die Lösung eine bessere Leistung und Skalierbarkeit als Blockchain-Frameworks. So kann der Dienst problemlos zwei- bis dreimal so viele Transaktionen ausführen.

Ein Amazon QLDB-Journal ist ein unveränderliches Protokoll, in dem Transaktionen als Datenblöcke angehängt werden.
Ein Amazon QLDB-Journal ist ein unveränderliches Protokoll, in dem Transaktionen als Datenblöcke angehängt werden.
(Bild: AWS)

Mit Managed Blockchain und Amazon QLDB können Unternehmen somit ein Hauptbuch erstellen, das transparent, unveränderlich und kryptografisch überprüfbar ist. Daraus entstehen viele Anwendungsfälle mit weitaus unkomplizierteren und preiswerteren Transaktionen. Jetzt sind kreative Entwickler gefragt, dieses Potenzial zu nutzen.

Über den Autor: Sascha Möllering ist Solutions Architect bei AWS.

(ID:46215958)