Smart Contracts

Ein Smart Contract ist ein Vertrag der automatisch bei bestimmten Ereignissen eine Aktion auslöst. Also eine „Wenn – Dann“ Funktion. Smart Contracts sind ein Stück Programmcode und auf der Blockchain gespeichert. Einmal entwickelt sind sie also genau so unveränderlich wie alles andere in der Blockchain. Smart Contracts können auch Geld speichern oder bestimmte Funktionen ausführen.

Vergleich mit einem Zigarettenautomat

Ein Smart Contract in der nicht virtuellen Welt würde beispielsweise wie ein Zigarettenautomat funktionieren. Wenn ich genug Geld hineinwerfe und eine Zigarettenmarke wähle und diese Marke verfügbar ist erhalte ich die Zigarettenpackung.  Das Erhalten der Zigaretten ist also an drei Bedingungen geknüpft.

  1. Ich habe genug Geld bezahlt
  2. Ich habe eine Marke ausgewählt
  3. Zigaretten von der Marke sind noch verfügbar

Nur wenn alle Bedingungen zutreffen erhalten ich die Zigaretten. Der Vorteil eines Zigarettenautomaten ist es, dass es keine Person mehr braucht um Zigaretten zu kaufe.

Beispiel Fahrradkauf

Ein Beispiel bei dem ein Smart Contract eingesetzt werden könnte es der Kauf von Waren im Internet.

Ich verkaufe dir über Ebay ein Fahrrad für 500€.

Bisheriges Vorgehen: Ich überweise dir das Geld in dem Vertrauen, dass du mir das Fahrrad schickst, sobald das Geld bei dir angekommen ist. Dabei muss ich aber auch meine Bank vertrauen, dass diese die richtige Menge Geld an das richtige Konto schickt.

Mit Smart Contracts: Ich überweise das Geld in einen Smart Contract. In diesem kann das Geld gespeichert werden bis eine bestimmte Bedingung eintritt. Ich kann das Geld jetzt nicht einfach wieder aus dem Smart Contract herausnehmen. Damit weis du, dass ich das Geld gezahlt habe und du kannst die Ware ohne Risiko losschicken. Kommt nun der Postbote mit dem Fahrrad bei mir an unterschreibe ich, dass Fahrrad erhalten zu haben. In diesem Fall teilt der Paketdienstleister dem Smart Contract mit „Das Paket wurde erfolgreich zugestellt und abgenommen“ und du bekommst automatisch das Geld aus dem Smart Contract auf dein Konto überweisen.

Was würde nun passieren, wenn du mir das Paket nie schickst? Mein Geld ist ja in dem Smart Contract gefangen. Hierfür gibt es zwei Möglichkeiten: Wir einigen uns vorher auf eine bestimmte Zeit bspw. 14 Tage. Erhalte ich innheralb der 14 Tage das Fahrrad nicht geht das Geld automatisch zurück auf mein Konto. Die zweite Möglichkeit ist, dass wir uns BEIDE einigen vom Kauf zurückzutreten. Es müssen zwingend beiden Parteien zustimmen. Dann geht das Geld auch zurück an mich.

Risiken

Entwickler müssen die Smart Contracts extrem gut testen bevor sie veröffentlicht werden. Das sie unveränderlich sind kann man Fehler im Code nicht mehr korrigieren. Solch ein Fehler hat bspw. 2016 bei Ethereum zum Diebstahl von Ether im Wert von etwa 50 Mio. Dollar geführt. Zwei Zeilen Code waren vertauscht was es Angreifern erlaubt hat das in dem Smart Contract gespeicherte Geld komplett ihr eigenes Konto auszubezahlen. Wenn dich dieser Hack interessiert findet hier mehr Infos.

Teilen

Schreibe einen Kommentar