Tangem Wallet 推出 Smart Gas:用稳定币支付网络手续费

Tangem Wallet 现已支持 Smart gas 交易,适用于 Ethereum、BNB Smart Chain、Polygon、Arbitrum One 和 Base。

Author logo
Patrick Dike-Ndulue
Post image

许多用户从中心化交易所转向自托管钱包时,常常遇到相同的难题:他们将代币提到新钱包,尝试发起转账,却发现无法操作。因为转账需要用网络原生币(如 Ethereum 上的 ETH、BNB Smart Chain 上的 BNB、Polygon 上的 MATIC)支付 Gas 费,而他们手中并没有这些币。
 

这可不是小麻烦。用户还需要额外获取少量原生币,才能转移自己的资产。这意味着要找支持小额购买的交易所,支付可能高于所需金额的提现手续费,或者找水龙头或朋友帮忙转一点币。对许多刚接触自托管的钱包用户来说,这一步就让他们望而却步。

我们集成了 Smart gas 交易,彻底消除这个障碍。

什么是 Smart gas 支付?

Smart gas 支付让用户可以用主流稳定币(如 USDC 或 USDT)直接支付网络手续费,无需原生币。在支持的网络中,只要你有 USDC 或 USDT,就能直接用它们支付交易 Gas 费。

举例:Alice 从 Coinbase 提取 100 USDT 到她在 Ethereum 网络上的 Tangem Wallet。她想转 50 USDT 给 Bob,但钱包里没有 ETH 无法支付 Gas 费。通过 Smart gas 交易,App 会检测到她的 USDT 余额,并提供用 USDT 支付手续费的选项。Alice 确认并签名后,50 USDT 会转给 Bob,同时约 0.80 美元的 USDT 作为网络手续费被扣除。她全程无需准备 ETH。

支持的网络与代币

Smart gas 交易目前支持已升级 EIP-7702(Pectra 升级)的主流 EVM 网络。我们优先选择流动性高、Gas 费可预测、用户常用的美元稳定币,方便用户从交易所提币后直接使用。

 

网络

支持的手续费代币

Ethereum

USDC, USDT

BNB Smart Chain

USDC, BSC-USD

Polygon

USDC, USDT0

Arbitrum One

USDC, USDT0

Base

USDC

Smart gas 交易的底层原理

该功能基于 EIP-7702(“为 EOA 设置代码”),随着 2025 年 5 月的 Pectra 升级上线。这一标准极大拓展了 Ethereum 账户的能力。

EIP-7702 如何工作

传统上,Ethereum 有两类账户:由私钥控制的外部账户(EOA),和包含可执行代码的合约账户。EOA 简单,只能持有资产和签名交易,无法执行自定义逻辑;合约账户能执行任意代码,但需要部署,安全属性也不同。

EIP-7702 弥合了两者的差距。它允许 EOA 通过签署授权消息,临时委托智能合约代码。关键是,这种授权不需要链上交易。用户只需签名,别人也能用这个签名发起交易。

这就是 Smart gas 交易成为可能的原因:用户可以授权把 Tangem 的合约逻辑临时附加到账户,无需为授权本身支付 Gas 费。

Tangem 智能合约实现

我们选择自研智能合约,而非直接采用现有方案。市面上的通用实现不是用户成本更高(有额外开销),就是功能过多导致攻击面扩大,不适合我们的场景。

我们的实现采用了两个合约:

Tangem7702Smart gasExecutor

这是由用户 EOA 委托的合约,主要负责:

  1. Signature verification — 验证 Smart gas 交易参数是否由账户持有者通过 EIP-712 类型数据签名
  2. Transaction execution — 执行用户发起的交易(如代币转账)
  3. Fee compensation — 计算实际消耗的 Gas,并将对应手续费代币转给收款方

合约只保留极简的存储,仅用于重放保护的 nonce。通过 Solidity 自定义存储布局,防止用户账户附加其他合约时发生存储冲突。

