Smart Contracts
Was ist ein Smart Contract?
Ein Smart Contract ist ein Kontrakt, der sich selbstständig ausführt. Er wird durch ein Computerprogramm definiert, in dem die Vereinbarungen und die Ausführung des Kontrakts in unveränderlichem Code enthalten sind und auf einer Blockchain gespeichert werden.
Traditionelle Verträge werden zwischen zwei oder mehr Parteien geschlossen. Dabei geht es um den Austausch von Versprechen und/oder Dienstleistungen und diese Vereinbarung besteht oft aus mehreren Teilen. So kann beispielsweise ein Versprechen wie eine Geldzahlung gegen ein anderes Versprechen oder eine Dienstleistung ausgetauscht werden, oder eine Dienstleistung kann gegen eine Dienstleistung ausgetauscht werden.
Außerdem können Verträge viele Bedingungen enthalten, die den Austausch regeln, zum Beispiel: Wann muss der Austausch stattfinden? Sofort? Gibt es ein Ablaufdatum? Unter welchen Umständen wird der Vertrag ungültig? Genau diese Details sind der Grund, warum viele Verträge, wie zum Beispiel Darlehens- oder Arbeitsverträge, so lang und umfangreich sind.
Bei Smart Contracts bezieht sich der Begriff „smart“ lediglich darauf, dass dieser Vertrag durch ein Computerprogramm und nicht auf einem Stück Papier oder in einer anderen Form abgewickelt wird.
Der Begriff „Smart Contract“ – der in den 2020er Jahren allgegenwärtig ist – wurde in den 1990er Jahren von Nick Szabo geprägt, einem Juristen und Informatiker, der zu den frühen Befürwortern von Kryptowährungen gehörte.
In einem 1996 veröffentlichten Artikel definierte Szabo einen Smart Contract als „eine Reihe von digital festgelegten Versprechen, einschließlich der Protokolle, innerhalb derer die Parteien die anderen Versprechen erfüllen“.
Die Bedingungen von Smart Contracts werden in Form von „Wenn-Dann“-Bedingungen geschrieben, wie sie in der Computerprogrammierung üblich sind. Das beste Beispiel aus der realen Welt für eine „Wenn-Dann“-Funktion ist der von Nick Szabo selbst verwendete Vergleich mit einem Automaten.
Automaten sind ein tolles Beispiel, um die Funktionsweise von Smart Contracts zu verstehen. Wenn du 1 Euro einwirfst, gibt der Automat dir im Gegenzug einen Schokoriegel. Der gesamte Vorgang ist durch die Programmierung des Automaten vorbestimmt und läuft ohne menschliches oder institutionelles Eingreifen ab. Smart Contracts sollen Funktionen auf die gleiche Weise autonom und immer wieder ausführen, ohne dass ein Mensch dazwischen geschaltet werden muss.
Smart Contracts im Vergleich zu traditionellen Verträge
Denke an das letzte Mal, als du einen traditionellen Vertrag unterschrieben hast. Was wurde außer dem Papier und den beiden unterzeichnenden Parteien noch benötigt?
Rechtsanwälte sind oft unverzichtbar: Zuerst, um die Sprache des Vertrags zu formulieren, und dann, um sicherzustellen, dass er ordnungsgemäß ausgeführt wird. Wenn ein Vertrag verletzt wird, brauchst du oft einen Richter, einen Gerichtssaal und andere kostspielige Ressourcen. Bei großen Finanzgeschäften, wie dem Kauf eines Hauses, ist es üblich, ein Treuhandkonto zu verwenden. Dabei handelt es sich um einen Dritten, der Gelder einbehält, bis beide Parteien die vereinbarten Bedingungen erfüllen.
All diese Vermittler und Ressourcen, die für verbindliche Vereinbarungen erforderlich sind, verursachen Kosten. Ganz zu schweigen von dem Vertrauen, das du diesen Institutionen entgegenbringen musst, damit sie ihre Aufgaben gewissenhaft erfüllen. Darüber hinaus verbraucht jede in diesen Situationen verwendete Ressource auch Zeit, sodass die Bearbeitung von Verträgen Tage oder Wochen dauern kann.
Im Grunde genommen benötigen Smart Contracts nicht viele der gleichen Annahmen und Voraussetzungen, dank verschiedener Merkmale:
- Unveränderlich: Wenn ein Smart Contract geschrieben und ausgeführt wird, kann er nicht verändert werden und ist somit dauerhaft. Da Computer, die die Blockchain betreiben (sogenannte Nodes), eine identische Kopie des Kontrakts speichern, ist jede Änderung des Kontrakts ohne Konsens im Netzwerk unmöglich.
- Vertrauenslos: Jeder Smart Contract ist außerdem autark, d. h. er benötigt keine anderen Faktoren wie Anwälte und Finanzinstitute, um seine Funktionen auszuführen. Der Wegfall externer Einflüsse führt dazu, dass jedes Mal das gleiche Ergebnis erwartet werden kann, ohne dass ein externes Vertrauen erforderlich ist. Dadurch können selbst komplizierteste Transaktionen in Sekunden oder Minuten durchgeführt werden.
Da bei Smart Contracts die Mittelsmänner wegfallen, musst du keine Drittparteien bezahlen, ihnen vertrauen oder auf ihre Ausführung warten, was sie für manche zu einer attraktiveren Alternative zu traditionellen Verträgen macht.
Was sind Smart Contracts auf der Blockchain?
Smart Contracts sind das Herzstück der Blockchain-Technologie.
Bitcoin Smart Contracts sind für den Betrieb auf der Bitcoin-Blockchain vorgesehen, legen bestimmte Regeln für Transaktionen fest und zeichnen sie im öffentlichen Hauptbuch auf.
Im Gegensatz dazu wurden Ethereum Smart Contracts speziell entwickelt, um andere Smart Contracts (Programme oder dezentrale Anwendungen) zu unterstützen, die auf ihrer eigenen Blockchain ausgeführt werden. Diese Anwendungen werden in Programmiersprachen geschrieben, die speziell für das Verfassen von Kontrakten entwickelt wurden, wie Solidity und Vyper.
Nehmen wir zum Beispiel Golem (GNT), eine Plattform, die einen Marktplatz für Rechenleistung schafft. Der Smart Contract von Golem ermöglicht es jedem, gegen eine Gebühr Rechenressourcen aus der Community anzufordern. Sobald das Netzwerk die Zahlung des Anfragers und die Erledigung der Aufgaben durch den Anbieter bestätigt, sind die Bedingungen erfüllt und der Kontrakt wird ausgeführt: Der Anfrager erhält Rechenleistung von Benutzern, die ihre Ressourcen anbieten, und GNT wird automatisch von Anfragern an die Konten der Anbieter überwiesen. Werden die vorgegebenen Bedingungen nicht erfüllt, wird der Kontrakt nicht ausgeführt.
Einschränkungen von Smart Contracts:
- Subjektivität: Die Funktionalität von Smart Contracts ist durch den Code begrenzt. Lässt ein Kontrakt Spielraum für Interpretationen oder Flexibilität, wird die Programmierung schwierig.
- Änderungsaufwand: Weist der Code Fehler oder Sicherheitslücken auf, erfordert die Änderung des Kontrakts erheblichen Aufwand seitens der Community und die Zustimmung der Nodes des Netzwerks.
- Einbeziehung von Echtzeitdaten: Smart Contracts benötigen oft Echtzeitdaten, wie den Wert des US-Dollars, einen Aktienkurs oder den Standort eines Produkts, das weltweit verschickt wird, um ausgeführt zu werden. Während diese Informationen häufig von Dritten bereitgestellt werden, arbeitet die Oracle-Technologie (wie Chainlink oder Band Protocol) daran, die Informationen mithilfe von Daten außerhalb der Blockchain einzubringen.
Jetzt loslegen
Bist du bereit für den nächsten Schritt? Klicke auf die Schaltfläche unten, um dich für ein Kraken Konto zu registrieren und noch heute Smart Contract-Protokolle zu kaufen.
Die Zukunft von Smart Contracts
Die Entwicklungsmöglichkeiten von Smart Contracts, die der Blockchain-Technologie zugrunde liegen, werden von Entwicklern gerade erst erkundet.
Der Nutzen dieser Technologie wächst exponentiell und viele sehen Chancen in neuen Bereichen, in denen derzeit noch traditionelle Verträge den Ablauf von Transaktionen bestimmen.
Beispiele für potenzielle Einsatzbereiche sind: Hypotheken, digitales Identitätsmanagement, Lieferkettenlogistik, Börsenhandel und Wertpapiere, Zuweisungslisten für Organe/Transplantationen, Vermietung/Leasing von Immobilien und vieles mehr.