Selbstausführende Verträge kommen ohne Anwältinnen, Notare und Banken aus – und funktionieren auch dann, wenn die Vertragspartner:innen einander gar nicht kennen. Warum, wo und wie Du Smart Contracts trotzdem vertrauensvoll abschließen kannst, das erklärt Software-Engineer Kevin Riedl in dieser Episode des DigitalStrategen.
Im Gespräch mit Mario Eckmaier liefert der Smart-Contract-Pionier nicht nur eine verständliche Erklärung von Blockchains. Er gibt auch Antworten auf Fragen wie:
- Wo können Smart Contracts schon heute sinnvoll eingesetzt werden?
- Was versteht man unter einem Konsens-Mechanismus?
- Können Smart Contracts reguläre Verträge ersetzen?
- Wie unterscheiden sich Ethereum, Solana und Bitcoin voneinander?
- Was bedeutet DAO?
- (Wie) können eventuelle Codingfehler korrigiert werden?
- Worin besteht das Blockchain-Trilemma?
- Welche Bedeutung werden Derivate und Multichain-Ansätze in naher Zukunft haben?
Jetzt Episode anhören: Spotify | Apple Podcasts
Blockchains – die Grundlage für Smart Contracts
Selbstausführende Verträge sind genau eigentlich nur ein Werkzeug. Die zugrundeliegende Infrastruktur ist eine Blockchain. Auf dieser legen werden mittels Smart Contract Regeln festgelegt, die dann von der Blockchain selbständig ausgeführt werden. Es gibt keine zentrale Autoritätsinstanz mehr, das Vertrauen und die Kontrolle werden auf alle Partizipant:innen aufgeteilt.
Darin bestehe der große Unterschied zu „regulären“ Verträgen, meint Kevin Riedl: „Derzeit muss ich vielen Akteuren vertrauen, wenn ich ein Geschäft abwickeln will: dem Verkäufer, dem Zahlungsanbieter, der Bank, etc. Smart Contracts hingegen werden von der Blockchain von selbst ausgeführt – auf Basis der vorher deponierten Codes, die dann aber auch nur sehr bedingt abänderbar sind.“
Konkrete Use Cases
Nicht alle Produkte können sinnvoll in einer Blockchain abgebildet werden, meint Riedl. Use Cases, die bisher im Fokus standen, seien das Supply-Chain-Management, die Tokenisierung von Assets in der Immobilienbranche oder NFT-Kunstwerke.
Als neue sinnvolle Anwendungsmöglichkeiten für Smart Contracts nennt der Experte
- Loyalty-Programme, wie z. B. bei Starbucks oder der NBA, wo versucht werde, Kund:innen bzw. Fans mittels NFTs ans Unternehmen zu binden.
- Investmentfonds: Mit Venture Capitalists könnten Private für alle Teilnehmer:innen transparent mitinvestieren.
- Versicherungen: Bei Eintritt von nachvollziehbaren Ereignissen (z. B. Flugausfall) wird die Versicherungssumme automatisch ausbezahlt.
Blockchains und die Technologie dahinter
Aus den vielen verschiedenen Ansätzen zur Entwickung von Blockchains hebt Riedl vor allem zwei zentrale hervor:
- den Prove of Work (z. B. Bitcoin) und
- den Prove of Stake (z. B. Ethereum)
Beide Ansätze basieren auf dem sogenannten Konsensmechanismus. „Das ist so etwas wie ein Wahlsystem zwischen Computern“, erklärt Kevin Riedl. „Alle Netzwerkteilnehmer haben eine mehr oder weniger vollständige Kopie der Blockchain, auf der alle Transaktionen gelistet sind und nachvollzogen werden können. Damit kontrollieren sich die Beteiligten gegenseitig.“
Beim Prove of Stake funktioniert diese Verifizierung über die Menge des Besitzes, beim Prove of Work über mathematische Kalkulationen.
Die rechtliche Situation
Selbstverständlich dürfen nationale und internationale Gesetze durch Smart Contracts nicht ausgehebelt werden. Der allgemein gültige Rechtsrahmen gilt auch für selbstausführende Verträge.
Diese werden die regulären Verträge nicht vollständig ersetzen, ist Kevin Riedl überzeugt: „Es braucht in der Rechtssprechung einen gewissen Interpretationsrahmen, damit Hausverstand und situationsgezogenes Wissen mitberücksichtigt werden können. Bei Smart Contracts ist das jedoch nicht so leicht möglich: Hier gibt es sehr spezifische und exakte Regeln, die nur schwer abzuändern sind.“
Das ABC der Smart-Contract-Umsetzung
Aus diesem Grund dürfe bei einem Smart-Contract-Projekt nicht einfach losgecodet werden, mahnt Riedl. In einem ersten Schritt müsse man sich die folgenden Fragen stellen:
- Ist die Blockchain das richtige Tool?
Braucht es wirklich einen Smart Contract oder kann das Projekt auch auf dem zentralen Backend bzw. mit Hilfe eines Serviceproviders durchgeführt werden? - Welche konkreten Anforderungen gibt es?
Diese zu klären (von Kunde- und Entwicklerseite) ist deshalb so wichtig, weil spätere Änderungen nur sehr schwer durchzuführen sind. Danach ist zu entscheiden, mit welchen Methoden diese Anforderungen erfüllt werden können:
a) Low-Code-Solution: Mit Hilfe von Smart-Contract-Baukästen können Verträge auch ohne Entwickler:innen und daher kostengünstiger durchgeführt werden.
b) durch Beauftragung eines Smart-Contract-Entwicklers bzw. einer -Entwicklerin
c) auf dem NFT-Marktplatz: Wenn z. B. eine Künstlerin ein digitales Kunstwerk schaffen will, kann sie hier einen simplen NFT selbst mittels Formular erstellen. - Testgetriebene Entwicklung: Mit jeder Zeile Code sollten automatisch Tests geschrieben werden. Damit wird sichergestellt, dass die Regeln auch funktionieren (Security-First-Mindset)
Fehlerkorrektur
„Was liegt, das pickt.“ Dieser Spruch aus dem Kartenspiel trifft auch auf Smart Contracts zu – zumindest zum überwiegenden Teil. Wenn Codes kaum mehr veränderbar sind, wie geht man dann mit Bugs um? Smart-Contract-Experte Riedl meint dazu:
- Sehr viel Kommunikation betreiben (Anforderungsanalyse, s.o.)
- Prävention durch laufendes Testen beim Coden (s.o.)
Sollten trotz aller Vorsicht Bugs auftauchen, gebe es verschiedene Ansätze, sie zu fixen: Eine sehr, sehr seltene Möglichkeit bestehe darin, die Blockchain zu kopieren und die Kopie zu reparieren. Das kommt laut Riedl aber nur bei sehr großen Projekten vor, in denen viel Geld steckt und wo dieTeilnehmer:innen großes Interesse daran haben, dass die Blockchain funktioniert.
Zu den realistischeren Varianten zählen:
- Im Smart Contract wurden Regeln eingebaut, sodass dass man verschiedene Parameter verändern kann.
- Es gibt die Möglichkeit, Regeln selbst upzudaten.
- Man programmiert einen neuen Smart Contract und informiert alle Teilnehmer:innen darüber, dass sie ab sofort nur mehr diesen benützen sollen.
DAO = Dezentrale Autonome Organisation
Darunter verstehe man Smart Contracts, die ein Wahlsystem abbilden. Es werden gewisse Handlungen – nachvollziehbar für jede:n Teilnehmer:in – gemäß einer Wenn-dann-Logik eingespeichert.
„DAOs machen z. B. in Unternehmen Sinn, weil sie eine unkomplizierte Partizipation ermöglichen“, meint Kevin Riedl. „Sie funktionieren mit Tokens, die austauschbar sein können oder nicht. Man kann auch die Stimmgewichtung an den Wert der Token anpassen.“
Darüber hinaus können DAOs auch dazu verwendet werden, potenzielle Kundinnen, Lieferanten oder Smart-Contract-Fans zu involvieren und mitentscheiden zu lassen.
Blockchains: Single Purpose oder General Purpose?
Warum Smart Contracts nicht auf der Bitcoin-Blockchain, sondern in vielen Fällen auf der Ethereum-Blockchain stattfinden, hat vor allem technische Gründe, erklärt Kevin Riedl: „Single-Purpose-Blockchains wie Bitcoin verfügen nur über eine limitierte Funktionalität, sehr komplexe Codes können damit auf dieser Blockchain nicht oder nur mit überproportional großem Aufwand ausgeführt werden. Dafür braucht es General-Purpose-Blockchains wie Ethereum, Solana oder Cardano.“
Die Grenzen von Smart Contracts …
Jedes Netzwerk habe seine eigenen speziellen Features in Bezug auf Smart Contracts. Diese bestimmen auch die Vor- und Nachteile.
Auf Ethereum, der größten Smart-Contract-Plattform, sei bereits sehr vieles möglich: Es gebe dezentrale Börsen, auf denen Tokens ohne direkte Intermediäre ge- und verkauft werden oder Geld verliehen wird. „Ihre vielfältigen Möglichkeiten werden nur durch die Technik limitiert“, meint Riedl: „Sie verzeihen nicht alles, daher müssen die Smart Contracts wirklich optimiert sein.“
Eine weitere Limitation liegt laut Riedl darin, dass Smart Contracts nicht unbedingt einen Internet-Zugang haben: „Es handelt sich dabei um isolierte Programme, die meist nur einen Zugriff auf andere Smart Contracts auf der gleichen Blockchain erlauben. Daher muss man oft lange Wartezeiten in Kauf nehmen, um Informationen zu erhalten.“
… und ihre Zukunft
Drei Bereiche werden die zukünftige Entwicklung von Smart Contracts bestimmen, meint der Software-Engineer:
- Die Kommunikation zwischen unterschiedlichen Blockchains
Dieser Multichain-Gedanke funktioniert zwar bereits, ist aber noch nicht ausgereift und es wird derzeit viel in die Forschung und Entwicklung investiert. - Das Blockchain-Trilemma
Dezentralisierung, Skalierbarkeit und Sicherheit – keine Blockchain kann alle drei Bereiche vollständig abdecken. Jede konzentriert sich auf ein anderes Thema, daher braucht es auch – je nach Anwendungsgebiet – verschiedene Blockchains. - Derivate
Diese komplexe Finanzprodukte werden in den kommenden ein bis zwei Jahren mit Sicherzeit ein sehr großes Thema im Bereich der Smart Contracts sein.
Über Kevin Riedl
Kevin Riedl ist Software-Engineer, selbständiger Unternehmer und Podcaster. Er beschäftigt sich seit Jahren mit Smart Contracts und gilt als ausgewiesener Experte – nicht zuletzt aufgrund seiner Mitarbeit in unterschiedlichen nationalen und internationalen Projekten zu selbstausführenden Verträgen.
Kevin Riedl auf LinkedIn: https://www.linkedin.com/in/wsdt/