Smart Oracles

Wie externe Daten sicher in die Blockchain wandern

04.09.2019 von Mustafa Cavus und Florian Keibel
Die externe Dateneinbindung wird für Blockchain-Anwendungen immer wichtiger. Smart Oracles bieten dafür einen guten Ansatz, der dennoch Schwächen aufweist.
Digitale Verträge erfordern häufig externe Daten.
Foto: metamorworks - shutterstock.com

Prozesse in der globalisierten, digitalen Wirtschaft erfordern die Zusammenarbeit vieler verschiedener Institutionen aus verschiedenen Branchen. Mithilfe der Blockchain-Technologie lassen sich Prozesse automatisieren und Abläufe durch Disintermediation, also das Wegfallen von Zwischeninstanzen in der Wertschöpfungskette, kosteneffizienter gestalten. Um diesen Effekt herbeizuführen werden Smart Contracts in der Blockchain genutzt. Smart Contracts sind ein Konzept, durch das Vertragsbedingungen digital durch Programmcode abgebildet werden können.

Die Krux mit den externen Daten

Der Ansatz hat allerdings auch einen Haken: Trotz der hergestellten Transparenz durch Blockchain und Smart Contracts sind die Möglichkeiten begrenzt, sobald zur Abwicklung von Smart Contracts externe Daten benötigt werden, die außerhalb des definierten Blockchain-Netzwerks liegen. Im einfachen Fall bildet eine Blockchain-Lösung einen bestimmten Business Case ab. Smart Contracts implementieren die Business-Logik, werden explizit ausgeführt und verarbeiten die Business-Daten. Das Ergebnis wird im Netzwerk validiert und verifiziert.

Dieses Vorgehen wird problematisch, sobald die Daten, die für die Business-Logik notwendig sind, nicht vorliegen und von Fremdsystemen bezogen werden müssen. Das gilt beispielsweise für Wertpapierkurse und Sensordaten, die sich im Sekundentakt verändern. Smart Contracts können nicht auf die Daten außerhalb ihres Netzwerks zugreifen. Die Herausforderung: Unternehmen müssen klären, wie die benötigten Daten zum Ausführen des Smart Contracts angeliefert werden und wie garantiert werden kann, dass diese nicht manipuliert worden sind. Die Datenschnittstelle der Blockchain wäre in diesem Fall ein potentielles Manipulationsziel.

Blockchain-Wissen: PKI, Hash-Werte und Blöcke
PKI
Die PKI bietet durch Schlüsselpaare (öffentlicher und privater Schlüssel) eines jeden Teilnehmers die Möglichkeit, Daten oder Transaktionen zu ver- und entschlüsseln. Der öffentliche Schlüssel eines Teilnehmers (hier Empfänger), welcher dem gesamten Netzwerk bekannt ist, kann vom Sender zum Verschlüsseln von Daten beziehungsweise Transaktionen genutzt werden. Der private Schlüssel, welchen nur der Empfänger selbst kennt, ermöglicht es diesem, die Nachricht zu entschlüsseln und somit zu lesen. Dank der Einzigartigkeit des privaten Schlüssels ist auch die digitale Signatur eines Dokuments oder einer Transaktion möglich. Verschlüsselt eine Person mit ihrem privaten Schlüssel ein Dokument, so können Andere mittels des öffentlichen Schlüssels die Zugehörigkeit zu dieser Person verifizieren.
Hash-Werte
Um die Echtheit des Dokuments zu beglaubigen, kommen sogenannte Hash-Funktionen zum Einsatz. Diese können jede Transaktion in einen String bestimmter Länge – den Hash-Wert – verwandeln. Die Besonderheit dabei ist, dass die Funktionen nicht umkehrbar sind. Vom Hash-Wert allein kann nicht auf den Inhalt des Dokuments geschlossen werden. Ein unveränderter Inhalt hingegen generiert bei gleicher Hash-Funktion immer den gleichen Hash-Wert, sodass das Verfahren genutzt werden kann, unveränderte Daten zu verifizieren.
Blöcke
Nicht nur die Daten beziehungsweise Transaktionen an sich werden mittels Hash-Funktionen verschlüsselt, sondern auch eine Ansammlung derer, sogenannte Blöcke. Das Erstellen eines Blocks ist das Produkt des Konsensus-Algorithmus, bei welchem teilnehmende Netzwerkknoten, im Falle von Bitcoin spricht man dabei von Minern, versuchen, ein mathematisches Problem (Hash-Puzzel) am schnellsten zu lösen. Der Gewinner darf dann den Block erstellen und zur Validierung ins Netzwerk einspeisen. Durch das Einpflegen des Hash-Werts des vorherigen Blocks in den neuen Block und das anschließende Hashen, entsteht eine Verkettung der Blöcke über ihre Hashwerte. Dies gibt der Blockchain ihren Namen und schafft Sicherheit über die Unveränderlichkeit der gespeicherten Daten: Denn ändert sich der Inhalt nur eines einzigen vergangenen Blocks, so müssten sich alle Hash-Werte der darauffolgenden Blöcke ebenfalls ändern. Da diese Blockchain dann jedoch abweichend zu denen der anderen Netzwerkknoten wäre, flöge der Betrug auf.

