© Liashko/Shutterstock.com
Das Orakelproblem lösen

Verlässliche Blockchain-Orakel für Finanzdaten


Blockchain-basierte Anwendungen sind seit einigen Jahren in aller Munde. Dabei ist es immer sehr leicht, von der „dezentralen Revolution“ zu sprechen, und das Management hat bestimmt schon viele tolle Ideen, wie man das eigene Produkt mit einer dezentralisierten App (DApp) verbessern kann. Dass aber auch handfeste technische Probleme auf dem Weg liegen können, fällt nicht unbedingt auf den ersten Blick auf. Dieser Artikel führt deshalb in das „Orakelproblem“ ein, bei dem es um den simpel erscheinenden Prozess der Eingabe in Blockchain-Anwendungen geht.

Eine Blockchain ist im Grunde genommen ein Werkzeug zur Erzeugung eines globalen Konsens über eine (geordnete) Reihenfolge von Transaktionen. Allen Blockchains gemein ist, dass dieser Konsens durch möglichst viele Teilnehmer eines Peer-to-Peer-Netzes gebildet wird und von allen Teilnehmern unabhängig verifiziert werden kann. Dafür gibt es Miner, die die Transaktionen empfangen und in Konkurrenz zueinander zu Blöcken zusammenfassen. Dabei lösen sie außerdem eine kryptografische Aufgabe, deren Schwierigkeit dafür sorgt, dass zur Erstellung eines Blocks im Durchschnitt eine bestimmte, vom Netzwerk vorgegebene Zeit vergeht, bei Ethereum zum Beispiel ca. 15 Sekunden. Diese Blöcke bilden dann eine Kette (die Blockchain), deren kryptografischer Zusammenhang nur mit sehr viel Rechenaufwand nachträglich gefälscht werden kann. Im Allgemeinen handelt es sich also um eine revisionssichere Transaktionsliste, die von normalen Angreifern nicht verändert werden kann.

Smart Contracts sind eine Erweiterung dieser Grundidee. Erstmals im System Ethereum großflächig eingesetzt, sind es quasi kleine Programme in jeder Transaktion. Diese werden parallel von allen beteiligten Minern ausgeführt, das Ergebnis landet für immer in der Blockchain. Dabei können solche Contracts mit besonderen Funktionen auch auf den monetären Wert der Transaktion zugreifen und ihn sogar verwalten. Man könnte Smart Contracts also auch als eine Art programmierbares Geld bezeichnen. Es ist jetzt schon absehbar, dass viele Bereiche der Finanzwelt durch Smart Contracts ergänzt bzw. deren Ausführung weiter automatisiert werden kann.

Eine Herausforderung ist es, diese Smart Contracts mit Daten aus der echten Welt zu füttern. Stellen wir uns ein Szenario vor: Der Ersteller des Contract möchte einer Variable den aktuellen Wechselkurs des Euro zum Dollar zuweisen. In einem normalen Programm auf seinem PC würde er das API der Europäischen Zentralbank aufrufen, um...

Exklusives Abo-Special

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang