Пост
Поделитесь своими знаниями.
Спонсорская сделка
В сети SUI можно ли спонсировать кошелек B кошельком A, когда B хочет выполнить транзакцию. Это компания A, которая оплачивает плату за газ в рамках транзакций B.
- SDKs and Developer Tools
- Transaction Processing
- Security Protocols
- Move
Ответы
2Да, в сети Sui возможны спонсорские транзакции, и это одна из ключевых особенностей, отличающих Sui от многих других блокчейнов.
Вот как это работает на практике:
-
Структура транзакции: транзакция Sui включает отправителя (того, кто выполняет действие) и отдельный газовый объект, покрывающий комиссионные. Эти двое не обязательно должны принадлежать одному кошельку.
-
Спонсируемый поток транзакций:
Кошелек B формирует транзакцию, выполняя необходимые действия (например, перевод NFT, вызов функции Move).
Вместо того чтобы прикрепить свой собственный газовый объект, кошелек B оставляет оплату за газ на произвол судьбы.
Кошелек A предоставляет газовый объект и подписывает транзакцию, фактически «спонсируя» ее.
Окончательная транзакция подписывается как A (плательщиком газа), так и B (отправителем действия), а затем отправляется.
- Варианты использования:
Привлечение новых пользователей, у которых еще нет SUI.
DApps, покрывающие плату за более удобный пользовательский интерфейс (транзакции без газа).
Делегированные операции, при которых сервисный аккаунт оплачивает газ многим пользователям.
- Поддержка CLI/SDK:
С помощью клиента Sui SDK или Typescript вы можете создать блок транзакций с одним подписантом (B), а затем добавить другую подпись (A) для газового объекта.
В интерфейсе командной строки вы можете смоделировать транзакцию с помощью --serialize, а затем попросить другую учетную запись подписать ее.
- Соображения безопасности:
Кошелек A должен доверять кошельку B в том, что он не должен проводить вредоносные транзакции, в результате которых сжигается избыточное количество газа.
Как правило, кошелёк-спонсор использует бюджеты на газ и перед подписанием может отфильтровать или занести в белый список типы транзакций.
- Практический совет: во многих dApps реализован сервис ретрансляции или промежуточного программного обеспечения: пользователь подписывает намерение, серверная часть подключает газ и повторно подписывает подпись, а затем транслирует.
Так что да. Кошелек A может оплачивать транзакцию в кошельке B, но вам нужно создать транзакцию с несколькими подписантами и обрабатывать ее с помощью SDK или ретранслятора.
Да, в сети Sui вы можете спонсировать транзакцию другого кошелька, а это значит, что кошелек A может оплатить плату за газ, когда кошелек B захочет что-то выполнить. Для этого используется так называемаяспонсируемая транзакция, когда B подписывает данные транзакции, а затем A добавляет газовый объект и подписывается в качестве плательщика. Сеть обрабатывает действие от имени B, но взимает плату за газ с A. Это удобно, если вы хотите, чтобы пользователи могли работать с вашим приложением, не беспокоясь о том, что они сами приобретут токены SUI.
Подробнее: Спонсорские транзакции на Sui
# Example flow:
# Step 1: Wallet B creates and signs the transaction (without gas)
sui client tx-transfer-sui <recipient-address> --amount 100 --serialize-output > tx.json
# Step 2: Wallet A attaches gas and sponsors the transaction
sui client sponsor-transaction --tx-file tx.json --gas-budget 5000000 --sponsor-signer <walletA-key>
# Step 3: Submit the combined signed transaction
sui client execute-signed-tx --tx-file sponsored_tx.json
Знаете ответ?
Пожалуйста, войдите в систему и поделитесь им.
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.
Заработай свою долю из 1000 Sui
Зарабатывай очки репутации и получай награды за помощь в развитии сообщества Sui.

- Почему BCS требует точного порядка полей для десериализации, когда структуры Move содержат именованные поля?55
- «Ошибки проверки нескольких источников» в публикациях модуля Sui Move — автоматическое устранение ошибок45
- Сбой транзакции Sui: объекты, зарезервированные для другой транзакции48
- Ошибка Sui Move — невозможно обработать транзакцию Не найдено действительных газовых монет для транзакции29
- Как ограничения возможностей взаимодействуют с динамическими полями в гетерогенных коллекциях?07