Smart Oracles als Gatekeeper

Für das Problem des Manipulationsrisikos, das bei der Nutzung von Daten außerhalb der Blockchain entsteht, gibt es eine Lösung. Die Lücken zwischen den Daten in der Blockchain und Daten außerhalb der Blockchain schließen sogenannte Smart Oracles. Diese spezielle technische Komponente besitzt die Fähigkeit, Ereignisse außerhalb einer Blockchain zu verifizieren und entsprechende Informationen den Smart Contracts in einer Blockchain bereitzustellen. Vereinfacht dargestellt: Mittels Smart Oracles lässt sich der Ausgang von Ereignissen herausfinden. Sie machen somit keine Vorhersagen über die Zukunft, wie es typischerweise die Rolle von Orakeln in der Mythologie ist. Vielmehr liefern Smart Oracles Informationen zu bereits geschehenen Ereignissen.

Durch die Verwendung von Smart Oracles lässt sich ein verifizierter Daten-Feed direkt an einem Smart Contract anbinden. Das eröffnet neue Möglichkeiten: In eine Blockchain-Lösung können nun beispielsweise verifizierte Echtzeit-Wertpapier- oder Rohstoffkurse integriert werden. Smart Contracts können damit auf den angelieferten verifizierten Kurswert reagieren und den Wert beim Handel mit anderen Assets auf der Blockchain punktgenau berücksichtigen.

Ein weiterer denkbarer Verwendungszweck ist die Auswertung von Sensordaten für Blockchain-Anwendungen im Internet of Things (IoT). In der Luftfahrt könnte ein Smart Contract anhand der angelieferten verifizierten Informationen feststellen, dass eine Wartung notwendig ist, und direkt mit Wartungsfirmen auf der Blockchain interagieren.

