Amazon Managed Blockchain & Amazon QLDB vorgestellt

Verbesserter Zugriff auf Blockchain- und Ledger-Datenbanken

Werner Vogels

© Shutterstock / phive

Die Implementierung einer Blockchain gehört zu den anspruchsvolleren Aufgaben der IT. Frameworks wie Hyperledger Fabric oder Ethereum vereinfachen zwar den Prozess. Doch mit dem neuen AWS Service „Amazon Managed Blockchain“ sollen Blockchains noch schneller aufgesetzt werden können. Amazon CTO Werner Vogels stellt in diesem Artikel den Dienst sowie die damit verbundene Amazon Quantum Ledger Database (Amazon QLDB) vor.

Der AWS-Kunde HARA in Jakarta hat eine Möglichkeit geschaffen, kleine Farmen in Entwicklungsländern mit Banken und Händlern von Gütern wie Saatgut, Dünger und Werkzeugen zusammenzubringen. Landwirtschaftliche Betriebe wurden dort in der Regel von der Finanzwelt ignoriert, da sie normalerweise nicht über die erforderlichen Informationen verfügen, um ein Konto zu eröffnen oder einen Kredit zu beantragen. Mit HARA werden die schwer zu beschaffenden Daten zu kleinen Farmen gesammelt und authentifiziert, sodass die Landwirte Zugriff auf Ressourcen erhalten, die sie zuvor nie hatten.

Eine Hauptkomponente des von HARA entwickelten Systems ist die Blockchain. Die Technologie wird zum Erstellen von Anwendungen verwendet, bei denen mehrere Parteien über ein Peer-to-Peer-Netzwerk interagieren und unveränderliche Transaktionen ohne zentrale vertrauenswürdige Instanz aufzeichnen können. HARA musste zusätzliche Technologien entwickeln, damit ihre Anwendung auf Ethereum, einem beliebten Open-Source-Blockchain-Framework, funktioniert.

Das ist ein Problem, das viele Kunden wie Nestlé und Singapore Exchange ebenso haben. Die Erstellung einer skalierbaren Unternehmensanwendung auf Blockchain ist heute zeitaufwändig und komplex. Organisationen, die diese Herausforderungen nicht bewältigen können, bleiben zurück. Auch ihre Ideen geraten ins Hintertreffen – Ideen wie die von HARA, die die Welt zum Besseren verändern können.

Um die Komplexität von Blockchain-Netzwerken zu verringern, hat AWS Ende April 2019 Amazon Managed Blockchain angekündigt, einen vollständig verwalteten Dienst, mit dem sich skalierbare Blockchain-Netzwerke erstellen und verwalten lassen.

AWS hat außerdem Amazon Quantum Ledger Database (Amazon QLDB) angekündigt. Dabei handelt es sich um eine Ledger-Datenbank, die einige Funktionen bietet, die mit denen der Blockchain zur Datenintegrität identisch sind. Die Lösung wurde für zentralisierte Systeme entwickelt, bei denen es eine zentrale vertrauenswürdige Instanz gibt. Amazon QLDB bietet ein transparentes, unveränderliches und kryptografisch überprüfbares Transaktionsprotokoll, das zu einer zentralen vertrauenswürdigen Stelle gehört.

Der Beitrag behandelt einige dieser Konzepte, beleuchtet Herausforderungen, die User im Umgang mit der Blockchain haben und zeigt auf, wie diese Probleme mit den beiden neuen Amazon-Diensten gelöst werden können.

Blockchain Whitepaper 2019

Free: Blockchain Technology Whitepaper

If building a blockchain from scratch is beyond your current scope, the blockchain technology whitepaper is worth a look. Experts from the field share their know-how, tips and tricks, development advice, and strategy for becoming a blockchain master.

 

Software Architecture Summit 2019
Stephan Pirnbaum

Lasst uns einen Monolithen (z)erlegen

mit Stephan Pirnbaum (buschmais GbR)

Scott Davis

Making Your Mobile Web App Talk

mit Scott Davis (ThoughtWorks)

Ein genauerer Blick auf die Blockchain- und Ledger-Technologie

