Der Begriff „Smart Contract“ ist technischen Ursprungs und kann als digitales Transaktionsprotokoll zusammengefasst werden, das sogenannte Wenn-Dann-Bedingungen nach einem „true or false“ System überprüft sowie Transaktionen sicher und automatisiert ausführt. Tritt demnach eine bestimmte Bedingung ein, so wird der Vertrag automatisiert durchgeführt (Bedingungseintritt und Folge). Dadurch stellt der Smart Contract die Abwicklung des ihm zugrunde liegenden Vertrags sicher. Ausschlaggebend für die Eigenschaft des Smart Contracts ist sein programmierter Code, welcher grundsätzlich unabänderlich, transparent und sicher ist. Der Smart Contract kann und wird ausführen, was in seinem Code im Sinne von Wenn-Dann-Bedingungen tatsächlich programmiert wurde – unabhängig davon, ob die jeweilige Ausführung gerechtfertigt ist oder nicht. Was nicht in dem Code vorgesehen ist, kann bei der Ausführung auch nicht berücksichtigt werden. Dies wird als das sogenannte Dogma „Code is Law“ bezeichnet, wonach der Code die einzige Regelungsgrundlage für die Abwicklung eines in einem Smart Contract virtualisierten Vertrags sein soll. Die für den Smart Contract kennzeichnende Selbstvollziehung ähnelt einer elektronischen Selbsthilfe, die das österreichische Recht so jedoch grundsätzlich nicht vorsieht.
Das mit diesem Dogma verbundene Dilemma lässt sich sehr gut an dem Beispiel eines Vertrags über einen Mietwagen demonstrieren, der mit einer automatischen Abschaltvorrichtung versehen ist, die den Motorstart bei fehlendem Zahlungseingang der Miete verhindert. Sollte der Mieter zulässigerweise mit einer Forderung gegen den Vermieter aufrechnen, sodass ein Zahlungsfluss gar nicht stattfindet, würde dies der Smart Contract – ohne entsprechende Programmierung als Wenn-Dann-Bedingung – nicht berücksichtigen können. Der Mieter würde dennoch von der Nutzung des Mietwagens ausgeschlossen werden, nachdem der vereinbarte Zahlungseingang nach einer „true or false“ Prüfung („Ist die Zahlung eingegangen oder nicht?“) durch den Smart Contract nicht erfolgt ist. Ein solcher Ausschluss würde zu einer erheblichen, ungerechtfertigten Benachteiligung des Mieters führen und stünde mit dem geltenden Recht nicht im Einklang. Eine Umgehung der Gesetze ist auch durch den Einsatz von Smart Contracts nicht zulässig. Es ist daher eindeutig, dass sich dieses Dogma nicht mit der österreichischen Rechtsordnung vereinbaren lässt.
In der Programmierung des Codes müssten daher – wie das obige Beispiel zeigt – die verschiedensten Varianten des Bedingungseintritts (im Sinne von Möglichkeiten der Erfüllung des Vertrags) vorgesehen sein, um die jeweilige Rechtslage bei der Ausführung berücksichtigen zu können. Allfällige Fehler oder Lücken im Code des Smart Contracts („Bugs“) könnten ungewollte Vermögensverschiebungen veranlassen oder sonstige nicht vorgesehene Folgen nach sich ziehen. Der Hype um den Smart Contract aufgrund seiner besonderen Eigenschaften ist vollkommen nachvollziehbar. Es ist jedoch zu empfehlen, die dem Smart Contract zugrunde liegenden konventionellen Verträge simpel zu halten. Begrifflichkeiten oder Regelungen, die einer „true or false“ Prüfung nicht zugänglich sind, sollten vermieden werden. Beispielsweise wird ein Smart Contract die Zahlung einer „angemessenen“ Vergütung nicht ausführen können, da die Höhe der Vergütung nicht konkretisiert wurde und einer Abwägung bedarf, die durch eine „true or false“ Prüfung nicht vorgenommen werden kann.
Die Wenn-Dann-Bedingungen des Smart Contracts müssen daher eindeutig aus dem Vertrag hervorgehen. Gesetzwidrige Programmierungen können zur Unwirksamkeit des Vertrages führen und somit die Rückabwicklung der durch den Smart Contract durchgeführten Transaktion zur Folge haben. Eine genaue Prüfung des jeweiligen Vertrags auf seine Verträglichkeit mit einer Umsetzung in der Blockchain durch Smart Contracts ist daher unerlässlich.