Roundtable IoT
Jan Rodig, Freiberuflicher Berater für Digitale Transformation, Innovation und IoT
„Es ist dringend notwendig, dass sich Unternehmen noch intensiver mit dem Thema ,IoT‘ auseinandersetzen – allein schon wegen des steigenden Wettbewerbsdrucks: Wenn die Konkurrenz aus dem Ausland billigere Maschinen in immer besserer Qualität herstellt, müssen deutsche Hersteller neue Argumente schaffen, um am Markt erfolgreich zu bleiben. IoT-Funktionen spielen hier eine Schlüsselrolle: Ohne sie wird es in Zukunft in den meisten Branchen kaum noch gehen.“
Oliver Edinger, Software AG
„Der Aufbau wirklich funktionierender IoT-Infrastrukturen ist vor allem eine Frage der richtigen Orchestrierung. Wo es früher reichte, die Software eines einzelnen Anbieters ein bisschen anzupassen, stammt eine Gesamtlösung im IoT-Kontext heute von vier oder fünf unterschiedlichen Herstellern. Die Aufgabe ist es also, sicherzustellen, dass zum Beispiel Sensorik, Plattform, Systemintegration, AI und all die anderen Komponenten reibungslos ineinandergreifen. Um das zu schaffen, brauchen wir mehr Mut zur Interdisziplinarität. Hier sehe ich die Medizintechnik als schönes Beispiel, wo durch intensiven Austausch über Fachgrenzen hinweg bahnbrechende Entwicklungen erreicht wurden.“
Katrin Bacic, Wayra Germany
„Gerade im Bereich IoT entstehen aktuell viele innovative Start-ups. Doch damit diese ihre Innovationskraft auch wirklich entfalten können, braucht es starke Partnerschaften mit Unternehmen, die sich trauen, diese Ideen auch in die Praxis umzusetzen. Gerade auf Konzernseite fehlt hier allerdings noch häufig die Bereitschaft zum nötigen Bewusstseinswandel – weg von unendlicher Planung und hin zu mehr Mut, auch mal etwas auszuprobieren, sprich: einfach mal mit einem Proof of Concept loslegen, anstatt lange zu zögern.“
Sven Koltermann, Telefónica
„Bei einem Thema wie IoT, das den Alltag in der industriellen Produktion so fundamental betrifft, gilt es, frühzeitig Mitarbeiter aller Fachabteilungen in den Prozess einzubinden. Wir erleben oft, dass vor allem in der Proof-of-Concept-Phase ausschließlich externe Berater mit am Tisch sitzen. Das führt dazu, dass das generierte Wissen nicht im Unternehmen bleibt. Als Telekommunikationsanbieter forcieren wir immer die direkte Zusammenarbeit mit den Mitarbeitern, um gemeinsam mit den Unternehmen tragfähige und nachhaltige IoT-Geschäftsmodelle zu entwickeln.“
Johannes Kaumanns, T-Systems
„In der Diskussion um IoT denken wir manchmal zu ,deutschlandzentrisch‘. IoT hat riesengroße globale Chancen und muss daher auch so gedacht werden. Das bedeutet, dass wir sowohl preislich als auch technologisch attraktivere und schneller umsetzbare Geschäftsmodelle entwickeln, um mit der internationalen Konkurrenz Schritt zu halten. Die Frage nach dem richtigen ,Sizing‘ ist hier also besonders zentral: Wie viel kann ich mit einer Lösung mittelfristig erreichen, und wie viel erwartet der Kunde? Die Regulierung ist hier leider nicht immer hilfreich: Auf den internationalen Märkten gibt es relativ hohe heterogene Restriktionen, die ein Risiko darstellen.“
Peter Gaspar, A1 Digital
„Die erfolgreiche Überführung von IoT-Konzepten in die Praxis gelingt am besten in den Unternehmen, die frühzeitig ,intellektuelle Investitionen‘ tätigen und eigene Kompetenzzentren aufbauen. Darüber hinaus ist es wichtig, in der Proof-Of-Concept-Phase einen gewissen Realismus mitzubringen. Es sollte von Anfang an eine klare Vorstellung darüber herrschen, welche Ziele man mit einem bestimmten Projekt erreichen will, aber auch, welche nicht für den Erfolg notwendig sind.“
Vincent Ohana, Concept Reply
„Der Fortschritt von IoT variiert in Deutschland stark zwischen den unterschiedlichen Branchen, aber auch die Unternehmensgröße ist ein Faktor. Ein Autohersteller hat vielleicht schon jahrzehntelange Erfahrung, während ein Maschinenbauer aus dem Allgäu gerade erst am Anfang steht. Es bedarf außerdem einer gewissen Hartnäckigkeit: Der Return on Investment tritt in IoT-Projekten relativ spät ein, oft erst nach drei, vier oder sogar fünf Jahren. Grund ist die hohe Komplexität: In einer IoT-Umgebung kommunizieren viele Komponenten miteinander, und es entstehen riesige Ökosysteme, die Projektpartner aus den unterschiedlichsten Bereichen integrieren. Dieser Komplexität können Unternehmen nur gerecht werden, wenn sie frühzeitig die richtigen Architekturentscheidungen treffen.“
Nicolai Blonner, Alcatel-Lucent Enterprise
„Das Internet der Dinge gibt es selten von der Stange. Sicher kann man einzelne IOT-Komponenten herauslösen und als schlüsselfertige Lösungen anbieten – aber am Ende ist jeder Anwendungsfall kundenspezifisch. Viele Unternehmen scheuen die Komplexität, die eben diese individuellen Anforderungen mit sich bringen. Unsere Aufgabe ist es daher, die Komplexität zu reduzieren, Erfahrung in die Unternehmen zu bringen und das richtige Maß aus internem und externem Know-how zu finden. Die Bereitschaft zum digitalen Wandel muss dabei aber aus den Unternehmen selbst kommen. Gerade auf Managementebene braucht es hier mehr Mut.“
Andreas Pfister, Syntax
„Internet of Things bedeutet in erster Linie das sinnvolle Zusammenführen von Daten. Die IoT-Infrastruktur muss sich dabei eng an den Zielen des Unternehmens orientieren. Welche Daten sind wirklich relevant und wie schaffe ich es, dass die Informationen, die ein Gerät liefert, von den anderen Geräten verstanden werden? Erst wenn diese Fragen beantwortet sind, können am Ende Geschäftsmodelle entstehen, die sich für die Industrie wirtschaftlich lohnen.“

