Smart Contracts: Wenn Verträge zwischen Computern geschlossen werden

Smart Contracts

Smart Contracts werden immer beliebter. Das Internet hat es möglich gemacht, dass nicht mehr nur Menschen, sondern auch Geräte miteinander kommunizieren können. Diese Verknüpfungen und Daten, die dabei entstehen, bilden die Grundlage für sogenannte Smart Contracts, also „verdinglichte“ oder „intelligente“ Verträge. Somit handelt es sich bei Smart Contracts um Computerprotokolle. Diese bilden Verträge ab, unterstützen die Abwicklung eines Vertrages technisch oder überprüfen die Verhandlungen, die letztlich zum Vertragsschluss führen. Durch die Smart Contracts wird es also unter Umständen überflüssig, den Vertrag zusätzlich schriftlich zu fixieren.

Denn Smart Contracts besitzen üblicherweise auch eine Benutzerschnittstelle, die gewissermaßen eine Verbindung zwischen Mensch und Maschine darstellt. Ferner wird durch Smart Contracts die Logik der vertraglichen Regelungen technisch abgesichert. Die Befürworter dieser neuen Technologie halten es für möglich, dass nunmehr zahlreiche Arten von Vertragsklauseln ganz oder teilweise selbst ausgeführt und durchgesetzt werden können. Gegenüber dem traditionellen Vertragsrecht bieten Smart Contracts ein höheres Maß an Vertragssicherheit, während sich zugleich die Transaktionskosten auf einem wesentlich niedrigeren Niveau befinden.

Beispiele für Smart Contracts

Im Bereich der digitalen Verwaltung von Rechten ist es etwa möglich, dass durch diese Protokolle die Copyright-Lizenzen abgebildet werden, im Finanzbereich lassen sich die Transaktionen abbilden. Ferner kann der User verschiedene Quality-of-service-Mechanismen wie Token-Bucket-Algorithmen oder die Zugangskontrolle nutzen, um sogenannte Service-Level-Agreements abzubilden. Mit diesem Begriff werden die Vereinbarungen bezeichnet, die ein Dienstleister mit seinem Auftraggeber für wiederkehrende Dienstleistungen vereinbart hat. Dadurch, dass der Umfang der Leistungen, die Reaktionszeit und die Frage, wie schnell die Bearbeitung erfolgt, genau beschrieben werden, hat der Auftraggeber eine bessere Kontrollmöglichkeit und eventuelle Unstimmigkeiten im Zuge der Rechnungsstellung können schon im Vorfeld ausgeräumt werden.

Auch bei einigen Peer-to-Peer-Netzwerken werden entsprechende Mechanismen benötigt. Durch diese soll sichergestellt werden, dass Partner, die räumlich weit entfernt voneinander sind, in etwa im gleichen Maß zum Netzwerk beitragen wie sie daraus profitieren. Schriftlich verfasste Verträge sind aber auch in diesem Fall nicht zwingend notwendig.

Wikipedia schreibt über Smart Contract:

Smart Contracts sind Computerprotokolle, die Verträge abbilden oder überprüfen oder die Verhandlung oder Abwicklung eines Vertrags technisch unterstützen. Eine schriftliche Fixierung des Vertrages wird damit unter Umständen überflüssig. Smart Contracts haben üblicherweise auch eine Benutzerschnittstelle und bilden die Logik vertraglicher Regelungen technisch ab. Befürworter von Smart Contracts behaupten, dass viele Arten von Vertragsklauseln somit teilweise oder vollständig selbst ausführbar oder selbst durchsetzbar oder beides werden. Smart Contracts versuchen, eine höhere Vertragssicherheit gegenüber traditionellem Vertragsrecht bei gleichzeitiger Reduktion der Transaktionskosten zu erreichen.

Die Geschichte der Smart Contracts

In den 1970er und 1980er Jahren entstand der Begriff „Agoric Computing“. Dieser Begriff leitet sich vom Namen des zentralen Markt-, Fest- und Versammlungsplatzes der antiken griechischen Städte ab. Weil hier auch Gerichts- und Volksversammlungen stattfanden, spielte die Agora eine zentrale Rolle für das Zusammenleben in der Gemeinschaft. Eine ähnliche Funktion erfüllte das Agoric Computing: Es wurde genutzt, um verschiedene Marktmechanismen wie etwa das Ressourcenmanagement oder Auktionen in einer Software abzubilden. Heute wird hierfür die Public-Key-Kryptografie genutzt, die eine Revolution für die bisherigen Möglichkeiten darstellte: Denn dank der Public-Key-Infrastruktur ist es möglich, dass digitale Zertifikate ausgestellt, verteilt und geprüft werden können. Die innerhalb der entsprechenden Infrastruktur erzeugten Zertifikate werden genutzt, um die rechnergestützte Kommunikation abzusichern.
Der Computerwissenschaftler Nick Szabo prägte schließlich den Begriff Smart Contracts. Er wollte durch seine Wortschöpfung die enge Verbindung zwischen dem hochentwickelten Vertragsrecht, verwandten Dispositionen und dem Design von E-Commerce-Protokollen herausstellen. Inspiriert wurde er dabei von Forschern wie dem Kryptologen David Chaum, der als Erfindet diverser kryptografischer Protokolle gilt und auch maßgeblichen Einfluss an der Weiterentwicklung verschiedener elektronischer Zahlungsmittel hatte. Nick Szabo hatte erwartet, dass sich auch in traditionellen Anwendungsbereichen durch Spezifikationen, die auf klarer Logik basieren, sowie durch eine Verifikation, die auf kryptographischen Protokollen basiert und um andere digitale Sicherheitsmaßnahmen im Vergleich zum herkömmlichen Vertragsrecht eine erhebliche Verbesserung erreichen ließe.

Allerdings ist davon auszugehen, dass sich diese Beispiele wohl voneinander und den aufgeführten Entwicklungslinien entwickelt haben. Deshalb sehen so manche Befürworter Smart Contracts als nötige Weiterentwicklung von unabhängigen Bemühungen, um verbesserte Möglichkeiten für Transaktionen in den verschiedenen Industrien mittels digitalen Technologien zu erreichen. Deshalb wurden bereits diverse formale Sprachen entwickelt, durch die sich Vertragsklauseln in Software abbilden lassen. Unterstützt werden diese Bestrebungen auch vom Institute of Electrical and Electronics Engineers mit Sitz in New York, das zum Thema Electric Contracting bereits verschiedene Workshops abgehalten hat.

Der replizierte Titel und die Vertragsausführung bei Smart Contracts


Implementieren lässt sich die für Smart Contracts notwendige Infrastruktur durch ein repliziertes Asset-Register und die anschließende Ausführung des Vertrages durch kryptographische Hash-Ketten sowie eine fehlertolerante Replikation.

Dabei kann in einem Peer-to-Peer-Netzwerk jeder beliebige Knoten gleichermaßen als Register sowie als Treuhänder fungieren. In diesen Knoten werden die Eigentümerwechsel durchgeführt, zudem erfolgt eine automatische Abbildung der überprüfbaren Regeln, die für die jeweilige Transaktion gelten. Dass sämtliche Transaktionen von allen anderen Knoten auditiert werden müssen, gilt als zusätzliche Sicherung für die an einer Transaktion beteiligten Parteien. Als Beschreibungssprache für die Verträge wurde 2002 das Askemos-Verfahren Scheme genutzt, eine bereits 1975 entwickelte Programmiersprache, später wurde stattdessen SQU verwendet.

Beim Askemos-Verfahren wurde die konventionelle elektronische Signatur durch eine dynamische und multilateral abgestimmte Signatur ersetzt. Der große Vorteil dieses Verfahrens besteht darin, dass die Dokumente nicht mehr an einem Ort liegen, an dem sie vernichtet oder manipuliert werden können, sondern verteilt abgespeichert sind. Das bietet nicht nur einen besseren Schutz vor Manipulationen, sondern macht das System auch weniger anfällig für einen technischen Ausfall.

Wollen zwei Parteien Smart Contracts nach dem Askemos-Verfahren abschließen, müssen sie sich zunächst einmal auf vier Provider einigen, die sowohl rechtlich als auch technisch voneinander unabhängig sind. Eine weitere Voraussetzung besteht darin, dass alle Beteiligten ein Askemos-Netzwerk wie etwa fiXml nutzen. Bevor die Verträge geschlossen werden, muss sich eine Partei bei den Providern authentifizieren, was im günstigsten Fall mit unterschiedlichen Verfahren erfolgt. Eine Partei speichert daraufhin den Vertragstext bei allen Providern. Neben dem eigentlichen Dokument werden noch weitere Informationen, etwa über den Absender des Dokumentes, hinterlegt. Aus diesen Daten wird automatisch eine Prüfsumme gebildet, die ebenfalls zusammen mit dem Dokument abgespeichert wird.

Anschließend erhält die andere Vertragspartei ein Zugriffsrecht auf die Daten. Nimmt die zweite Partei das Angebot an, muss sie ihrerseits ein Dokument mit der Zusage bei den Providern abgeben und dabei auf das Angebot Bezug nehmen, sodass Angebot und Annahme automatisch miteinander verknüpft werden können. Der Abschluss dieses Vertrages lässt sich somit auch in einem Gerichtsverfahren beweisen. Der Nachweis lässt sich durch einen internetfähigen Computer sowie durch einen Askemos-Zugang erbringen. Sobald der Beweisantrag beim Gericht eingegangen ist, muss dem Gericht lediglich noch der Identifikator der Annahme mitgeteilt werden, damit das Gericht die Authentizität der Dokumente überprüfen kann.

