Das Oracle Problem gilt als eines der wesentlichen Probleme von Blockchains und Smart Contracts. Es bezeichnet die Problematik, dass Blockchains aufgrund ihrer Funktionsweise keine sinnvolle Möglichkeit haben, mit externen Datenquellen in sicherer Form zu interagieren.
Das Oracle Problem ist der wesentliche Grund dafür, warum Blockchains über lange Zeit isolierte Systeme blieben, die nur mit den ihnen verfügbaren on-chain Daten arbeiten konnten. Als Folge waren nur sehr wenige echte Use Cases mit Blockchain und Smart Contracts umsetzbar. Für viele Jahre beschränkte sich Blockchain auf das Verwalten und Übertragen von Kryptowährungen und die Tokenisierung von Assets (= digitale Repräsentation von Werten als Kryptowährungs-Token).
80-90% der Anwendungsfälle von Smart Contracts benötigen externe Daten
Ein Smart Contract ist eine digitale Vereinbarung, die als unveränderliches Softwareprogramm auf einer Blockchain existiert. Smart Contracts sind deterministisch und selbst-ausführend – sie prüfen eigenständig, ob bestimmte Bedingungen eingetreten sind und führen basierend auf diesen exakt vorgegebene Aktionen aus. Dazu benötigt ein Smart Contract keinerlei Mittelsmann, der die Prüfung und Ausführung durchführt.
Der Großteil der heute bekannten Use Cases von Smart Contracts benötigt hierzu externe Daten. Blockchain-basierte Smart Contracts und traditionelle Daten- und API-Ökonomie haben ein immenses Potenzial, die zukünftigen Bausteine der datengesteuerten Automatisierung zu sein. Smart Contracts müssen dazu in der Lage sein, essentielle Daten über z.B. aktuelle Aktienkurse, Preise von Kryptowährungen oder das Eintreten bestimmter Events zu erfahren.
Die wichtige Rolle von Oracles
Oracles sind ein essentieller Bestandteil der nächsten Generation an Smart Contracts. Simpel formuliert sind Oracles für alles zuständig, für das Smart Contracts selbst nicht zuständig sind. Darunter fällt:
- Datenanfragen von Smart Contracts annehmen
- Benötigte Daten bereitstellen
- Daten in Blockchain-lesbare Form formatieren
- Daten und Datenlieferung validieren
- Benötigte Berechnungen durchführen
- Daten-Outputs für Smart Contracts generieren
Der Begriff “Orakel” wird aus der griechischen Mythologie entlehnt. Orakel (von lateinisch oraculum „Götterspruch, Sprechstätte“; zu orare „sprechen, beten“) bezeichnen Personen, die mit göttlichen Wesen interagieren können um transzendente Offenbarungen zu erhalten. Im Kontext der Informatik bezeichnet der Begriff “Oracles” Datenquellen, welche Daten und Informationen aus der realen Welt zur Verfügung stellen. Oberflächlich gesehen, klingt dies nicht sehr kompliziert. In der Praxis stellte es lange Zeit ein großes Problem dar.
Risiken zentralisierter Oracles
Smart Contracts sind deterministisch und irreversibel. Wenn eine Datenquelle kompromittiert wird und – absichtlich oder unabsichtlich – falsche Informationen liefert oder ausfällt, wird der Smart Contract fehlerhaft ausgeführt. Somit werden die sehr hohen Sicherheitsgarantien von Blockchains und Smart Contracts zunichte gemacht.
“A smart contract that trusts a third party removes the killer feature of trustlessness.”
Jimmy Song, Blockchain Developer
Die Verwendung von einzelnen Oracles, APIs, etc. würde ein signifikantes Risiko in die Funktionsweise von Blockchains re-integrieren, welches gegen die grundlegendste Architektur und Sicherheitsversprechen von Blockchains und Smart Contracts verstößt.
Um diese Unzulänglichkeiten zu überwinden, müssen Oracles die gleichen Sicherheits- und Zuverlässigkeitsgarantien einer Blockchain erreichen. Hierzu gibt es unterschiedliche Lösungsansätze, jedoch ist Validvent der Auffassung, dass die vielversprechendste Lösung jene des dezentralen Oracle-Netzwerks Chainlink ist.
Hybride Smart Contracts
Chainlink ist die am meisten genutzte Lösung des Oracle Problems und bezeichnet die nächste Generation an Smart Contracts als “Hybrid Smart Contracts”.
Hybride Smart Contracts kombinieren Code, der auf der Blockchain (On-Chain) läuft, mit Daten und Berechnungen von außerhalb der Blockchain (Off-Chain), die von Decentralized Oracle Networks bereitgestellt werden. Hybride Smart Contracts ermöglichen fortschrittliche Formen ökonomischer und sozialer Koordination, die die manipulationssicheren und unveränderlichen Eigenschaften von Blockchains haben, aber gleichzeitig sichere Off-Chain-Oracle-Dienste nutzen, um neue Fähigkeiten wie Skalierbarkeit, Vertraulichkeit, Fairness und Konnektivität mit jeder Datenquelle oder jedem System der realen Welt zu erreichen.
Ein hybrider Smart Contract ist eine Anwendung, die aus zwei Teilen besteht: 1) Smart Contract-Code, der ausschließlich auf der Blockchain läuft, und 2) dezentrales Orakelnetzwerk(e) – sichere Off-Chain-Dienste, die den Smart Contract unterstützen.
| Wollen Sie mehr zu dem Thema erfahren? Lesen Sie unsere regelmäßigen Beiträge auf Insights oder kontaktieren Sie uns direkt. Unser Dienstleistungsportfolio finden Sie auf www.validvent.com.
Unsere Kanäle: Facebook – Instagram – LinkedIn – Twitter
Quellen:
chain.link
blog.chain.link
https://jimmysong.medium.com/the-truth-about-smart-contracts-ae825271811f