Gas 贊助(帳戶抽象)
CloudBank 透過 ERC-4337 帳戶抽象化 為使用者提供 Gas 費用,從而消除了使用者持有 BNB 來支付交易費用的要求。這對於可能沒有本機令牌的 Web2 使用者來說至關重要。
架構概述
Gas贊助系統建立在ERC-4337標準之上,該標準透過一組專門的合約將交易驗證與執行分開。
核心合約
EntryPoint v0.6
規範的 ERC-4337 EntryPoint 合約部署在:
0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789這是鏈上所有 UserOperations 的單例入口點。它處理所有捆綁操作的驗證、執行和氣體核算。
CloudBankVerifyingPaymaster
付款主合約是 CloudBank 的自訂實現,決定贊助哪個 UserOperations。它使用鏈下 ECDSA 簽名驗證來授權贊助。
驗證流程
- 使用者建構一個 UserOperation (目標、calldata、gas 限制)。
- 前端將 UserOp 傳送到 CloudBank 的付款人 API。
- API 評估贊助資格,如果獲得批准,則使用付款人的私鑰簽署 UserOp 雜湊值。
- 帶符號的
paymasterAndData欄位附加到 UserOp 上。 - 捆綁程序將 UserOp 提交給 EntryPoint。
- EntryPoint 在付款主合約上呼叫 EntryPoint,該合約恢復簽署者並驗證其是否與授權密鑰相符。
Features
| Feature | Description |
|---|---|
| 寄件者白名單 | 有資格獲得贊助的可選錢包地址白名單。啟用後,只有列出的地址才會收到 Gas 贊助。 |
| 每日贊助商限額 | 每位發送者的贊助 Gas 每日上限,防止任何單一帳戶濫用。在午夜 UTC 重設。 |
| 權益管理 | 根據 ERC-4337 規範的要求,付款人與 EntryPoint 保持 ETH/BNB 權益。管理功能處理股份的存入和提取。 |
簽名方案
付款人簽名涵蓋:
- 寄件者地址
- Nonce
- 有效期限至時間戳
- 時間戳後有效
- 付款主管特定數據(贊助商剩餘限額等)
這確保了每個贊助授權都是有時間限制的且不可重複。
BEP-414 後備
對於 ERC-4337 不是最佳的場景,CloudBank 也支持 BEP-414、BSC 的原生天然氣贊助提案。 BEP-414 允許指定發起人在協議層級支付 Gas 費,而不需要 UserOperation 抽象層。
當使用 BEP-414 時
- 簡單的代幣傳輸,不需要批量操作。
- 與尚不相容智能合約錢包的合約互動。
- 當 ERC-4337 捆綁程序暫時不可用時回退。
BEP-414 在事務層級而不是 UserOperation 層級運行,使其更簡單,但不如完整的 AA 管道靈活。
UserOperation 生命週期
操作注意事項
- 權益監控 — 付款人的 EntryPoint 存款必須保持在最低權益閾值以上。當餘額低於配置的警告等級時,會觸發自動警報。
- 金鑰輪換 — 可以透過更新授權簽署者地址來輪換付款人簽署金鑰,而無需重新部署合約。
- 速率限制 — 後端出納員 API 應用自己的速率限制,獨立於鏈上每日贊助商限制,提供深度防禦以防止濫用。