Zuletzt aktualisiert: 02.11.2026
Eine Transaktion simulieren bedeutet, einen geplanten Blockchain-Aufruf zu testen, ohne ihn in die Live-Chain einzutragen. Eine Anwendung kann prüfen, was ein Aufruf bewirken könnte, bevor er gesendet wird. Das Ergebnis ist eine Vorschau auf Grundlage bestimmter Eingaben und eines Netzwerkzustands, keine Aussage über den späteren Ausgang.
Transaktion simulieren: Was bedeutet das?
Eine Blockchain-Transaktion weist die Netzwerksoftware an, Schritte wie eine Token-Übertragung oder einen Smart-Contract-Aufruf auszuführen. Bei einer Simulation verarbeitet ein Node oder Dienst einen ähnlichen Aufruf außerhalb der Live-Chain. Er führt den geplanten Aufruf gegen eine ausgewählte Ansicht der Blockchain aus und meldet das Ergebnis, ohne es zu bestätigen.
Die JSON-RPC-Dokumentation von ethereum.org beschreibt eth_call als Möglichkeit, einen Aufruf auszuführen, ohne eine On-Chain-Transaktion anzulegen. Eine Anfrage kann Absender, Empfänger, Gas, Wert, Eingabedaten und eine Blockreferenz wie latest oder pending enthalten. Die Antwort gibt Daten aus der Vertragsausführung zurück.
Der Aufruf testet geplante Anweisungen gegen einen ausgewählten Zustand. Er macht keine bestätigte Überweisung rückgängig.
So läuft eine Blockchain-Transaktionssimulation ab
Die Eingaben bestimmen den Test
Die Anwendung übermittelt Transaktionsdetails und den Zustand, gegen den sie testen will. Dazu gehören möglicherweise das aufrufende Konto, die Vertragsadresse, codierte Funktionsdaten, mitgesendete Kryptowährung, das Gaslimit und eine Blockreferenz. Weicht eine Eingabe von der später gesendeten Transaktion ab, bildet die Vorschau diese möglicherweise nicht genau ab.
Der Node führt die Anweisungen gegen den ausgewählten Zustand aus. Ein Vertrag kann Kontostände oder gespeicherte Werte lesen, seine Regeln anwenden und Daten oder einen Fehler zurückgeben. Die Simulation schreibt keine Zustandsänderungen in die Blockchain.
Was eine Ethereum-Simulation zurückgeben kann
Die Spezifikation der Ethereum Execution APIs beschreibt eth_simulateV1 als Methode, um Aufrufe gegen einen ausgewählten Block auszuführen. Mehrere Aufrufe können nacheinander getestet werden, wobei jeder auf simulierten Änderungen aus vorherigen Aufrufen aufbauen kann. Die Antwort kann Status, Rückgabedaten, Gasverbrauch und Logs enthalten. Einzelheiten stehen in der Spezifikation der Ethereum Execution APIs.
Eine Anwendung kann anhand dieser Ausgabe anzeigen, ob ein Aufruf unter den Testbedingungen erfolgreich war und welche Ereignisse er dabei auslösen würde. Eine Gasschätzung beantwortet eine engere Frage: Laut ethereum.org schätzt eth_estimateGas den Gasbedarf außerhalb der Blockchain. Der Schätzwert kann über dem tatsächlichen Verbrauch liegen oder nicht ausreichen, wenn die Ausführung mehr Gas benötigt, als der anstehende Block zulässt.

Was eine Vorschau zeigt und was nicht
Eine erfolgreiche Simulation bedeutet, dass der Aufruf unter den getesteten Bedingungen erfolgreich war, nicht, dass er auch bei seiner Aufnahme in einen Block erfolgreich sein wird. Eine andere Transaktion kann vorher den Vertragszustand ändern, der ausgewählte Block kann veraltet sein oder Transaktionsdetails können sich ändern. Netzwerkbedingungen können ebenfalls die Aufnahme und den Gasverbrauch beeinflussen.
Wallet-Vorschauen helfen Nutzern, eine Aktion zu prüfen. MetaMask beschreibt Standardvorschauen als Off-Chain-Simulationen und warnt, dass das Ergebnis von der späteren Ausführung abweichen kann. Eine Vorschau beweist nicht, dass eine Website, ein Token oder ein Vertrag vertrauenswürdig ist. Fehler, schädliche Genehmigungen, kompromittierte Dienste und Betrug bleiben Risiken.
Kettenübergreifende Aktionen können mehrere Verträge und Netzwerke umfassen. Die Simulation eines einzelnen Schritts sagt nichts Abschließendes über den Ausgang des gesamten Ablaufs aus.
Die passende Methode zum Simulieren einer Transaktion
Entwickler nutzen eth_call häufig für eine grundlegende Prüfung, ob ein Ethereum-Aufruf erfolgreich wäre. Ein Trace kann mehr Details zur Ausführung liefern. Alchemy kündigte an, dass fünf Methoden der Reihe alchemy_simulate* nach dem 30. September 2026 nicht mehr funktionieren würden. Für eine grundlegende Prüfung nennt der Anbieter eth_call, für vollständige Ausführungs-Traces debug_traceCall mit callTracer. Entwickler sollten die Dokumentation ihres Node-Anbieters prüfen.
Die Geth-Dokumentation, zuletzt am 7. Oktober 2026 bearbeitet, besagt, dass eth_simulateV1 eine übergeordnete Blocknummer oder latest akzeptiert. Die Methode unterstützt Block-Overrides, etwa einen anderen Zeitstempel oder ein anderes Gaslimit, sowie State-Overrides, darunter geänderte Kontostände oder Vertragszustände. Mit diesen Optionen lassen sich bestimmte Bedingungen testen, ohne die tatsächliche Chain zu verändern.
Geth dokumentiert zudem eine optionale Validierungseinstellung. Ist sie aktiviert, führt die Methode die normale EVM-Validierung aus, mit Ausnahmen für Prüfungen des Vertrags-Absenders und der Signatur. Ist sie deaktiviert, verhält sie sich wie eth_call. Entwickler sollten wissen, welche Prüfungen eine Methode ausführt, bevor sie ihr Ergebnis als repräsentativ für eine echte Übermittlung einordnen.

Grenzen, Risiken und richtige Einordnung
Eine Simulation ist durch ihre Eingaben, die verwendete Software und den ausgewählten Zustand begrenzt. Sie berücksichtigt möglicherweise keine Änderungen zwischen dem Test und der Aufnahme in einen Block. Ein Erfolg ist ein einzelner Testlauf, kein Beweis für ein späteres Ergebnis. Ein Fehler kann an den Testparametern liegen und schließt nicht jede andere Möglichkeit aus, den Vertrag aufzurufen.
Geth begrenzt jede Anfrage mit eth_simulateV1 auf 256 Blöcke, einschließlich Lückenblöcken. Fehlen Zeitstempel für simulierte Blöcke, werden sie laut Dokumentation pro Block um 12 Sekunden erhöht. Das ist bei Tests wichtig, die von Zeit oder der Blockabfolge abhängen.
Nutzer können die Aktionsbeschreibung im Wallet prüfen sowie Empfänger, Vermögenswert und angeforderte Berechtigungen kontrollieren. Eine Simulation stellt nicht fest, ob Gelder, die an eine falsche Adresse gesendet wurden, zurückgeholt werden können. Sie verhindert weder Kursschwankungen noch Risiken durch Smart Contracts oder Börsen. Auch die Sicherheit eines unbekannten Vertrags lässt sich damit nicht feststellen. Prüfen Sie, welche Berechtigungen eine Transaktion vom Wallet verlangt.

Häufige Fragen zur Transaktionssimulation
Wird eine Transaktion bei der Simulation auf die Blockchain geschrieben?
Nein. Ethereum führt eth_call außerhalb der Blockchain aus und gibt Daten zurück, ohne eine On-Chain-Transaktion anzulegen. Das spätere Absenden ist eine separate Aktion.
Kann eine Simulation bestätigen, dass eine Transaktion erfolgreich sein wird?
Nein. Sie zeigt, was mit den getesteten Eingaben und dem ausgewählten Zustand passiert ist. Die Chain kann sich vor der Aufnahme ändern oder die endgültige Transaktion kann von der Vorschau abweichen.
Ist eine Simulation dasselbe wie eine Gasschätzung?
Nein. Eine Simulation kann Ausführungsergebnisse und bei manchen Methoden den verbrauchten Gasbetrag anzeigen. Eine Gasschätzung konzentriert sich auf den voraussichtlichen Gasbedarf. Sie muss weder dem tatsächlichen Verbrauch entsprechen noch unter allen Bedingungen ausreichen.
Kann eine Simulation Betrug oder unsichere Verträge erkennen?
Sie kann Details wie einen Fehler oder erzeugte Logs sichtbar machen, aber nicht beweisen, dass ein Vertrag oder eine Website vertrauenswürdig ist. Schädliche Berechtigungen, Sicherheitslücken und Betrug bleiben auch bei einer erfolgreichen Vorschau möglich.
Quellen
- eth_simulateV1 | Ethereum Execution APIs (ethereum.github.io)
- JSON-RPC API | ethereum.org
- eth Namespace | go-ethereum (geth.ethereum.org)
Dieser Artikel dient ausschließlich Informationszwecken und stellt keine Finanz- oder Anlageberatung dar. Kryptowährungen sind sehr volatil, recherchieren Sie daher immer selbst, bevor Sie investieren.

