Кальтер / Блог

Что означает sponsored gas в ERC-4337 и какие ограничения остаются

Разбери путь UserOperation, bundler и paymaster, чтобы понять, кто покрывает газ, при каких условиях и где операция может быть отклонена.

Материал подготовлен с помощью ИИ. Источники, учебные примеры и расчёты проверены редакцией перед публикацией.

Схема роли paymaster в ERC-4337 и границы sponsorship; она не означает бесплатность или гарантированное выполнение.
Схема роли paymaster в ERC-4337 и границы sponsorship; она не означает бесплатность или гарантированное выполнение.

Надпись «gas sponsored» не означает, что вычисления бесплатны. В ERC-4337 Smart Account отправляет UserOperation, bundler передаёт операции через EntryPoint, а paymaster может согласиться оплатить комиссию вместо account. Кто-то всё равно покрывает затраты и может выставлять условия, лимиты или отказать.

Раздели роли в потоке

Участник Роль Что проверить
Smart Account (sender) описывает действие в UserOperation точный callData, nonce, сеть и получатель
Bundler принимает и включает UserOperation через EntryPoint поддерживаемый EntryPoint, оценка и правила приёма
Paymaster может оплатить расходы или дать альтернативную модель оплаты условия, лимит, срок действия и что будет при отказе
EntryPoint проверяет и исполняет операции по спецификации адрес/версия контракта, соответствующая сети

ERC-4337 определяет UserOperation как специальную псевдотранзакцию; paymaster — helper contract, который соглашается платить вместо sender. Спецификация описывает paymaster-путь и требования к его deposit/stake, а bundler может отклонить операцию, не прошедшую проверки (ERC-4337). Это механизм, а не обещание бесплатной транзакции.

Разбери конкретное предложение «без газа»

Синтетический экран говорит: «Комиссия 0 для пользователя». За ним могут быть условия: спонсор оплачивает только первую операцию, поддерживает один токен/сеть, требует лимит суммы или оплачивает газ, но отдельно взимает комиссию сервиса. Пока экран и policy не показывают детали, правильный вывод — «неизвестно, кто покрывает расходы и при каких условиях», а не «операция бесплатна».

Промпт для пояснения предложения:

Разбери поток UserOperation по данным ниже.
Отдельно укажи sender, bundler, EntryPoint и paymaster, если он указан.
Не называй операцию бесплатной, если нет подтверждения о плательщике и условиях.
Перечисли возможные места отказа и поля, которые надо проверить до подписи.
Не советуй подтверждать действие.
Текст предложения/публичные поля: [..]

Перед подписью проверь, какое действие кодирует callData, кто платит, откуда берутся средства и что происходит при отказе paymaster. Если фактический интерфейс обещает одно, а paymaster policy — другое, остановись и уточни. Успешная симуляция одной операции не гарантирует, что провайдер оплатит следующую.

Не считай sponsored gas инвестиционной рекомендацией и не полагайся на рекламное слово gasless без условий. Для обычных комиссий сети и их компонентов смотри обзор gas fees; здесь речь только об ERC-4337 и спонсировании UserOperation.