Kurz erklärt: Ein Smart Contract ist ein Programm, das auf einer Blockchain gespeichert ist und bei Aufruf von allen Teilnehmern nach denselben Regeln ausgeführt wird. Der Begriff ist irreführend: Es handelt sich weder um einen Vertrag im Rechtssinne noch um etwas besonders Intelligentes, sondern um Code, der deterministisch abläuft und dessen Ergebnis Teil des Registers wird. Auf Ethereum und vergleichbaren Netzwerken bilden Smart Contracts die Grundlage für Token, Handelsplätze und Kreditprotokolle.
Funktionsweise
Ein Smart Contract wird einmalig im Netzwerk hinterlegt und erhält eine eigene Adresse. Er hat keinen privaten Schlüssel und wird nicht von selbst aktiv — er reagiert ausschließlich auf Aufrufe.
Ruft jemand eine Funktion auf, führen sämtliche Teilnehmer den Code mit denselben Eingaben aus und gelangen zwangsläufig zum selben Ergebnis. Diese Determiniertheit ist zwingend: Gäbe es Zufälligkeit oder Abhängigkeiten von der Umgebung, könnten die Teilnehmer sich nicht auf einen gemeinsamen Zustand einigen.
Daraus folgt eine wesentliche Einschränkung, die häufig übersehen wird: Ein Smart Contract kann nicht auf Informationen außerhalb der Blockchain zugreifen. Er kennt keine Kurse, keine Wetterdaten und keine Vertragserfüllung in der realen Welt. Wo solche Angaben benötigt werden, müssen sie von außen eingespielt werden — und genau diese Einspeisung ist eine bekannte Schwachstelle.
Ebenso wenig kann ein Smart Contract Vermögenswerte einziehen, die ihm nicht zuvor freigegeben wurden. Jede Bewegung setzt eine Berechtigung voraus — was erklärt, warum Drainer auf erschlichene Freigaben angewiesen sind.
Kein Vertrag im Rechtssinne
Die Bezeichnung führt regelmäßig zu Fehlvorstellungen, die in der Beratung auszuräumen sind.
Ein Vertrag im Rechtssinne entsteht durch übereinstimmende Willenserklärungen. Ein Smart Contract ist demgegenüber ein Ausführungsmechanismus — er kann einen Vertrag abwickeln, begründet ihn aber nicht.
Praktisch bedeutet das: Läuft der Code anders als von den Beteiligten gewollt, hebt das die rechtliche Lage nicht auf. Wer aufgrund eines Programmierfehlers Vermögenswerte erlangt, hat sie ohne Rechtsgrund erlangt — dass der Code das zuließ, ist keine Rechtfertigung. Die verbreitete Formel, wonach der Code selbst das Recht sei, ist eine Haltung, keine Rechtslage.
Umgekehrt gilt: Ein Anspruch nützt wenig, wenn er nicht durchsetzbar ist. Bei anonymen Gegenparteien und unwiderruflichen Transaktionen ist die praktische Durchsetzung die eigentliche Hürde — nicht die rechtliche Bewertung. Siehe Asset Recovery.
Unveränderlichkeit und Änderbarkeit
Ein hinterlegter Smart Contract kann grundsätzlich nicht geändert werden. Das ist als Eigenschaft gedacht: Die Beteiligten sollen sich darauf verlassen können, dass die Regeln gleich bleiben.
In der Praxis wird diese Eigenschaft häufig aufgeweicht. Verbreitet sind Konstruktionen, bei denen die aufgerufene Adresse lediglich auf einen austauschbaren Programmteil verweist. Der Betreiber kann diesen Verweis ändern und damit das Verhalten nachträglich vollständig umstellen.
Für die Risikobewertung ist das zentral. Ein geprüfter Vertrag sagt nichts über sein künftiges Verhalten aus, wenn er austauschbar gestaltet ist. Wer die Änderungsbefugnis hat, kann eine Verkaufssperre einführen, eine unbegrenzte Ausgabefunktion aktivieren oder Mittel entnehmen.
Die entscheidende Prüffrage lautet deshalb nicht „wurde der Vertrag geprüft“, sondern „wer kann ihn ändern“. Beide Angaben sind öffentlich einsehbar.
Bei einem Rug Pull ist genau diese Befugnis häufig das Werkzeug.
Typische Schwachstellen
Wiedereintritt. Ein Vertrag ruft einen anderen auf, bevor er seinen eigenen Zustand aktualisiert hat. Der aufgerufene Vertrag ruft zurück und findet den alten Zustand vor — eine Auszahlung kann dadurch mehrfach erfolgen. Dieser Fehlertyp ist seit Jahren bekannt und tritt gleichwohl weiter auf.
Fehlende Zugriffsprüfung. Funktionen, die nur dem Betreiber offenstehen sollten, sind nicht ausreichend geschützt. Häufig Folge eines Versehens bei der Veröffentlichung.
Manipulation der Preisquelle. Protokolle, die auf einen einzelnen Handelsplatz als Preisangabe abstellen, lassen sich durch kurzfristige Marktbeeinflussung zu falschen Bewertungen verleiten — etwa um überhöhte Kredite zu erlangen.
Rechenfehler. Fehler bei Rundung oder Skalierung, insbesondere bei Token mit unterschiedlicher Nachkommastellenzahl.
Beabsichtigte Fallen. Nicht jeder Schaden beruht auf einem Fehler. Verträge, die einen Verkauf für normale Inhaber sperren, sind bewusst so gebaut — siehe Krypto-Scam.
Prüfberichte und ihre Grenzen
Vor der Veröffentlichung lassen viele Projekte ihren Code prüfen. Ein solcher Bericht ist ein Qualitätsmerkmal, wird in seiner Aussagekraft aber regelmäßig überschätzt.
Er bezieht sich auf einen bestimmten Stand. Wird der Vertrag danach geändert — oder ist er austauschbar gestaltet —, sagt der Bericht über den aktuellen Zustand nichts aus.
Er ist keine Garantie. Auch geprüfte Verträge wurden erfolgreich angegriffen. Eine Prüfung senkt die Wahrscheinlichkeit von Fehlern, schließt sie nicht aus.
Er sagt nichts über die Absicht. Ein Vertrag kann fehlerfrei sein und dennoch eine Falle enthalten. Prüfberichte bewerten die technische Korrektheit, nicht die Redlichkeit des Vorhabens.
Er kann gefälscht sein. Verbreitet sind erfundene Berichte und solche, die sich auf ein anderes Projekt beziehen. Die Echtheit lässt sich beim genannten Prüfer verifizieren.
Für die Prüfung eines Angebots ist der Bericht deshalb nur einer von mehreren Punkten — neben Änderungsbefugnis, Liquiditätskontrolle und Tokenverteilung.
Forensische Auswertung
Für die Untersuchung sind Smart Contracts eine ungewöhnlich gute Datenquelle.
Der Code ist einsehbar. Der ausgeführte Programmcode liegt in der Blockchain; bei veröffentlichtem Quelltext ist er unmittelbar lesbar. Ein Ablauf lässt sich damit exakt rekonstruieren — anders als bei geschlossener Software eines Unternehmens.
Jeder Aufruf ist protokolliert. Sichtbar ist nicht nur, dass ein Betrag bewegt wurde, sondern welche Funktion mit welchen Parametern aufgerufen wurde. Diese Zwecktransparenz fehlt bei Bitcoin vollständig.
Freigaben sind dauerhaft nachvollziehbar. Bei einem Drainer-Vorfall lässt sich die auslösende Signatur rekonstruieren, auch wenn der Abfluss erst Wochen später erfolgte.
Die Änderungshistorie ist erschließbar. Bei austauschbaren Konstruktionen ist dokumentiert, wann der Verweis geändert wurde und durch wen. Für die Abgrenzung zwischen Fehler und Absicht ist das häufig der entscheidende Beleg.
In einem Gutachten sind diese Feststellungen belastbar, weil sie unmittelbar aus dem Register folgen — im Unterschied zu Aussagen über Cluster oder Attribution, die auf Heuristiken beruhen.
Häufige Fragen
Ist ein Smart Contract ein Vertrag im Rechtssinne?
Nein. Er ist ein Ausführungsmechanismus, der einen Vertrag abwickeln, ihn aber nicht begründen kann. Läuft der Code anders als gewollt, hebt das die rechtliche Lage nicht auf — wer durch einen Programmierfehler Vermögenswerte erlangt, hat sie ohne Rechtsgrund erlangt.
Kann ein Smart Contract geändert werden?
Grundsätzlich nicht — in der Praxis aber häufig doch. Verbreitet sind Konstruktionen, bei denen die aufgerufene Adresse auf einen austauschbaren Programmteil verweist. Wer diese Befugnis hat, kann das Verhalten nachträglich vollständig umstellen.
Was ist die wichtigste Prüffrage vor einer Investition?
Nicht ob der Vertrag geprüft wurde, sondern wer ihn ändern kann. Beide Angaben sind öffentlich einsehbar. Ein geprüfter, aber austauschbarer Vertrag sagt über sein künftiges Verhalten nichts aus.
Wie zuverlässig ist ein Prüfbericht?
Er bezieht sich auf einen bestimmten Stand, ist keine Garantie, sagt nichts über die Redlichkeit des Vorhabens und wird häufig gefälscht. Die Echtheit lässt sich beim genannten Prüfer verifizieren. Er ist einer von mehreren Prüfpunkten, nicht der einzige.
Kann ein Smart Contract auf meine Wallet zugreifen?
Nur soweit Sie es freigegeben haben. Ohne erteilte Berechtigung kann er keine Vermögenswerte einziehen. Genau deshalb sind Wallet-Drainer auf erschlichene Signaturen angewiesen.
Warum kennt ein Smart Contract keine Kurse oder Außenwelt-Daten?
Weil die Ausführung deterministisch sein muss — alle Teilnehmer müssen zum selben Ergebnis kommen. Angaben von außen müssen deshalb eingespielt werden, und genau diese Einspeisung ist eine bekannte Schwachstelle.
Was macht Smart Contracts forensisch wertvoll?
Die Zwecktransparenz. Protokolliert wird nicht nur, dass ein Betrag bewegt wurde, sondern welche Funktion mit welchen Parametern aufgerufen wurde. Bei austauschbaren Verträgen ist zudem dokumentiert, wann und durch wen der Verweis geändert wurde.
Zusammenfassung
Ein Smart Contract ist ein auf der Blockchain gespeichertes Programm, das deterministisch ausgeführt wird und nur auf Aufrufe reagiert. Er ist kein Vertrag im Rechtssinne, sondern ein Ausführungsmechanismus — ein fehlerhafter Ablauf beseitigt die rechtliche Lage nicht. Die vielbeschworene Unveränderlichkeit wird in der Praxis häufig über austauschbare Konstruktionen aufgeweicht; die entscheidende Prüffrage lautet deshalb, wer den Vertrag ändern kann. Typische Schwachstellen sind Wiedereintritt, fehlende Zugriffsprüfung und Manipulation von Preisquellen. Forensisch sind Smart Contracts wertvoll, weil jeder Aufruf mit Zweck und Parametern protokolliert ist.
Weiterführende Quellen
- Ethereum — Smart Contracts (Entwicklerdokumentation): ethereum.org
- Ethereum — Entwicklerdokumentation: ethereum.org
- NIST — National Vulnerability Database: nvd.nist.gov
- NIST — Computer Security Resource Center Glossary: csrc.nist.gov
- BSI — Blockchain sicher gestalten: www.bsi.bund.de
- Verordnung (EU) 2023/1114 über Märkte für Kryptowerte (MiCA), EUR-Lex: eur-lex.europa.eu
- § 263 StGB — Betrug, Gesetze im Internet: www.gesetze-im-internet.de