Zum Inhalt springen

Account Abstraction

Ethereum Account Abstraction mit ERC-4337-Smart-Accounts, EntryPoint-Versionen, UserOperations, Bundlern, Paymastern, Nonce-Kanalen, Validierung, Ausfuhrung, EIP-7702-Delegation sowie Gebuhren- und Wiederherstellungsrisiken verstehen.

Aktualisiert

Nur zu Bildungszwecken; stellt keine Anlageberatung oder Anlageempfehlung dar. Anlagen konnen zu Verlusten fuhren.

Direkte Antwort

Account Abstraction macht die Autorisierungs- und Ausfuhrungsregeln eines Kontos programmierbar. ERC-4337 setzt dies auf Ethereum ohne Anderung des Konsens-Transaktionstyps um: Eine Wallet sendet eine UserOperation uber spezielle RPC-Infrastruktur, ein Bundler verpackt eine oder mehrere Operationen in eine normale Transaktion an einen versionierten EntryPoint, und der Smart Account validiert und fuhrt seine eigene Operation aus. Wiederherstellung, Passkeys, Session Keys, Ausgabenlimits, Batching und Gebuhrensponsoring sind darauf aufbauende Konto- oder Servicefunktionen, keine automatischen ERC-4337-Garantien.

ERC-1271 standardisiert dagegen die Signaturprufung eines Vertrags fur eine Nachricht; EIP-7702 erlaubt einem Externally Owned Account (EOA), die Ausfuhrung an Code zu delegieren. Die Mechanismen konnen zusammenwirken, teilen aber weder eine einzige Schnittstelle noch Nonce, Deployment oder Sicherheitsmodell. Account Abstraction beseitigt weder Zugangsdaten und Gaskosten noch Vertragsrisiken oder die Pflicht, Kette und Implementierung genau zu prufen.

ERC-4337-Ablauf in sieben Schritten

  1. Umgebung festlegen: chainId, Smart-Account-Implementierung und Upgrade-Kontrollen, Factory, EntryPoint-Version, Adresse und Hash des deployten Codes, Bundler-Unterstutzung und EIP-7702-Aktivierung. Eine Adresse fur ein Release oder eine Kette ist keine universelle Konstante.
  2. Versionsgerechte Operation erstellen. Aktuelle logische Felder umfassen sender, nonce, factory, factoryData, callData, callGasLimit, verificationGasLimit, preVerificationGas, maxFeePerGas, maxPriorityFeePerGas, optionale Paymaster-Felder und signature. EntryPoint erhalt on-chain eine gepackte Darstellung; Zielaufrufe stehen im kontodefinierten callData, nicht in einem universellen Zielfeld.
  3. Autorisierung an die richtige Domain binden. Der userOpHash umfasst die Operation ohne Signatur und bindet EntryPoint und Kette. validateUserOp pruft Eigentumer-, Multisig-, Passkey-, Session- oder andere Regeln. ERC-1271 isValidSignature ist eine separate Vertragssignatur-Schnittstelle; ein optionaler Aggregator kann aggregierte Signaturen prufen. Ein EIP-7702-Autorisierungstupel wird getrennt von der UserOperation geliefert.
  4. Gebuhrenkapazitat nachweisen. Das Konto kann uber sein EntryPoint-Guthaben vorfinanzieren, oder ein Paymaster ubernimmt bedingt die Haftung aus seinem Deposit. Er kann sponsern, Token berechnen, Allow-Lists oder Quoten anwenden und postOp ausfuhren; ERC-4337 legt diese Geschaftsregeln nicht fest. Stake stutzt Validierung und Reputation, Deposit bezahlt Gas.
  5. Uber ERC-7769-RPC schatzen und einreichen. Der Bundler validiert bei Eingang, vor Auswahl und beim Bundle-Aufbau. ERC-7562 begrenzt Opcodes und Speicherzugriffe in der Validierung und ermoglicht Reputationskontrollen gegen DoS. Diese Simulation pruft Zulassung und Gebuhrensicherheit; fur die geschaftliche Ausfuhrung ist eine getrennte Vollsimulation notig.
  6. Der Bundler ruft handleOps auf. EntryPoint erledigt zulassiges Deployment, Konto- und Paymaster-Validierung, Prefund-Prufungen und optionale Aggregation. Fehlgeschlagene Validierung verhindert die Ausfuhrung; ein Zielaufruf kann nach gultiger Zulassung dennoch revertieren und Gas verbrauchen. Atomarer Rollback oder Teilerfolg eines internen Batches wird vom Ausfuhrungscode des Kontos bestimmt.
  7. Belege und Zustand abstimmen. UserOperation-Beleg, Bundle-Transaktion, EntryPoint- und Zielereignisse, Deployment, tatsachliches Gas, Tokenbelastung, Erstattung und Endbestande abgleichen. Danach Nonce-Kanale, Eigentumer- und Recovery-Anderungen, Session-Key-Widerruf, Module, Upgrades, Bundler-/Paymaster-Alternativen, Reorgs sowie Migration oder EIP-7702-Redelegation uberwachen.

