Blockchain & Technologie Leitfaden 6 von 6

Wie Sie einen Smart Contract prüfen, bevor Sie interagieren

Praktische Prüfungen, die auch Nicht-Entwickler vor der Genehmigung einer Transaktion vornehmen können — Verifizierungsstatus, privilegierte Funktionen, Freigabeumfang und Widerruf.

Illustration for: How to check a smart contract before you interact

Sie müssen keinen Code lesen können, um die meisten Contract-Katastrophen zu vermeiden. Die meisten Verluste entstehen durch eine kleine Zahl überprüfbarer Bedingungen.

1. Ist der Contract verifiziert?

Ein verifizierter Contract hat veröffentlichten Quellcode, den ein Block-Explorer bestätigt hat, dass er zum bereitgestellten Bytecode kompiliert. Unverifiziert bedeutet, dass außer dem Deployer niemand weiß, was er tut.

Behandeln Sie einen unverifizierten Contract als feindselig. Es gibt keinen legitimen Grund für ein Projekt, das um Ihr Geld bittet, seinen Quellcode zu verbergen. Diese eine Prüfung eliminiert eine ganze Menge.

2. Was kann der Owner tun?

Auch bei verifiziertem Code kann ein Nicht-Entwickler nach den relevanten Funktionen suchen. Achten Sie auf:

  • mint — kann der Owner unbegrenzt neue Token erschaffen? Das verwässert Sie nach Belieben auf null.
  • pause / blacklist — kann er Sie am Verkaufen hindern oder Ihre spezifische Adresse blockieren? Honeypot-Token funktionieren genau so: Sie können kaufen, aber danach nicht verkaufen.
  • setFee / setTax — kann die Transfergebühr nach Ihrem Kauf geändert werden? Eine auf 99 % erhöhte Gebühr ist eine Falle.
  • onlyOwner — wie viele Funktionen sind auf eine einzelne Adresse beschränkt, und ist diese Adresse ein einzelner Key oder ein Multisig?

Viele Explorer zeigen das inzwischen automatisch an. Kann der Owner nach Belieben minten, pausieren oder besteuern, sind die Regeln des Tokens das, was er morgen entscheidet.

3. Verstehen, was Sie genehmigen

Hier passieren die meisten Wallet-Leerungen. Damit ein Contract Ihre Token bewegen kann, erteilen Sie eine Allowance. Zwei Dinge überraschen Menschen:

  • Allowances sind häufig unbegrenzt. Viele Oberflächen genehmigen standardmäßig den maximal möglichen Betrag, sodass der Contract jeden Token dieser Art bewegen kann, den Sie halten — jetzt und jeden, den Sie später erwerben.
  • Sie bestehen unbegrenzt fort. Die Freigabe bleibt nach Abschluss bestehen, bis Sie sie widerrufen. Ein Protokoll, das ein Jahr später kompromittiert wird, kann immer noch auf eine Allowance zugreifen, die Sie heute erteilt haben.

Lesen Sie den Freigabebildschirm. Ihre Wallet zeigt, welcher Contract und welcher Betrag betroffen ist. Steht dort „unbegrenzt“ und Sie tätigen einen einmaligen Swap, legen Sie stattdessen einen konkreten Betrag fest.

4. Eine bösartige Signaturanfrage erkennen

Nicht jede Signatur ist eine Transaktion. Manche Anfragen bitten Sie, eine Nachricht zu signieren, die Berechtigungen außerhalb der Chain gewährt — eine Technik, die stark auf gefälschten Mint- und Airdrop-Seiten eingesetzt wird.

Warnsignale: eine Signaturanfrage, die Sie nicht selbst ausgelöst haben; eine Anfrage, die unmittelbar nach dem Klick auf einen Link aus einer Direktnachricht oder Werbeanzeige erscheint; eine Anfrage, deren Inhalt Ihre Wallet nicht in etwas Lesbares übersetzen kann; oder jeder Prompt auf einer Seite, die über eine unaufgeforderte Quelle erreicht wurde. Im Zweifel lehnen Sie ab. Eine legitime Aktion lässt sich immer wiederholen.

5. Alte Freigaben widerrufen

Machen Sie es zur Gewohnheit. Nutzen Sie ein seriöses Widerrufs-Tool — erreicht, indem Sie die Adresse direkt eintippen, denn gefälschte Widerrufs-Seiten existieren und sind genau die Art von Falle, die sicherheitsbewusste Nutzer erwischt — und löschen Sie Allowances, die Sie nicht mehr brauchen, besonders unbegrenzte und solche für Protokolle, die Sie nicht mehr nutzen.

6. „Geprüft“ mit Vorsicht behandeln

Ein Audit ist eine Momentaufnahme-Prüfung durch fehlbare Menschen, oft von einer Version, die sich später geändert hat. Etliche geprüfte Protokolle wurden ausgenutzt.

Nützliche Fragen: Wer hat es durchgeführt, ist der Bericht öffentlich, welche Probleme welchen Schweregrads wurden gefunden, wurden sie behoben, und wurde der Contract seitdem verändert? „Geprüft von“ ohne verlinkten Bericht ist Marketing.

7. Zeiterprobte Contracts bevorzugen

Das stärkste verfügbare Signal ist das Überleben. Ein Protokoll, das über Jahre bedeutenden Wert hält, ohne ausgenutzt worden zu sein, stand kontinuierlich unter Angriff gut finanzierter Gegner und hat standgehalten. Das ist ein härterer Test als jedes Audit.

Neue Contracts sind per Definition unbewiesen, egal wie gut der Code aussieht.

Eine Checkliste vor dem Start

  • Contract auf einem Block-Explorer verifiziert
  • Keine unbegrenzten Mint-, Pause-, Blacklist- oder veränderbaren Gebührenfunktionen — oder Eigentum aufgegeben
  • Freigabeumfang verstanden und, wo praktikabel, begrenzt
  • Signaturanfrage von mir selbst ausgelöst, auf einer Seite, die ich direkt aufgerufen habe
  • Protokoll hat nennenswerte Betriebsgeschichte und gebundenen Wert
  • Verwendung einer Wallet, die nur das enthält, was ich zu verlieren bereit bin

Was Sie als Nächstes lesen sollten

Sie haben den Pfad „Verdienen & DeFi“ abgeschlossen — und alle vier Pfade. Das Glossar deckt jeden Begriff ab, den Sie noch einmal nachschlagen möchten, und der Lern-Hub zeigt Ihren Fortschritt.

An der Diskussion teilnehmen

Haben Sie eine Frage oder einen Fehler entdeckt?

Kommentare stehen Mitgliedern offen und werden vor der Veröffentlichung moderiert. Fragen und Korrekturen sind immer willkommen, Werbung und Kurs-Prognosen nicht.

  • Kostenlos — nur eine E-Mail-Adresse und ein Passwort, sonst nichts
  • Leitfäden speichern und Ihren Fortschritt verfolgen
  • Zum Lesen ist nie ein Konto erforderlich

Kostenlos registrieren Anmelden