// Core data structures
struct Transaction {
    address to;
    uint value;     
    bytes data;
}
struct Fee {
    address feeToken;           // Token used for fee payment
    uint maxTokenFee;           // Maximum fee in token units
    uint coinPriceInToken;      // Native currency price in token
    uint feeTransferGasLimit;   // Gas limit for fee transfer
    uint baseGas;               // Fixed overhead (signature verification, nonce update)
    address feeReceiver;        // Fee collection address
}
struct Smart gasTransaction {
    Transaction transaction;
    Fee fee;
    uint nonce;    // From user's contract storage
}

关键常量:

  • BASE_GAS = 60,000 — 签名验证、nonce 更新和执行框架的固定 Gas 开销

Tangem7702EntryPoint:入口合约

我们还部署了一个入口合约,作为中继执行 Smart gas 交易的接口。其作用简单但关键:在转发交易前,验证用户地址附加的合约代码是否与我们预期完全一致。

function executeTransaction(
    Smart gasTransaction calldata gasslessTx,
    bytes calldata signature,
    bool forced,
    address executor
) external

其中 forced 参数用于控制当手续费转账消耗的 Gas 超过 feeTransferGasLimit 时的行为:

  • false — 回滚交易(用于 Gas 估算阶段)
  • true — 触发事件并继续执行(用于实际执行,因 Gas 已消耗)

这样可以保护我们的中继基础设施。由于我们需要先行垫付实际 Gas 费,再从用户手续费代币余额中收回补偿,所以必须确保附加的合约能正确计算并转账手续费。入口合约确保只与运行我们审计过代码的账户交互。

手续费参数

你在批准 Smart gas 交易时,会签署包含以下内容的消息:

  • Fee token:用于支付手续费的稳定币(如 USDC)
  • Token price:手续费代币与原生币的兑换比例,用于计算等值成本
  • Maximum fee:你愿意支付的手续费上限(Tangem App 会显示此值)
  • 其他用于重放保护和交易细节的参数

手续费上限让用户对成本有预期。实际收取的手续费会根据真实 Gas 消耗结算,通常低于上限。

安全模型

我们评估过现有方案,最终选择自研合约是出于安全考虑。我们的合约专为代币转账和手续费支付设计,功能单一,更易于审计和验证安全性。

对比因素

ERC-4337

Tangem 实现

Gas 开销

较高(需要 Bundler 基础设施)

较低(直接执行)

攻击面

更大(功能更多)

极小(单一用途)

存储冲突风险

取决于具体实现

通过自定义存储布局规避

可升级性

通常支持(有管理员密钥风险)

不可升级

安全审计

该合约已由专注于智能合约安全的区块链安全公司 Pessimistic 审计。完整审计报告可在 GitHub 查看。

用户体验

尽管底层技术复杂,用户实际体验却非常简单:

  1. 你在支持的网络发起转账、兑换或通过兑换转账
  2. 如果你有支持的稳定币余额,App 会提供用该代币支付手续费的选项
  3. 你会看到以稳定币计价的手续费上限,并确认交易
  4. 在后台,你会分别签署 EIP-7702 授权(将 Tangem 智能合约附加到账户)和 Smart gas 交易参数
  5. 签名包发送到我们的后端,由后端提交到链上
  6. 交易执行后,手续费会从你的稳定币余额中扣除

对你来说,这就是一笔普通转账,只是无需准备原生币就能完成。

限制与注意事项

目前 Smart gas 交易仅支持文中列出的稳定币。我们根据流动性、普及度和技术兼容性筛选了这些币种。其他限制包括:

  • 手续费溢价:Smart gas 交易因合约执行和币价换算,成本可能略高于原生币支付。我们已尽量优化合约,降低这部分溢价。
     
  • 网络支持:EIP-7702 仅在已完成 Pectra 升级的网络可用。我们只在既支持 EIP-7702 又有稳定币流动性的网络上线了该功能。

总结

Smart gas 交易消除了自托管过程中最让人头疼的“Gas 门槛”。借助 EIP-7702,我们让用户仅凭已有代币即可完成链上操作。

对于从交易所转入的钱包用户来说,提币后资产即可直接使用。对整个生态而言,这是让加密基础设施更贴近用户、无需先懂 Gas 机制就能自由转账的重要一步。

Author logo
作者 Patrick Dike-Ndulue

Senior editor covering crypto, onchain equities, and technology.

Author logo
經審核 Rukkayah Jigam

Writer & editor covering digital assets and product updates.