Allerdings handelt es sich bei Askemos lediglich um eine Vertragsbeschreibungssprache, durch die ein Konzept beschrieben wird, durch das sich unabhängige Register mit beliebigen Werten überprüfen lassen. Die Register sind jedoch nicht an einen bestimmten Wert, beispielsweise eine geldartige Ressource, gekoppelt. Die verschiedenen Kryptowährungen enthalten Spezialfälle derartiger Register, in denen die jeweilige Kryptowährung enthalten ist. Zahlreiche Kryptowährungen enthalten zusätzlich verschiedene Mechanismen, durch die sich allgemeine Vermögensgegenstände, aber auch Smart Contracts verwalten lassen. Beispielsweise enthält die Kryptowährung Namecoin eine replizierte Domain Name Registry. Andere Währungen wie Ethereum oder Ripple enthalten replizierte Titel für verschiedene Vermögensarten.

Smart Contracts im Alltag

Auch wenn der Bereich der Kryptowährungen für so manchen User noch ein Buch mit sieben Siegeln darstellt, sind Smart Contracts bereits jetzt im Alltag weiter verbreitet, als viele meinen. Die bekanntesten Beispiele, wo Smart Contracts bereits jetzt Anwendung im Alltag finden, ist neben der digitalen Rechteverwaltung auch das Abheben von Bargeld an einem EC-Automaten. Denn auch hier werden von Maschinen Daten erfasst und ausgewertet, bevor die jeweiligen Vertragsbedingungen ausgeführt werden.

Weil also körperliche Gegenstände an das Internet angebunden werden, wird die persönliche Umgebung des Menschen gewissermaßen „verrechtlicht“, wie das Büro des deutschen Datenschutzbeauftragten sagt. Das bedeutet: Smart Contracts machen es möglich, dass die Umgebung selbst bestehende Verträge vollziehen kann, sofern diese in einem Zusammenhang mit dem jeweiligen Gegenstand stehen.

Ein Beispiel zur praktischen Umsetzung

Smart Contracts

Wie sich Smart Contracts im Alltag optimal einsetzen lassen, zeigt sich etwa am Beispiel des Autos: Wer sich ein neues Auto zulegen möchte, hat den entsprechenden Betrag nicht unbedingt in bar, sondern schließt eher eine Vereinbarung zur Finanzierung mit einem Autohändler ab. Üblicherweise ist es ferner notwendig, eine sogenannte dynamische Kfz-Versicherung, basierend auf dem pay as you drive-Prinzip, abzuschließen. Bei diesem Modell ist die Höhe der monatlichen Prämien an die Fahrleistung des Autos gekoppelt. Werden beide Verträge nach dem Smart Contracts-Modell abgeschlossen und handelt es sich beim fraglichen Fahrzeug um ein Smart Car inklusive Blackbox, sind etwa folgende Szenarien möglich:

  • Unternimmt der frisch gebackene Fahrzeugbesitzer eine Spritztour mit riskanten Manövern, wird nach einer gewissen Zeit auf dem Info-Display eine Meldung eingeblendet, die besagt, dass die Versicherungsprämie um einen bestimmten Prozentsatz angehoben wird, weil die Daten zum Fahrverhalten ausgewertet wurden.
  • Kann der Halter die monatlichen Raten nicht mehr bezahlen, können die Smart Contracts auch das eigenständig erkennen und ziehen die entsprechenden Folgen daraus. Das bedeutet: Ist die Mahnung des Finanzdienstleisters erfolglos verlaufen, wird dem Fahrzeughalter jede weitere Nutzung des Autos verboten. Der Besitzer kann das Auto weder mit seinem Schlüssel noch mit seinen Zugangsdaten öffnen. Eine erneute Inbetriebnahme ist erst nach der nächsten Ratenzahlung wieder möglich.

Wichtig für Smart Contracts: die Verlässlichkeit der Daten

Damit Smart Contracts zuverlässig und korrekt umgesetzt werden, muss natürlich die Integrität und Zuverlässigkeit der Daten gewährleistet sein. Hierfür nutzen die verschiedensten Smart Contracts das Blockchain-Prinzip, also eine dezentral organisierte Datenbank. Welch großes Potenzial hinter dem Blockchain-Prinzip für Smart Contracts steckt, haben auch Branchenführer wie etwa IBM längst erkannt. So arbeitet das Unternehmen an einer Open Source Plattform, über welche die User Smart Contracts abschließen können. Auf der Plattform sollen die Smart Contracts außerdem öffentlich und sicher verwahrt werden.

    blockchain-hero