Zunächst sollen einige Technologien betrachtet werden, die hinter der Blockchain stecken – beispielsweise Ledgers, dezentrale Netzwerke, Konsensalgorithmen und intelligente Verträge.

Blockchains wurden entwickelt, um die Integrität von Daten zu gewährleisten. Die Daten sind unveränderlich: Übergebene Daten können nicht geändert oder gelöscht, sondern lediglich aktualisiert werden. Hauptbücher – die Ledgers – sind die Bausteine, die dazu beitragen, Blockchains unveränderlich zu machen. Dieses Konzept wird im Folgenden im Detail erläutert.

Hauptbücher gibt es schon seit langer Zeit und wurden in der Regel verwendet, um die Historie von wirtschaftlichen und finanziellen Aktivitäten zwischen zwei oder mehr Parteien aufzuzeichnen. Frühere Zivilisationen wie in Mesopotamien und im alten Ägypten verwendeten Hauptbücher aus Stein und Papyruspflanzen. Heute ist eine Bankanwendung, die die Verfolgung von Gut- und Lastschriften ermöglicht, eines der häufigsten Beispiele für ein Ledger.

Ledgers in einer Blockchain – und jetzt in Amazon QLDB – bestehen normalerweise aus folgenden Elementen:

  • Aktueller und historischer Status: Eine Datenstruktur, in der die aktuellen und historischen Statuswerte gespeichert werden, damit Anwendungen problemlos auf die Daten zugreifen können, ohne das gesamte Transaktionsprotokoll durchsuchen zu müssen.
  • Journal: Ein Transaktionsprotokoll, das den gesamten Verlauf von Datenänderungen vollständig aufzeichnet. An das Transaktionsprotokoll kann nur angehängt werden, was bedeutet, dass jeder neue Datensatz mit dem vorherigen verknüpft ist, sodass der gesamte Änderungsverlauf der Daten angezeigt werden kann. Mithilfe von kryptografischem Hashing, einem Prozess, der jedem Datensatz eine eindeutige Kennung – beispielsweise einen Fingerabdruck – zuweist, werden Blöcke miteinander verknüpft. Auf diese Weise verfügen die Ledgers über die Fähigkeit, Zeit zu messen, sodass jeder Nutzer zeitlich zurückblicken und den Nachweis erbringen kann, dass die Datentransaktion stattgefunden hat, wodurch die Prüfung vereinfacht wird.

Bei relationalen Datenbanken müssen die Kunden einen Prüfmechanismus entwickeln, da die Datenbank nicht grundsätzlich unveränderlich ist. Solche Prüfmechanismen, die mit relationalen Datenbanken erstellt wurden, können schwer skalierbar sein. Es ist dem Anwendungsentwickler überlassen, sicherzustellen, dass alle richtigen Daten aufgezeichnet werden.

 

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

Konsensalgorithmen stellen sicher, dass die Mitglieder des Netzwerks über eine vereinbarte Methode verfügen, mit der Transaktionen und Daten in das Hauptbuch übernommen werden können. Wenn die Konsensanforderungen nicht erfüllt sind, wird die Transaktion zurückgesetzt und ist ungültig.

Intelligente Verträge sind Programme, deren Regeln und Vertragsstrafen in Codezeilen definiert sind. Das Programm prüft kontinuierlich, wann die Bedingungen für einen Vertrag erfüllt sind und stellt dann sicher, dass der Vertrag automatisch ausgeführt wird.

Gemeinsam ermöglichen es diese Elemente, dass zwei oder mehr Parteien mit dezentralem Vertrauen handeln können, wobei jede Partei der Transaktion zustimmt und sie aufzeichnet. Ein sinnvolles Verfahren, wenn mehrere Organisationen unabhängig voneinander den Transaktionsverlauf überprüfen und eine einzige, aktuelle und genaue Datenansicht haben müssen. Das ist auch dann sinnvoll, wenn es keine einzelne Partei gibt, die eine Anwendung pflegen möchte, aber Netzwerkmitglieder dennoch effizient mit anderen Parteien Geschäfte tätigen wollen.

