清晰签名
大多数钱包让你面对一墙十六进制点批准,然后祈祷没事。「盲签」——批准你其实读不懂的 调用——是大量钱包被掏空的原因。Vela 的答案是清晰签名:在你签名之前,这笔交易 会被解码成你看得懂的东西。
你会看到什么
不是原始 calldata,而是:
- 意图 —— 这笔交易在做什么:转账、授权、兑换 等等。
- 实质内容 —— 涉及的金额和地址;代币金额按真实单位显示,收款方只要有名字 就解析成名字。
- 细节 —— nonce、截止时间和原始 calldata,需要时随时展开,而不是劈头盖脸糊你 一脸。
- 风险提示,带颜色标识,让该吓人的东西看起来就吓人。
它是怎么做到的(ERC-7730)
Vela 用 ERC-7730 描述符来解码合约调用和 EIP-712 结构化数据——描述符是一份份小而可共享的定义, 说明某个合约的函数到底是什么意思。
- 当存在针对该合约的专用描述符时,这笔交易会被标记为已验证,并标出合约名。
- 没有的时候,Vela 会退回到常见形态的标准描述符——ERC-20 代币、ERC-721 NFT、 ERC-4626 金库和 ERC-2612 permit——所以日常操作大多仍然解得开。
代币金额按该代币链上真实的小数位来格式化。Vela 绝不会想当然按 18 位处理; 如果它没法确认小数位,就会显示数值但标注为未验证,而不是靠猜。
风险等级
每一笔解码后的交易都会得到一个风险等级,好让危险的模式跳出来:
- 注意 —— 授权和 permit:你正在交出花钱的权限。
- 危险 —— 真正有风险的那些,比如无限额度的代币授权。
- 质押、存入这类日常操作,风险等级更低。
当 Vela 解不开一个调用
诚实比一块干净的屏幕更重要。当没有 ERC-7730 描述符、但这个函数出现在公开的选择器 数据库里时,Vela 会做一次通用解码,并在一条「注意」横幅下标注为尽力而为—— 解出来了,但没有被验证。如果连这一步都失败,或者 Vela 只能解开交易的一部分,它 不会假装自己看懂了。
为什么这件事重要
自托管意味着没有人能替你撤回一笔糟糕的交易。防线不是客服——而是在批准之前 就搞懂你批准的是什么。清晰签名把「相信这团看不懂的东西」变成「这就是它具体会做的 事」。它在 Vela 整体安全模型里的位置,见白皮书。