Die verschiedenen Smart-Oracle-Typen

Smart Oracles gibt es in unterschiedlichen Varianten und Typen. Ein Unterscheidungsmerkmal ist die Richtung des Datenflusses. Ein sogenanntes Inbound Oracle versorgt einen Smart Contract mit externen Daten, während ein Outbound Oracle Informationen aus einem Smart Contract nach außen sendet, beispielsweise die Information „Öffne" zu dem Schloss eines Mietautos.

Ein weiteres Unterscheidungskriterium ist die Herkunft der Daten: Software Oracles versorgen einen Smart Contract mit digital zugänglichen Daten, die aus verschiedenen Online-Datenquellen bezogen werden können, beispielsweise Wetterdatenbanken, den Datenfeed von Finanzmarktplätzen und Informationsdienste, die Sportergebnisse anbieten. Hardware Oracles können wiederum Informationen aus einem Sensor auslesen, verifizieren und direkt aus der realen Welt in die Blockchain-Lösung schreiben. Mögliche erfassbare Messwerte sind unter anderem Umweltzustände, geographische Positionen und RFID-Chip-Informationen.

Das Oracle-Problem und die Lösung

Darüber hinaus gibt es Consensus Based Oracles. Sie stützen sich nicht lediglich auf die Daten eines Oracles, sondern kombinieren die Aussagen mehrerer Oracles, um ein konsensbasiertes Ergebnis zu generieren. Die Consensus Based Oracles versuchen ein grundlegendes Problem von Oracles, das „Oracle-Problem", zu lösen. Wird die Datenlieferung eines Oracles manipuliert und liefert dadurch inkorrekte Informationen, wird der dazugehörige Smart Contract mit falschem Input ausgeführt. Durch die Konsensfindung verschiedener Oracles wird versucht, die Abhängigkeit von der Datenlieferung eines einzelnen Oracles zu eliminieren. Andernfalls würde eine Zentralisierung stattfinden. Die Vorteile der dezentralen, nicht kompromittierbaren Blockchain und der autonomen Smart Contracts würden durch einen Single Point of Failure in der Datenanlieferung untergraben.

Zur Lösung des Oracle-Problems existieren noch weitere Ansätze. Für anspruchsvolle Vorgänge, in denen eine sichere Anlieferung externer Daten absolut erfolgskritisch ist, hat sich der dezentralisierte Ansatz von Distributed Smart Oracles als der am besten geeignete herauskristallisiert. Bei diesem Ansatz gewährleistet eine Zweidrittelmehrheit von Oracles, dass die Daten echt und korrekt sind. Mehrere Oracles erzeugen hier durch den Zugriff auf unterschiedliche Datenquellen gemeinsam einen Konsens. Dieser Vorgang ähnelt den Konsensverfahren der Blockchain bei der Bildung neuer Blöcke.

Fehlerhafte Oracles lassen sich so durch den dezentralisierten Ansatz ausschließen. Externe Störfaktoren wie Manipulationen oder Ausfälle einzelner Oracles wirken sich somit nicht auf das Ergebnis aus – es sei denn, es findet, wie bei einer Blockchain, eine koordinierte Attacke auf die Mehrheit der Oracles statt.

Smart Oracles erweitern somit die Funktionalität von Blockchains, besitzen jedoch ähnliche Stärken und Schwächen. Die Lösungen bei der Implementierung ähneln den Weiterentwicklungen der letzten Jahre im Blockchain-Bereich.

Fazit: Stärken und Schwächen kennen und berücksichtigen

Künftige Blockchain-Anwendungen werden verstärkt in der Lage sein müssen, per Schnittstelle mit Daten von außerhalb arbeiten zu können. Smart Oracles eröffnen Wege zur sicheren Einbindung dieser externen Informationen. Das erweitert das Einsatzspektrum und die Funktionalität von Blockchains. Dennoch sind die smarten Orakel, wie jede neue Technologie, alles andere als perfekt. Unternehmen sollten bei der Implementation von Smart Oracles deshalb mit besonderer Sorgfalt vorgehen, die Schwächen kennen und sie auch berücksichtigen.