Skip to content
Alle Leitfäden zu Optionen und Futures
Ethereum-Smart-Accounts12 Min. Lesezeit

Ethereum-Smart-Accounts: UserOperations, Bundler und Gas-Sponsoring erklärt

Verfolge eine ERC-4337-UserOperation über Bundler und EntryPoint, lerne Paymaster-Sponsoring kennen und ordne Kontowiederherstellung und Verwahrung ein.

In diesem LeitfadenEin Smart Account speichert programmierbare Berechtigungen im Vertrag

Kurze Zusammenfassung

ERC-4337 lässt ein Smart-Contract-Konto UserOperations nach eigenen Regeln getrennt von EOA-Transaktionen senden. Bundler rufen EntryPoint auf; ein Paymaster kann Gas sponsern. Wiederherstellung, kostenlose Transaktionen oder fehlende Verwahrung sind nicht garantiert.

Ein Smart Account speichert programmierbare Berechtigungen im Vertrag

Ein gewöhnliches extern besessenes Konto (EOA) weist die Kontrolle mit einer Signatur des privaten Schlüssels nach; seine Nonce ordnet Transaktionen. Das Modell ist einfach, aber meist autorisiert derselbe Schlüssel alle Aktionen.

Eine EOA-Transaktion enthält eine einzelne Aktion auf oberster Ebene; der aufgerufene Vertrag kann trotzdem weitere interne Aufrufe ausführen.

Die Anleitung zu ausstehenden Ethereum-Transaktionen beschreibt diesen EOA-Weg, nicht ERC-4337.

Ein Smart Account ist ein Vertrag, der Vermögenswerte halten und Aufrufe ausführen kann. Seine Validierungslogik kann eine einzelne Signatur, eine Schwelle mehrerer Signaturen oder zeitlich begrenzte Berechtigungen verlangen.

ERC-4337 definiert eine Schnittstelle für Autorisierung und Ausführung, aber weder ein bestimmtes Wallet noch eine Wiederherstellungsrichtlinie.

Ethereum.org nennt Ersatzschlüssel, begrenzte Rechte und gesponsertes Gas als Möglichkeiten, die nicht jedes Wallet bietet. Die Bezeichnung „Smart Wallet“ verrät nicht, wer die Kontrolle hat.

Prüfe den Vertrag, der die Vermögenswerte hält, den Code und EntryPoint, denen das Konto vertraut, und welche Schlüssel Aufrufe autorisieren können.

Sind Konto-Logik oder Rollen aufrüstbar, beeinflussen Administratoren und Änderungsverfahren ebenfalls die Kontrolle.

Eine UserOperation ist noch keine Ethereum-Transaktion in einem Block

Eine UserOperation beschreibt, was ein Smart Account ausführen möchte. Sie enthält üblicherweise Absenderkonto, eigene Nonce, Aufrufdaten, Signatur, Gaslimits und Gebührenbedingungen.

Dazu können Factory-Daten für eine neue Kontoerstellung oder Paymaster-Daten für eine Kostenzusage kommen. Die genauen Felder hängen von der EntryPoint-Version ab.

Statt sie direkt mit eth_sendTransaction an die Chain zu senden, übermittelt das Wallet sie an einen Bundler oder Relay mit ERC-4337-RPC-Methoden wie eth_sendUserOperation.

Die Anfrage läuft durch einen UserOperation-Pool, getrennt vom Pool normaler EOA-Transaktionen. Der UserOperation-Hash identifiziert die Anfrage; die On-Chain-Transaktion des Bundlers hat einen eigenen Hash und Beleg.

ERC-7769 legt RPC-Methoden zum Senden und Abrufen von Ergebnissen fest. Eine Antwort kann bedeuten, dass dieser Bundler die Anfrage nach seinen Prüfungen in seinen Pool aufgenommen hat.

Sie beweist weder die Aufnahme in einen Block noch den Erfolg der App-Aktion. Ob der Dienst die Anfrage anderen Bundlern übermittelt, hängt von Infrastruktur und Regeln ab. Unterscheide die Empfangsbestätigung vom Chain-Ergebnis.

Ein Bundler simuliert die Prüfung und bereitet den Chain-Aufruf vor

Der Bundler prüft die Kompatibilität mit seiner EntryPoint-Version und simuliert die Validierungslogik des Kontos sowie des Paymasters. Er prüft Signatur, vertrauenswürdigen EntryPoint, Nonce, Gas- und Sponsoring-Bedingungen.

Anfragen, die Regeln verletzen oder die Simulation nicht bestehen, kann er ablehnen. Der ERC-4337-Bundler-Leitfaden beschreibt Simulation und Bündelung.

Anschließend wählt er eine oder mehrere gültige Operations aus und erstellt eine gewöhnliche Ethereum-Transaktion, die handleOps des EntryPoint aufruft. Ob sie in einem Block landet, hängt weiter von Blockerzeugung und Netzwerkzustand ab.

Ein zurückgegebener UserOperation-Hash beweist nicht, dass die Ausführung auf der kanonischen Chain erfolgte. Der UserOperation-Pool ist vom EOA-Pool getrennt; nicht alle Anbieter sehen dieselben Anfragen.

Ein Bundler kann eine Operation ablehnen oder warten lassen. Unterstützte Chains, EntryPoint-Versionen und Regeln unterscheiden sich. Prüfe getrennt die Wallet-Anzeige, den Operationsbeleg und den Chain-Beleg der Bündeltransaktion.

Wortloses Diagramm: Eine signierte Operation gelangt über Bundler und EntryPoint zum Smart Account; ein optionaler Sponsor übernimmt die Gasgebühr
ERC-4337 trennt signierte Anfrage, Bündelung, Kontoprüfung und optionale Gebührensponsoring

Der EntryPoint prüft die Autorisierung und ruft danach das Konto auf

Der EntryPoint empfängt den handleOps-Aufruf des Bundlers und ruft für jedes Smart Account dessen Validierungsfunktion auf.

Das Konto prüft den vertrauenswürdigen EntryPoint, die Signatur und eigene Berechtigungsregeln. Die ERC-4337-Nonce besteht aus einem 192-Bit-Schlüssel und einer 64-Bit-Sequenz.

EntryPoint prüft und erhöht die Sequenz pro Konto und Schlüssel; das Konto kann dem Schlüssel eine eigene Bedeutung geben oder zusätzliche Prüfungen festlegen. Ein optionaler Paymaster prüft ebenfalls, ob er die Operation sponsert.

Nach erfolgreicher Validierung ruft der EntryPoint die Ausführungsfunktion des Kontos auf, führt die in callData beschriebene Aktion aus und rechnet die Kosten ab.

Der EntryPoint ist der gemeinsame Vertrag, der Smart-Account-Abläufe ohne Protokolländerung für jedes Wallet ermöglicht.

Der ERC-4337-Leitfaden zum EntryPoint erläutert diese Prüf- und Abrechnungsfunktion. Prüfe die tatsächliche Adresse, Version und Chain.

Eine Simulation ist eine hilfreiche Vorschau, aber keine Zusage der Aufnahme. Während die Operation wartet, können Chain-Zustand, Gebühren, Gültigkeitsfenster oder externe Verträge ihre Ergebnisse verändern.

Selbst nach erfolgreicher Validierung kann der App-Aufruf scheitern oder zurückrollen. Die Blockaufnahme allein beweist keinen erfolgreichen Transfer oder Vertragsaufruf.

Ein Paymaster sponsert Gas nur, wenn er der Operation zustimmt

Enthält eine UserOperation Paymaster-Daten, fragt der EntryPoint diesen Vertrag, ob er die Operation sponsern möchte. So kann eine App Gebühren übernehmen oder einen Start ohne ETH im Konto ermöglichen.

Manche Designs sehen Tokenzahlung oder weitere Bedingungen vor; das hängt vom Wallet und Paymaster ab. Sponsoring lässt Kosten nicht verschwinden. Der Paymaster kann Apps, Nutzer, Anzahl oder Betrag begrenzen, die Anfrage prüfen und ablehnen.

Sein Guthaben beim EntryPoint dient zur Kostenzahlung. Ein zusätzlich erforderlicher Stake dient als Sicherheitsleistung und ist nicht dasselbe wie das Gasguthaben.

Der ERC-4337-Paymaster-Leitfaden und EIP-4337 beschreiben Prüfung und Abrechnung.

Zeigt die App null Gebühren an, heißt das nicht, dass keine Kosten entstehen. Der Sponsor kann später über Abo, Token oder Servicebedingungen einen Wertausgleich erhalten.

Prüfe, wer die Kosten letztlich trägt, ob Grenzen gelten und ob ein fehlgeschlagener Aufruf Gas kosten kann.

Mehrere Aufrufe und ihre Gebühren getrennt betrachten

Wenn das Wallet es unterstützt, kann eine UserOperation eine App-Genehmigung und einen Swap enthalten. Beide Aktionen laufen als eine Operation über den EntryPoint.

Das ist weder eine einzelne normale EOA-Transaktion noch dasselbe wie mehrere UserOperations in einer Bundler-Transaktion. Sieh in der Vorschau nach, welcher Ablauf verwendet wird.

Ein hypothetisches Beispiel: Eine genehmigte gesponserte Operation verursacht tatsächliche Gaskosten von 0,0012 ETH. Diese können vom EntryPoint-Guthaben des Paymasters statt vom Konto des Nutzers abgebucht werden.

Der Betrag dient nur zur Erklärung und ist weder aktuelle Gebühr noch Kurs. Tatsächliche Kosten hängen von Gasverbrauch, Gebührenbedingungen und Netzwerk ab. Bündelung ist nicht automatisch günstiger oder sicherer.

Die Atomarität mehrerer Aufrufe hängt davon ab, wie das Konto Fehler behandelt. Prüfe, ob ein fehlgeschlagener Aufruf das ganze Paket zurücksetzt, ob andere Aktionen bestehen bleiben und wer Gas zahlt.

Eine falsche Gasschätzung kann zur Ablehnung oder zum Fehler führen. Der Ethereum-Gasleitfaden erklärt die Gebührenfelder.

Wiederherstellung bestimmt die Kontoimplementierung, nicht ERC-4337

Ein Konto kann Ersatzschlüssel oder ein Verfahren unterstützen, bei dem vertrauenswürdige Guardians mit einem Schwellenwert einen Schlüssel austauschen. Manche Designs gewähren eine Frist für Einspruch.

Ist immer eine einzelne Signatur erforderlich, kann der Verlust dieses Schlüssels den Zugang dauerhaft verhindern. ERC-4337 erlaubt eigene Regeln, aktiviert aber keine Ersatzschlüssel oder soziale Wiederherstellung für jedes Konto.

Zu wenige Guardians oder schwache Austauschregeln können einen Angriff ermöglichen. Zu viele oder zu strenge Anforderungen können die legitime Wiederherstellung verzögern.

Prüfe Schwellenwert, Frist, Abbruchrechte und Aufbewahrung der Wiederherstellungsschlüssel. Die Regeln bestimmen auch, wer eine Operation blockieren kann. Ein Vertrags-Wallet ist nicht automatisch verwahrt oder selbstverwahrt.

Entscheidend sind Schlüsselinhaber, Administrator- und Upgrade-Rechte sowie die Befugnisse gehosteter Signer oder Wiederherstellungsdienste. Prüfe den Vertrag, der Vermögenswerte hält, getrennt von kontrollierenden Schlüsseln und Diensten.

Die Anleitung zur Seed-Phrase-Wiederherstellung behandelt einen anderen Fall.

Vor dem Senden Status und Kontrolle prüfen

Sieh in der Wallet-Vorschau Netzwerk, Konto, Zielverträge, Aufrufdaten, Umfang der Tokenfreigabe und Zahl der Aufrufe nach. Eine Signatur kann mehr genehmigen als die hervorgehobene Aktion.

Verstehst du die Daten nicht, lies die offiziellen Angaben der App und des Wallets. Lies für Sponsoring Teilnahmebedingungen, Limits, alternative Zahlungen und Kosten bei Fehlschlag, statt dich auf den Paymaster-Namen zu verlassen.

Eine aktive Sponsoring-Anzeige bedeutet nicht, dass die App immer kostenlos ist; der Paymaster kann ablehnen. Netzwerkauslastung und Aufnahmeverzögerung bleiben bestehen.

Wartet eine UserOperation lange, übertrage „Beschleunigen“ oder „Abbrechen“ für EOA-Transaktionen nicht ungeprüft. Suche zuerst Hash und Operationsbeleg. Ist der Hash der Bündeltransaktion bekannt, prüfe Blockbeleg und Ergebnis.

RPC-Belege können tatsächliche Kosten und Erfolg einer Operation vom Gesamtbeleg des Bundles unterscheiden.

Häufige Fragen

Q1Ist eine UserOperation dasselbe wie eine Ethereum-Transaktion?

Nein. Sie ist eine Smart-Account-Anfrage über einen getrennten Pool. Reicht ein Bundler einen EntryPoint-Aufruf ein, zeichnet die Chain die Bündeltransaktion und das Ergebnis jeder Operation auf.

Q2Zahlt der Nutzer mit einem Paymaster kein Gas?

Der Nutzer zahlt eventuell kein ETH direkt aus dem Konto, aber Netzwerkkosten entstehen trotzdem. Limits, Tokenzahlungen oder Servicebedingungen können gelten; auch ein Fehler kann Gas kosten.

Q3Kann ich ein ERC-4337-Wallet nach Schlüsselverlust wiederherstellen?

Nur wenn das Konto Ersatzsigner oder Wiederherstellungsregeln enthält. Prüfe Schwellenwert, Frist, Schlüsselwechsel und Kontrolle eines Wiederherstellungsdienstes.

Quellen und weiterführende Lektüre

Problem melden

Wir bereiten eine E-Mail mit dem Link zu diesem Artikel vor. Mark erhält den Hinweis erst nach dem Senden

Schnelltest

Fertig gelesen? Prüfe dich mit 3 Fragen

Frage 1 / 3

Frage 01

Ein Bundler gibt einen UserOperation-Hash zurück. Was ist damit allein belegt?

Wähle eine Antwort, um die Erklärung zu sehen

Optionsglossar