Kurz erklärt: Ein Paymaster ist ein Smart Contract innerhalb des Ethereum-Standards ERC-4337, der Transaktionsgebühren (Gas) im Namen von Nutzern bezahlen oder in alternativen Zahlungsmitteln abrechnen kann. Er ermöglicht damit gasfreie oder gassponserte Interaktionen.
Zweck und Einordnung
Bei klassischen Ethereum-Transaktionen muss der ausführende Account die Netzwerkgebühren zwingend in Ether (ETH) begleichen. Dies stellt für neue Nutzer eine Huerde dar, da sie vor jeder Aktion zunächst ETH beschaffen müssen. Der Paymaster-Mechanismus wurde als Teil der Account Abstraction eingeführt, um dieses Problem zu entschaerfen.
Ein Paymaster ist ein optionaler Bestandteil einer UserOperation. Ist er angegeben, übernimmt der Vertrag die Verantwortung für die Gebührenzahlung gegenüber dem EntryPoint-Vertrag, während der Endnutzer selbst kein ETH halten muss.
Funktionsweise
Der Ablauf im Rahmen von ERC-4337 folgt einem festen Muster:
- Validierung: Der EntryPoint-Vertrag ruft den Paymaster auf, um zu prüfen, ob dieser bereit ist, die Gebühren zu tragen.
- Hinterlegung: Der Paymaster muss zuvor eine Einlage (Deposit) beim EntryPoint hinterlegt haben, aus der die Gebühren gedeckt werden.
- Nachbearbeitung (postOp): Nach Ausführung kann der Paymaster eine Abrechnung vornehmen, etwa das Einziehen eines ERC-20-Token als Gegenwert.
Typische Anwendungsformen sind der verifizierende Paymaster, der Transaktionen anhand einer Signatur des Betreibers sponsert, und der Token-Paymaster, der die Gaskosten gegen einen Stablecoin oder anderen Token verrechnet.
Anwendungsfälle
Paymaster werden in verschiedenen Szenarien eingesetzt:
- Gasfreie Onboarding-Prozesse, bei denen ein Anbieter die Gebühren für neue Nutzer übernimmt.
- Bezahlung von Gas in Token statt in ETH, etwa in einem Stablecoin.
- Förderprogramme, bei denen bestimmte Aktionen (z. B. erste Transaktionen) kostenlos angeboten werden.
Der Mechanismus verlagert die wirtschaftliche Last der Gebühr vom Endnutzer auf den Betreiber oder ein Drittprojekt und ist damit eng mit Geschäftsmodellen dezentraler Anwendungen verknüpft.
Häufige Fragen
Muss ein Nutzer bei Verwendung eines Paymasters ETH besitzen?
Nein. Der wesentliche Zweck eines Paymasters besteht darin, dass der Nutzer keine ETH für Gasgebühren halten muss, da der Vertrag diese übernimmt oder in einem anderen Token abrechnet.
Ist ein Paymaster zwingend erforderlich?
Nein. Der Paymaster ist ein optionaler Bestandteil einer UserOperation im Rahmen von ERC-4337. Ohne ihn trägt das jeweilige Smart-Contract-Konto die Gebühren selbst.
Wie deckt ein Paymaster die Gebühren?
Er muss vorab eine Einlage beim EntryPoint-Vertrag hinterlegen. Aus dieser Einlage werden die Gasgebühren gedeckt; anschliessend kann eine Abrechnung mit dem Nutzer erfolgen.
Was ist ein Token-Paymaster?
Ein Token-Paymaster ist eine Variante, die die Gaskosten gegen einen ERC-20-Token wie einen Stablecoin verrechnet, sodass der Nutzer in diesem Token statt in ETH bezahlt.
In welchem Standard ist der Paymaster definiert?
Der Paymaster ist Bestandteil des Ethereum-Standards ERC-4337 zur Account Abstraction und arbeitet mit dem dortigen EntryPoint-Vertrag zusammen.
Zusammenfassung
Ein Paymaster ist ein Smart Contract im Rahmen von ERC-4337, der Transaktionsgebühren für Nutzer übernimmt oder in alternativen Token abrechnet. Er hinterlegt dazu eine Einlage beim EntryPoint-Vertrag und ermöglicht gasfreie oder gassponserte Interaktionen. Typische Formen sind der verifizierende Paymaster und der Token-Paymaster.
Weiterführende Quellen
- EIP-4337: Account Abstraction Using Alt Mempool (Abschnitt Paymasters): eips.ethereum.org
- Ethereum.org: Account Abstraction: ethereum.org