Bei einer Trade-Finance-Anwendung beispielsweise ist dezentrales Vertrauen erforderlich. Der grenzüberschreitende Warenverkehr erfordert die Zusammenarbeit vieler Organisationen wie Importeure, Exporteure, mehrere Banken, Reedereien, Versicherungsgesellschaften und Zollabteilungen. Bei der Anzahl der beteiligten Stakeholder gibt es keine vertrauenswürdige zentrale Instanz. Jeder Stakeholder möchte die Dokumentation in Bezug auf den Handel unabhängig überprüfen und will nicht, dass ein einzelnes Unternehmen Eigentümer des Tätigkeitsprotokolls wird.

Der aktuelle Prozess erfordert, dass handelsbezogene Unterlagen – beispielsweise ein Akkreditiv – zwischen den Beteiligten hin und her gehen, was fünf bis zehn Werktage dauern kann. Das führt zu langen Bearbeitungszeiten und hohen Kosten.

In diesem Szenario werden Effizienzsteigerungen und Kostensenkungen erzielt, da die Stakeholder mit dezentralem Vertrauen agieren können. Es besitzt nicht ein einzelner Teilnehmer die Infrastruktur, und das System verteilt eine Kopie des Transaktions-Ledgers an jeden Teilnehmer zur unabhängigen Überprüfung. Der Geschäftsvertrag, etwa ein Akkreditiv, kann in der Blockchain-Anwendung als intelligenter Vertrag geschrieben werden. Er lässt sich automatisch ausführen, sobald alle Parteien einen Konsens zur Aufzeichnung der Transaktion erzielt haben.

Kunden sehen Blockchain als Technologie, mit der sie mit mehreren Parteien Geschäfte abwickeln können, wenn es keine einzige vertrauenswürdige Behörde gibt und sie ein System mit dezentralisiertem Vertrauen benötigen. 

Managed Blockchain

Das Erstellen und Verwalten von Blockchain-Netzwerken mithilfe vorhandener Frameworks ist schwierig, teuer und zeitaufwendig. Um ein Blockchain-Netzwerk mit Berechtigungen zu erstellen, muss jedes Netzwerkmitglied Hardware selbst bereitstellen, Software installieren, Zertifikate für die Zugriffssteuerung erstellen und verwalten sowie Netzwerkkomponenten konfigurieren. Während der Ausführung des Blockchain-Netzwerks sind Benutzer dazu gezwungen, die Infrastruktur kontinuierlich zu überwachen. Sie müssen sich an Änderungen wie eine Zunahme von Transaktionsanforderungen oder neue Mitglieder, die dem Netzwerk beitreten oder dieses verlassen, anpassen.

AWS hat eine verwaltete Blockchain erstellt. Sie überwindet Hindernisse, mit denen Benutzer konfrontiert sind, wenn sie mit der Blockchain-Technologie starten. Im Gegensatz zu einem selbst gehosteten Blockchain-Netzwerk ist es bei Amazon Managed Blockchain nicht mehr erforderlich, Hardware bereitzustellen, Software zu konfigurieren und Netzwerk- sowie Sicherheitskomponenten einzurichten. Mit diesem Service können Benutzer mit nur wenigen Klicks ein skalierbares Blockchain-Netzwerk einrichten und verwalten. Es skaliert automatisch, um die Anforderungen von Tausenden von Anwendungen mit Millionen von Transaktionen zu erfüllen.

Managed Blockchain verwaltet Zertifikate und verfolgt operative Kennzahlen wie die Verwendung von Rechen-, Speicher- und Speicherressourcen. Mit der Abstimmungs-API von Managed Blockchain können Netzwerkteilnehmer Mitglieder hinzufügen oder entfernen. Benötigt ein Netzwerkmitglied zusätzliche Kapazität zum Erstellen und Überprüfen von Transaktionen, kann das Mitglied mithilfe der APIs von Managed Blockchain schnell einen neuen Knoten hinzufügen.

Darüber hinaus bietet Managed Blockchain eine Auswahl von Instanztypen, die unterschiedliche Kombinationen von CPU und Arbeitsspeicher umfassen. Das gibt Anwendern die Flexibilität, den geeigneten Ressourcenmix zur Unterstützung ihrer Knoten auszuwählen. Benutzer zahlen entsprechend ihrer Nutzung und müssen sich keine Gedanken über Vorabkosten für die Infrastruktur machen.

