Nach Blockchain-basierten Kryptowährungen (Bitcoin) gelten sog. Smart Contracts als „the next big thing“ im Bereich der Blockchain-basierten Anwendungen.
Bereits seit geraumer Zeit diskutieren innovative Unternehmen der Finanztechnologie (sog. FinTechs) und Anhänger der Blockchain-Szene die Frage:
Was wäre, wenn Verträge in Software und Hardware dargestellt werden können, so dass Leistung und Gegenleistung durch die Programmlogik vorgegeben werden?
Die Idee hinter derartigen Smart Contracts: Der Verzicht auf eine menschliche Instanz zur Vertragsdurchführung geht mit einer Reduktion von Risiken und Transaktionskosten einher.
Smart Contracts – eine Idee beflügelt die FinTech-Szene
Ganz neu ist diese Idee nicht. Sie wurde bereits Anfang der 90er Jahre vom US-amerikanischen Juristen Nick Szabo entwickelt. Allerdings fehlte es zu dieser Zeit noch an entsprechenden Technologien zur Vertragsausführung.
Dies änderte sich erst mit der zunehmenden Erkenntnis, dass die Anwendungsmöglichkeiten der sogenannten Blockchain weit über die Bereitstellung einer Cryptocurrency wie Bitcoin oder Ether hinausgehen und durch die Möglichkeit eines Austauschs und einer Verwaltung von digitalen Gütern ideale Rahmenbedingungen für Smart Contracts geschaffen werden.
Die Blockchain – Grundlage für Smart Contracts
Um zu verstehen, warum faktisch erst die Blockchain-Technologie Smart Contracts ermöglicht, bedarf es zumindest eines flüchtigen Blicks auf die Funktionsweise der Blockchain-Technologie (mehr zur Blockchain: Kaulartz, „Die Blockchain-Technologie″, Computer und Recht (CR) 2016, 474-480):
Bei einer Blockchain handelt es sich – stark vereinfacht – um eine Art digitalen Kontoauszug für Erklärungen zwischen Computern, der in identischer Form in verschiedenen Datenbanken gespeichert ist, ohne dabei zentral verwaltet zu werden. Dabei wird eine Transaktion (also etwa die Übertragung von digitalen Gütern) erst dann auf dem digitalen Kontoauszug vermerkt („in die Blöcke der Blockchain geschrieben“), wenn mittels kryptografischer Funktionen geklärt worden ist, dass der Absender zur Durchführung dieser konkreten Transaktion berechtigt war.
Die Ausführung der Transaktion kann zudem von dem Eintritt bestimmter Bedingungen abhängig gemacht werden. Diese Bedingungen können mittels spezieller Programmiersprachen formuliert werden. Mit Hilfe dieser programmierten („smarten“) Bedingungen wird aus einer Transaktion ein Smart Contract (mehr zu Smart Contracts: Kaulartz/Heckmann, „Smart Contracts – Anwendungen der Blockchain-Technologie″, Computer und Recht (CR) 2016, 618-624).
Der DAO-Hack: Von Smart Contracts und Dumb Contracts
Doch was passiert, wenn sich der Smart Contract in der Praxis als Dumb Contract erweist? Diese Frage stellte sich unlängst vor einem ganz realen Hintergrund, als ein „Hacker“ eine (planwidrige) Lücke in einem Smart Contract des Crowdfunding-Unternehmens TheDAO ausnutzte, um Kryptowährung mit einem Realwert von ca. 40 bis 60 Millionen Dollar aus dem Crowdfunding-Unternehmen TheDAO abzuzweigen und seinem eigenen Konto (dem sog. wallet) gutzuschreiben. Ein verwerfliches Handeln vermochte der „Hacker“ in diesem Handeln nicht zu erkennen. Vielmehr berief er sich auf die Terms des Smart Contracts:
„The terms of The DAO Creation are set forth in the smart contract code existing on the Ethereum blockchain at […]. Nothing in this explanation of terms or in any other document or communication may modify or add any additional obligations or guarantees beyond those set forth in The DAO’s code“.
Seit diesem Vorfall diskutiert die internationale FinTech-Szene leidenschaftlich, inwieweit ein solcher „code is law“ rechtlich und faktisch Bestand haben darf. Dieser Ansatz besagt, dass sich die Rechte und Pflichten der Parteien einzig und allein aus dem vereinbarten code ergeben. Man könnte sich also auf den Standpunkt stellen, dass der „Hacker″ beim DAO-Hack nur das „vertraglich Vereinbarte″ gelebt und sich nicht „regelwidrig″ verhalten hat.
„Code is law“ – Ansatz nicht vertretbar
Zumindest im deutschen Recht scheint ein solcher „code is law„-Ansatz allerdings nicht vertretbar. Schließlich gilt es zu berücksichtigen, dass der code nicht das einzige law ist. Der code ist vielmehr im Zusammenhang mit geltendem Recht zu lesen. Das durch einen Programmcode Geschriebene kann also etwa gegen geltendes Recht verstoßen und damit rechtlich unwirksam sein.
So stellt sich bereits die Frage, ob es sich bei dem Smart Contract um Allgemeine Geschäftsbedingungen handelt, welche bereits aufgrund der abstrakten Programmiersprache überraschend (und damit unwirksam) sein könnten. Zum anderen sind bei einer Vertragsauslegung nach deutschem Recht §§ 133, 157 BGB maßgeblich, wonach Lücken im Vertrag nach dem objektiven Empfängerhorizont auszulegen sind.
Mit der Erörterung derlei „juristischer Spitzfindigkeiten“ hat sich das Crowdfunding-Unternehmen TheDAO jedoch gar nicht erst aufgehalten. Vielmehr hat es die von dem DAO-Hack Geschädigten darüber abstimmen lassen, ob die Plattform TheDAO so umprogrammiert werden soll, dass die Ausnutzung der Programmlücke rückgängig gemacht wird (sog. hard fork). Wenig überraschend fand dieser Vorschlag die Zustimmung der meisten Geschädigten.
Einer der TheDAO-Mitgründer formulierte dieses Ergebnis positivistisch mit: „Wir haben gerade unseren obersten Gerichtshof gefunden – die Community″. Man könnte es auch negativ mit „Wir haben Selbstjustiz geübt“ formulieren.
Es bleibt mit Spannung abzuwarten, ob das von TheDAO gewählte Vorgehen in vergleichbaren zukünftigen Fällen Schule machen wird. Kritiker weisen zurecht darauf hin, dass durch das gewählte Vorgehen letztlich das Vertrauen in den Smart Contract unterminiert wird. Folgt man dieser Auffassung, so bedeutet dies keineswegs, dass einem Missbrauch von fehlerhaften Smart Contracts zukünftig Tür und Tor geöffnet werden muss. Denkbar ist vielmehr, dass in die Smart Contracts bereits Regelungen für eine gerichtliche bzw. außergerichtliche Streitbeilegung „einprogrammiert“ werden (Schiedsstelle).
Smart Contracts – Neue Herausforderungen für das Recht
Die weitere Entwicklung von Smart Contracts steht nicht nur vor technischen Herausforderungen, sondern hängt auch von der Lösung der damit im Zusammenhang stehenden rechtlichen Fragen ab. Dies betrifft insbesondere Themenkomplexe im Bereich des Daten- und Verbraucherschutzrechts, des Wettbewerbs- und Kartellrechts sowie Fragen der Haftung für (fehlerhaft programmierte) Smart Contracts.
Doch damit nicht genug: Geht man davon aus, dass die Programmierung von Smart Contracts eine Rechtsdienstleistung im Sinne des Rechtsdienstleistungsgesetzes darstellt, so stellt sich auch die Frage, ob und in welchem Umfang Programmierer derartige Smart Contracts ohne anwaltliche Unterstützung erstellen dürfen.
Sehen Sie auch das Video aus der Edge Reihe zum Thema „Ersetzen Smart Contracts bald den Anwalt?„.