Was ist ein Smart Contract
Ein Smart Contract ist ein sich selbst ausführender Programmcode, der auf einer Blockchain-Plattform geschrieben und hochgeladen wird. Er ermöglicht die Durchführung von seriösen Transaktionen ohne die Notwendigkeit von Drittparteien. Solche Transaktionen sind innerhalb der Blockchain nachvollziehbar und unwiderruflich.
Smart Contracts sind Computercodes. Das zugrunde liegende Konzept wurde 1997 von Nick Szabo in seinem Artikel „Formalizing and Securing Relationships on Public Networks“ entwickelt. Diese Codes können auf den meisten Blockchains und dezentralen Ledger-Technologien oder auf anderen Softwareplattformen programmiert und ausgeführt werden.
In der Regel enthalten Smart Contracts Statusübergänge, Daten, Workflows usw., sie bestehen aus geskripteten Sequenzen, die mindestens ein bestimmtes Ergebnis an definierte Bedingungen und/oder Ereignisse knüpfen. Die Ausführung einer solchen Sequenz wird durch die Blockchain garantiert.
So könnten Sie beispielsweise Ihr gebrauchtes Auto an Anna verkaufen, indem Sie einen Smart Contract auf der Blockchain verwenden. Damit reduzieren Sie das Risiko gegen null, dass Sie Ihr Auto an Anna übergeben, ohne ordnungsgemäß bezahlt zu werden. Auch Anna, als Käuferin, hat ein berechtigtes Interesse daran zu vermeiden, dass sie das Geld übergibt, ohne zu wissen, ob das Auto in Ordnung ist. Auf klassische Weise müssten Sie das Auto demnach zur Begutachtung vorbeibringen oder Anna kommen lassen. Anna würde das Geld mitbringen. Und erst nachdem sie das Auto überprüft hat, wird der Vertrag geschlossen. Geld und Schlüssel werden ausgetauscht.
Durch die Anwendung eines Smart Contracts auf der Blockchain erreichen Sie das gleiche Ergebnis, allerdings ohne sich gegenseitig zu kennen und ohne den Prozess zu kontrollieren, da der Smart Contract wie ein neutraler Treuhänder handelt.
Sie würden ein mit der Blockchain verbundenes digitales Schloss an Ihrer Garage anbringen, oder das Auto kann sich sogar selbst elektronisch überwachen. Initiieren Sie den Smart Contract durch die Eintragung des richtigen Preises und des digitalen Schlüssels des Schlosses. Anna wird dann gebeten, den Preis in der jeweiligen Blockchain-Währung wie z. B. Ether zu zahlen. Der Smart Contract wird die Währung von Anna auf ein Treuhandkonto transferieren und darauf warten, dass sie das Auto überprüft. Der Smart Contract überträgt den öffentlichen Schlüssel und den Standort des Autos (oder das Schloss der Garage) an Anna und bittet sie, das Auto zu überprüfen. Wenn alles in Ordnung ist, unterschreibt Anna mit ihrem privaten Schlüssel und der Smart Contract überweist das Geld an Sie.
Ist Code Gesetz
Wenn man an das Beispiel des automatisierten Autoverkaufs denkt, könnte man sagen: „Code is law“. Oder wenn man an die DAO denkt, bei der sich herausstellte, dass der Smart Contract eine Art Fehlfunktion hatte (ein „rekursiver Aufruffehler“), die es einem Nutzer ermöglichte, mehr als 3,6 Mio. Ether (ca. 70 Mio. $) in eine „untergeordnete DAO“ zu leiten, könnte man die Ausführung dieser Funktion als legal betrachten.
Gemäß der Vorstellung von Lawrence Lessing bedeutet ‚Code ist Gesetz‘, dass Code die möglichen Handlungen regelt, welche Menschen im Cyberspace, dem frühen Internet der 1990er Jahre, vornehmen können. Seine größte Sorge war, dass der Code als Regulator des Cyberspace die Freiheit bedroht. Am 31. Januar 2018 beschloss Facebook zum Beispiel, „die Werbung für Bitcoin und andere Kryptowährungen komplett zu verbieten“.
Ein Vertrag besteht aus zwei oder mehr korrespondierenden Willenserklärungen, die sich auf denselben Inhalt beziehen. Beim Autokauf ist der Inhalt das Eigentum, das mit dem Geld zwischen Verkäufer und Käufer ausgetauscht wird. Beide müssen sich einig sein. Ohne Einigung gibt es keinen Vertrag.
Grundsätzlich haben Sie den Smart Contract mit bestimmten Werten gefüttert. Anna hat diesen durch die Zahlung zugestimmt, indem sie Ihr Angebot stillschweigend angenommen hat. Wenn alles, worauf sie sich geeinigt haben, in den Smart Contract aufgenommen werden würde oder müsste, wäre dieser ziemlich komplex.
Wäre z. B. das Auto gestohlen und ohne Papiere per Smart Contract an Anna verkauft worden, wäre der Vertrag nach deutschem Recht nicht wirksam. Beim Grenzübertritt nach Belgien, Italien oder Polen könnte das anders sein.
Es gibt also eine technische Ebene, die den Vertrag oder seine Ausführung unterstützt. Und es gibt eine rechtliche Ebene, die von den Vertragsbedingungen und dem darauf anwendbaren nationalen Recht abhängt, z. B. Widerspruchsrecht, EU-Datenschutzgrundverordnung (GDPR).
Natürlich kann ein intelligenter Vertrag nur innerhalb der Grenzen der geltenden Gesetzgebung wirksam werden. Um ein etwas extremeres Beispiel zu nennen: Der Verkauf von Drogen oder Waffen ist in den meisten Ländern illegal. Es wäre absurd, wenn ein Kaufvertrag über diese Produkte durch die Verwendung von Smart Contracts rechtsverbindlich werden könnte.
Smart Contracts vs. Vertragsrecht und Beweislast
In Anbetracht der oben erwähnten Smart Contracts müssen diese folgendes erfüllen:
- den rechtlichen Inhalt des Vertrages selbst, z. B. Garantien
- zwingendes Recht, z. B. Widerspruchsrecht, GDPR
- AGB-Recht, z. B. überraschende Klauseln, Kundenschutz
da es sich bei Smart Contracts jedoch um automatisierte Prozesse handelt, die wie ein einfacher Kaugummiautomat funktionieren, müssen diese ihre Funktion erfüllen. Infolgedessen würde sich die Beweislast effektiv ändern.
In den meisten Gerichtsbarkeiten trägt die Partei, die einen Rechtsanspruch geltend macht, die Beweislast, was bedeutet, dass diese Partei die zugrunde liegenden Bedingungen beweisen muss.
Folglich bedeutet dies, dass wenn Sie den Autokauf von Anna ausbezahlt bekommen wollen, müssten Sie jede Bedingung des Vertrages beweisen.
Mit dem Smart Contract ist die Zahlung automatisiert. Würde das Programm eine Unstimmigkeit aufweisen oder verändert worden sein, würde das Geld automatisch überwiesen werden und Anna müsste die Unstimmigkeit aufzeigen, um ihr Geld zurückzuerhalten.
Garantien und Haftung der Entwickler
Die Blockchain wird als die Zukunft des Internets bezeichnet. Im Jahr 2017 nutzten allein in Deutschland 62 Millionen Menschen das Internet. Jedoch können nur die wenigsten Smart Contracts schreiben oder einen Code lesen und verstehen. Daher ist es umso wahrscheinlicher, dass Blockchain-Entwickler einen neuen Markt für die Bereitstellung von Smart Contracts für Nutzer entdecken werden.
Wie bei jedem anderen Softwareentwicklungs- oder Softwarekaufvertrag sollten sich die Entwickler, wenn es sich bei dem Smart Contract um eine Standardsoftware handelt, der Garantien und Haftungen bewusst sein.
Anna kann gegen den Softwareentwickler vorgehen, um für jegliche durch das Fehlverhalten entstandenen Aufwendungen entschädigt zu werden.
Resümee und Ausblick
Schließlich ist einer der wichtigsten Erfolgsfaktoren jedes Smart-Contract- und Blockchain-Projekts, zu verstehen, dass es neben der technischen Ebene immer auch eine rechtliche Ebene gibt.
Weder muss jeder Entwickler ein Anwalt sein, noch müssen alle Anwälte Entwickler sein. Um Erfolg zu haben, ist es wesentlich, dass eine Gruppe vorhanden ist, die in der Lage ist, die Komplexität zu handhaben, damit sie nicht in der Übersetzung zwischen diesen beiden komplexen Welten verschwindet.
Kristian Borkert
Autor
Kristian Borkert ist Gründer der JURIBO Anwaltskanzlei und hat sich insbesondere auf den Bereich IT, Wirtschaftsrecht und Datenschutz spezialisiert.