Smart Contracts: Zwischen Algorithmus und Vertrag

Smart Contracts nach Komplexitätsgrad. Grafik: PricewaterhouseCoopers
Wo liegen die Probleme von Smart Contracts? Eine Tagung hat sich mit den juristische Untiefen der technischen Lösung befasst.
 
Man habe ein schillerndes Konzept auf das Tagungs-Programm geschrieben, das niemand wirklich durchschaue, sagte Hans Rudolf Trüeb, Anwalt und Rechts-Professor, in seiner Eröffnungsrede an der Tagung zu Smart Contracts. Offenbar hat das funktioniert: An die Veranstaltung kamen rund 150 Personen, vornehmlich aus dem juristischen Bereich, ins Lake Side Casino am Zürichhorn. An der Tagung des "Europainstituts an der Universität Zürich" könne vielleicht der Nebel etwas gelichtet werden, ohne die Faszination zu zerstören, so Trüeb weiter.
 
Tatsächlich hat der Smart Contract eine beeindruckende Karriere als Buzzword hinter sich und man müsste erstmal klären, was man darunter juristisch aber auch technisch zu verstehen hat. Oder wie es Referent Rolf Weber, Professor für Recht, formulierte: "Smart Contract hat sich zum Sammelbegriff entwickelt". Was also sind Smart Contracts? Unser Gast-Autor Christoph Jaggi hat dazu einen ausführlichen Hintergrundartikel geschrieben. Darum bloss in der gebotenen Kürze, bevor auf juristische Probleme eingegangen wird.
 
Was ist ein Smart Contract?
Ein Smart Contract ist ein Programm, das unter vordefinierten Ereignissen automatisch eine rechtlich relevante Handlung vornimmt, wie etwa die Verschiebung von Vermögenswerten. Dies kann man am Beispiel eines Leasingvertrags für ein Auto illustrieren: Ein digital prüfbares Ereignis tritt ein; der Autokäufer bezahlt eine erste Rate. Der Programmcode münzt das Ereignis automatisch in eine rechtlich relevante Handlung um; der Bordcomputer des Autos stellt die Betriebsbereitschaft des Fahrzeugs her. So simpel stellt sich das Ganze erstmal dar, zumal sich die meisten Smart Contracts noch auf digital repräsentierte Vermögenswerte beziehen und etwa Transfers von Bitcoins auslösen. Dies ist die einfachste Form eines Smart Contracts. Grundsätzlich kann dieser mit einer beliebigen Anzahl Funktionen und Bedingungen ausgestattet werden; bis hin zu so genannten Decentralized Autonomous Organisations (DAO): dezentrale, demokratische Fonds.
 
Die Smart Contracts werden auf einer Blockchain ausgeführt und gespeichert. Dabei handelt es sich um eine unveränderliche, chronologische Datenbank. Diese ist in einem Netzwerk von Akteuren geteilt und wird durch Konsens und nicht durch eine Einzelperson gesichert; jede Transaktion wird in den geteilten "Geschäftsbüchern" – den sogenannten Distributed Ledgers – gespeichert. Transaktionen können nicht rückgängig gemacht und von Dritten nicht aufgehalten werden.
 
Die Vorteile eines solchen Smart Contracts benannte Referent Florian Glatz, Rechtsanwalt bei blockchain.laywer: Niedrige Transaktionskosten, vertrauenswürdige Umgebung, standardisierte Verträge sowie hohe Automatisierung. Das klingt eigentlich gut. In den Referaten an der Tagung wurden aber auch viele Probleme deutlich.
 
Juristische Probleme der Smart Contracts
Ein Smart Contract hat keinen abgesicherten Zugang zu Informationen ausserhalb der Blockchain. Zahlungen etwa mit Bitcoins oder Ether innerhalb des Systems können automatisch erfasst und verarbeitet werden. Wenn aber eine Vertragsbedingung etwa die Verschiebung von physischen Waren umfasst oder bei einer Versicherung gar ein Schadensfall erfasst werden muss, wird es verzwickter. Zwar kann man hier Sensoren und Chips einsetzen, aber diese Schnittstellen sind nicht innerhalb der Blockchain abgesichert, der Contract weiss schlicht nicht, ob die über den sogenannten Orakel-Service eingespeisten Informationen korrekt sind. Ausserdem bieten die Schnittstellen Angriffsfläche für Kriminelle. "Wer haftet für fehlerhafte Schnittstellen, wer richtet sie ein?" fragte Rolf Weber auf dem Podium. Es müsste wohl sowas wie Datenprovider geben, erklärt Sebastian Bürgel, CTO von Validity Labs. Diese wären für die Korrektheit der eingespielten Daten zuständig.
 
Die Unveränderlichkeit des Vertrags passe zudem nicht zur dynamischen Entwicklung der Welt und er hätte keine inhärenten Konfliktlösungsmechanismen, sagte Florian Glatz. Deshalb müsse man so etwas wie einen Konfliktlösungs-Mechanismus einbauen. Das könnte etwa die Kombination von Smart Contract und schriftlichem Vertrag sein – ein sogenannter Smart Legal Contract mit gegenseitiger Bezugnahme. Glatz arbeitet unter anderem an einer Rechtsprogrammiersprache, die es ermöglichen soll bei Verfassung eines entsprechenden Codes automatisch eine Version in natürlicher Sprache und eine auf der Blockchain ausführbare Version zu erstellen. Aber das sei noch Zukunftsmusik, so Glatz.
 
Ein damit verwandtes Problem führte Luzius Meisser ins Feld: Kein Programm und auch kein Vertrag sei perfekt, resümiert der CEO von Meisser Economics. Gerade bei komplexeren Smart Contracts brauche es deshalb Schnittstellen für Schiedsstellen. Wer ist überhaupt schuld, wenn etwas nicht funktioniert? Der Programmierer? Jener, der den Contract auf die Blockchain gestellt hat? Jemand, der eine "Schwachstelle" ausnützt? Als Beispiel diente der bekannte Fall des Investitionsfonds "The DAO", dem rund 50 Millionen Dollar in Ether "geklaut" wurde. Jemand hatte eine Lücke im Code genutzt, um 3,6 Millionen Ether abzuzweigen. Das führte zu hitzigen Diskussionen in der Community und schliesslich zu einem sogenannten Hard-Fork: Einer Aufteilung der Blockchain, die nun beide auf unterschiedlichen Protokollen basieren. Einige, die beim alten Protokoll geblieben sind, haben argumentiert, dass der Diebstahl keiner sei, weil der Dieb sich nur den Code zunutze gemacht habe und dieser schliesslich der Vertrag sei.
 
Es braucht wohl weiterhin den einen oder anderen Juristen
Auf dem Feld des Regulatorischen gibt es ebenfalls einige Problemstellungen: Etwa erzwingen Anti-Geldwäsche-Gesetze oder auch die Bekämpfung des Terrors die Identitätsfeststellung der Wirtschaftsteilnehmer, was bei Verträgen in der Blockchain in der Regel nicht der Fall ist.
 
Rolf Weber nannte weitere im engen Sinne juristische Probleme: Wenn die Programmiersprache als Vertragssprache nicht allen Vertragsparteien verständlich sei, widerspreche sie dem Prinzip dass diese Kenntnis vom Inhalt haben müssen. Zudem sei bei einem solchen Vertrag nicht sicher, ob den Parteien klar ist, wann und wie sie eine Willenserklärung abgegeben haben, was bei einem Vertrag notwendig ist.
 
Man sieht, das Konzept des Smart Contracts bringt neben den technischen Anforderungen einige Probleme mit sich, die nach Lösungen verlangen. Gerade wenn die Verträge komplexer werden braucht es wohl noch einige Zeit, Fehlschläge und kluge Lösungen, wenn sie denn überhaupt massenhaft praktikabel werden können – man denke etwa an Versicherungsabschlüsse oder an DAO. Alles in allem beruhigte Hans Rudolf Trüeb die versammelten Anwälte und erklärte: "Es bleibt ein weites Feld für talentierte Juristen". (Thomas Schwendener)