Managed Blockchain unterstützt zwei gängige Blockchain-Frameworks: Hyperledger Fabric und Ethereum. Hyperledger Fabric eignet sich gut für Anwendungen, die strenge Datenschutz- und Berechtigungskontrollen erfordern sowie für Anwendungen mit bekannten Mitgliedern. Das kann beispielsweise eine Finanzanwendung sein, bei der bestimmte handelsbezogene Daten nur von einer Teilmenge des Netzwerks – also nur den Banken, die Teil des Handels sind – ausgetauscht werden.

Ethereum eignet sich gut für hochverteilte Blockchain-Netzwerke, bei denen für alle Mitglieder die Transparenz der Daten wichtig ist. Jede Transaktion ist für alle Mitglieder des Netzwerks sichtbar. Das kann beispielsweise eine Blockchain-Anwendung zur Kundenbindung sein, mit der jeder Netzwerk-Retailer die Benutzeraktivität überprüfen kann, indem er die Transaktion an alle Mitglieder sendet.

Managed Blockchain ist jetzt allgemein für Hyperledger Fabric verfügbar – Ethereum folgt in Kürze.

 

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

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

Ein Blockchain-Netzwerk ist ein Peer-to-Peer-Netzwerk, auf dem ein dezentrales Blockchain-Framework ausgeführt wird. Jedes Netzwerk umfasst ein oder mehrere Mitglieder, bei denen es sich um eindeutige Identitäten im Netzwerk handelt – beispielsweise eine Organisation in einem Bankenkonsortium. Jedes Mitglied im Netzwerk kann problemlos eigene Peer-Knoten erstellen, die über eine Vielzahl von Rechen- und Speicheroptionen verfügen.

Mit jedem Mitglied wird auch die Hyperledger-Fabric-Zertifikatsstelle erstellt. Die Hyperledger-Fabric-Zertifikatsstelle stellt eine Reihe von Zertifikatdiensten bereit, die sich auf die Benutzerregistrierung, aufgerufene Transaktionen in der Blockchain und TLS-gesicherte Verbindungen zwischen Benutzern oder Komponenten der Blockchain beziehen.

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

Mitglieder definieren die Regeln im Endorsement-Prozess basierend auf der Geschäftslogik ihrer Anwendung. Beispielsweise möchte die Bank der exportierenden Partei in einer Handelsfinanzierungsanwendung überprüfen, ob die importierende Partei ü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.

Managed Blockchain bietet Endpunkte für den Zugriff auf diese Dienste, auf die über einen AWS PrivateLink-Endpunkt zugegriffen werden kann. Darüber hinaus wurde bei Managed Blockchain die Zuverlässigkeit des Standardbestelldienstes verbessert, einer Komponente, die die Übermittlung von Transaktionen über das Blockchain-Netzwerk sicherstellt. Der Bestellservice wurde mithilfe derselben Technologie, wie sie Amazon QLDB zugrunde liegt, neu erstellt. Es gibt nun sogar ein unveränderliches Änderungsprotokoll, das den vollständigen Verlauf aller Transaktionen im Blockchain-Netzwerk genau aufzeichnet und sicherstellt, dass die Daten dauerhaft gespeichert werden.

Eine Hauptbuchlösung fördert Vertrauen durch eine zentrale Instanz  

AWS hat viel Zeit damit verbracht, mit Kunden über Blockchain zu sprechen, um die Probleme, die Blockchain lösen soll, besser zu verstehen. Es ergaben sich einige interessante Ergebnisse: Viele Unternehmen sind an Blockchain interessiert, weil sie ein Hauptbuch benötigen, das transparent, unveränderlich und kryptografisch überprüfbar ist. Sie haben jedoch keinen Anwendungsfall, der dezentralisiertes Vertrauen erfordert.