Vier Rechenbeispiele

  • Vereinfachter Gasrahmen. Eine Operation plant 120,000 Ausfuhrungsgas, 90,000 Kontovalidierungsgas, 45,000 Paymaster-Validierungsgas, 40,000 Vorvalidierungsgas und 30,000 Paymaster-Post-Op-Gas ein: 120,000 + 90,000 + 45,000 + 40,000 + 30,000 = 325,000 gas. Bei maxFeePerGas = 30 gwei betragt die vereinfachte Obergrenze 325,000 × 30 gwei = 0.009750 ETH. Werden tatsachlich 210,000 gas zu 22 gwei berechnet, kostet dies 0.004620 ETH. Versionsregeln, Strafen fur ungenutztes Gas, L1-Datengebuhren und Rollup-Preise konnen Betrage andern; dies ist ein Budget, keine universelle Prefund-Formel.
  • Paralleler Nonce-Kanal. Bei einem 192-bit key und einer 64-bit sequence ergeben Key 7 und Sequenz 42 den Wert nonce = (7 << 64) | 42 = 129127208515966861354 = 0x7000000000000002a. Nach erfolgreicher Aufnahme erwartet der Kanal 43; eine Wiederholung von 42 scheitert. Ein anderer Key kann nach Konto- und Bundler-Regeln eine unabhangige Sequenz haben.
  • Paymaster-Kapazitat. Ein Paymaster hat 0.50 ETH als Deposit und jede angenommene Operation erfordert maximal 0.03 ETH Garantie. Er deckt floor(0.50 / 0.03) = 16 Operationen, reserviert 0.48 ETH und behalt 0.02 ETH. Eine siebzehnte Operation braucht mehr Deposit oder eine kleinere Garantie. Stake ersetzt das Gebuhren-Deposit nicht.
  • Execution-Revert nach Zulassung. Eine Operation reserviert bis zu 0.0060 ETH; die Validierung gelingt, doch die Zielausfuhrung revertiert nach 180,000 gas × 25 gwei = 0.0045 ETH. Zielzustandsanderungen werden zuruckgesetzt, Konto oder Paymaster schuldet dennoch 0.0045 ETH; die ungenutzten 0.0015 ETH unterliegen den geltenden Abrechnungs- und Strafregeln. Erfolgreiche Simulation garantiert weder Geschaftserfolg noch Aufnahme oder Finalitat.

Risiken und Kontrollen

  • Falsche Kette, EntryPoint-Adresse, Version oder Code-Hash konnen die Operation fehlleiten oder ungultig machen.
  • Fehlende Ketten- oder EntryPoint-Domain-Bindung ermoglicht Replay.
  • Factory, kontrafaktische Adresse, Initialisierungsdaten oder Deployment-Salt konnen ersetzt oder falsch berechnet werden.
  • EIP-7702 kann eine EOA an bosartigen oder fehlerhaften Code mit weitreichender Befugnis delegieren.
  • Front-Running oder Wiederholung der Initialisierung kann das Konto ubernehmen oder beschadigen.
  • Proxy-Upgrades oder Redelegation konnen mit dem vorhandenen Storage-Layout kollidieren.
  • Kompromittierte Upgrade- oder Moduladministratoren konnen das Kontoverhalten austauschen.
  • Fehler bei Eigentumer, Multisig, Passkey oder ERC-1271 konnen Diebstahl erlauben oder Mittel sperren.
  • Recovery-Schwellen, Fristen, Guardians und Abbruchpfade konnen versagen oder ubernommen werden.
  • Session Keys konnen Ziel, Token, Betrag, Laufzeit oder Funktionsumfang uberschreiten.
  • Nonce-Kanale konnen kollidieren, Lucken bilden, wiederholt werden oder Folgeoperationen blockieren.
  • Aggregator-Ausfall oder Signaturfehler konnen gultige Operationen blockieren.
  • Bundler konnen zensieren, ausfallen, lokale Richtlinien anwenden oder alternative Mempools ablehnen.
  • Offentliche UserOperations konnen Absichten fur Korrelation, Front-Running und MEV offenlegen.
  • Zustandsanderungen nach der Simulation konnen die Operation beim Bundle-Aufbau ungultig machen.
  • Paymaster konnen ablehnen, ihr Deposit aufbrauchen oder in postOp scheitern.
  • Token-Gasgebuhren bergen Kurs-, Allowance-, Spread- und Serviceaufschlagsrisiken.
  • Zu knappes Gas kann revertieren; uberhohte Limits konnen Reservierung oder Strafe erhohen.
  • Batch-Semantik kann Teilerfolg zulassen, obwohl atomarer Rollback erwartet wurde.
  • Zielprotokollfehler, feindliche Frontends, Reorgs und schwache Finalitat bleiben ausserhalb der Account Abstraction.

Haufige Irrtumer

  • “Account Abstraction beseitigt Private Keys.” Sie verandert die programmierbare Credential-Policy; irgendein Berechtigungsnachweis bleibt notig.
  • “Ein Paymaster macht Gas kostenlos.” Natives Gas wird bezahlt; Nutzer, Sponsor oder Service tragt die Kosten.
  • “Bundler-Simulation garantiert Erfolg.” Zulassung garantiert weder Ausfuhrung noch Aufnahme oder Finalitat.
  • “ERC-1271, ERC-4337 und EIP-7702 sind dieselbe Schnittstelle.” Sie losen verschiedene Signatur-, Transaktionsfluss- und Delegationsprobleme.
  • “Jede Kette, Wallet und jeder EntryPoint ist kompatibel und sicherer.” Support, Versionen, Deployments, Code, Module und Kontrollen sind getrennt zu prufen.

Verwandte Themen

Quellen

Navigation

Wiki durchsuchen...