Paymaster
Kontrakt w ekosystemie ERC-4337 przejmujący opłatę za gaz zamiast użytkownika. Pozwala aplikacjom sponsorować transakcje i tworzyć przepływy onboarding bez wymogu posiadania ETH przez użytkownika.
Jak działa paymaster
W standardowych transakcjach Ethereum użytkownik płaci gaz bezpośrednio z portfela. W modelu ERC-4337 transakcje są opakowywane jako UserOperation. Paymaster to kontrakt, który podczas walidacji UserOp zgadza się pokryć koszt gazu — i udowadnia tę obietnicę kryptograficznie.
Paymaster może ustalić własne zasady sponsorowania: płaci za wszystkich użytkowników aplikacji, tylko za tych z tokenem, albo za pierwsze N transakcji na konto. Może też przyjmować zapłatę w innym tokenie niż ETH i sam konwertować na gaz.
To właśnie paymasters sprawiają, że przepływy 'gasless' są możliwe — aplikacja subsydiuje koszty onboardingu zamiast zmuszać użytkownika do zakupu ETH przed pierwszą interakcją.
Typy paymaster
- Sponsoring paymaster
- Aplikacja pokrywa gaz bez żadnych kosztów dla użytkownika. Typowy dla onboardingu.
- Token paymaster
- Użytkownik płaci w USDC lub innym tokenie. Paymaster konwertuje na ETH i opłaca gaz.
- Warunkowy paymaster
- Sponsoruje tylko określone operacje, użytkowników z danym NFT lub do określonego limitu.
Najczęstsze błędne założenia
- Paymaster nie oznacza, że gaz jest darmowy. Ktoś zawsze płaci — zazwyczaj aplikacja lub protokół.
- Paymaster to część stosu ERC-4337, nie natywna funkcja Ethereum. Wymaga smart account i bundlera.
- Bezgasowy UX nie oznacza mniejszego bezpieczenstwa — paymaster waliduje operacje tak samo rygorystycznie.