Ein Beispiel hierfür ist eine Abteilung für Kraftfahrzeuge, die den Fahrzeugbesitz und die Zulassungshistorie auf eine Weise aufzeichnet, die vor Datenmanipulation resistent ist. Die Mitarbeiter haben versucht, dieses Problem mit einer relationalen Datenbank zu lösen, die jedoch nicht unveränderlich ist. Die Benutzer müssen eine Menge Arbeit leisten, um komplexe Überwachungsfunktionen zu erstellen. Außerdem gibt es bei einer herkömmlichen Datenbank keine Möglichkeit, in der Zeit zurück zu gehen und die Integrität des Änderungsprotokolls zu überprüfen.

Logischerweise lautet der nächste Gedanke: „Was ist mit der Hauptbuchkomponente einer Blockchain?“ Dadurch werden die Probleme der Datenintegrität und der Auditfunktionalität gelöst und dezentrales Vertrauen in Transaktionen geschaffen. Für Unternehmen, die nicht bei jeder Transaktion einen Konsens über alle Parteien hinweg benötigen, ist dies nicht das richtige Tool.

Die Lösung für dieses Problem ist ein zentrales Hauptbuch, das als transparentes, unveränderliches und kryptografisch überprüfbares Transaktionsprotokoll dient. Aus diesem Grund hat AWS die erste speziell für diesen Zweck erstellte Ledger-Datenbank erstellt: Amazon QLDB.

Mit Amazon QLDB lässt sich leicht nachvollziehen, wie sich Anwendungsdaten im Laufe der Zeit geändert haben, und es müssen keine komplizierten Überwachungsfunktionen in der Anwendung erstellt werden. Ein Amazon QLDB-Journal ist ein unveränderliches Protokoll, in dem Transaktionen als Datenblöcke angehängt werden. Nachdem eine Transaktion als Block in das Journal geschrieben wurde, kann sie nicht mehr geändert oder gelöscht werden. Sie wird zu einem permanenten Datensatz.

Diese Blöcke werden auch unter Verwendung von Kryptographie (SHA-256) durch Hash-Verkettung miteinander verbunden. Auf diese Weise können Nutzer die Integrität ihrer Daten überprüfen und nachweisen – beispielsweise muss ein E-Commerce-Unternehmen möglicherweise den Nachweis eines erfolgreichen Angebots erbringen. Diese Transaktion wird dann in der Tabelle „Aktueller Status“ aktualisiert, die immer den aktuellen Wert der Daten enthält. Schließlich wird die Transaktion in der Verlaufstabelle indiziert, die abgefragt werden kann, um zu verfolgen, wie sich die Daten im Laufe der Zeit geändert haben.

Da Amazon QLDB außerdem eine Datenbank ist, bietet die Lösung eine bessere Leistung und Skalierbarkeit als Blockchain-Frameworks. Der Dienst kann problemlos zwei- bis dreimal so viele Transaktionen ausführen wie herkömmliche Blockchain-Frameworks. Amazon QLDB ist ab sofort in einer eingeschränkten Vorschau verfügbar.

Moderne Hauptbücher für jedermann verfügbar machen

Die Blockchain- und Ledger-Technologie hat das Potenzial, viele Arten von Transaktionen erheblich zu verbessern. Wenn sie jedoch nicht jedem zugänglich ist, werden viele großartige Ideen möglicherweise nie verwirklicht.

Mit Managed Blockchain und Amazon QLDB kann jeder ein Hauptbuch erstellen, das transparent, unveränderlich und kryptografisch überprüfbar ist. Es gibt viele Anwendungsfälle für Blockchain- und Ledger-Datenbanken. In diesem Artikel wurden nur ein paar Beispiele genannt.

Zusammenfassung

Die beiden Lösungen – Managed Blockchain und Amazon QLDB – erweitern das AWS-Datenbankportfolio. Indem AWS mehr Optionen schafft, ist mehr Menschen geholfen. Und wenn ein Unternehmen die Freiheit hat, das beste Werkzeug für eine Tätigkeit auszuwählen, macht es einen großen Unterschied.

Verwandte Themen:

Geschrieben von
Werner Vogels
Werner Vogels
Werner Vogels ist Chief Technology Officer (CTO) und Vizepräsident von Amazon.com. Werner bloggt unter https://www.allthingsdistributed.com.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
4000
  Subscribe  
Benachrichtige mich zu: