网页里指挥钱包的规范层:CIP-95 给 Cardano 钱包桥补上的治理扩展 图 1
网页里指挥钱包的规范层:CIP-95 给 Cardano 钱包桥补上的治理扩展 · 图 1

卡达诺网页钱包接口在 2022 年曾有一场著名的”双注入风波”,而 CIP-95 代表的则是另一件事:给钱包桥补上链上治理时代的接口层。这份全称 Web-Wallet Bridge — Conway ledger era 的提案 2022 年 2 月 24 日创建,状态 Active,作者署名来自 Intersect 的 Ryan Williams,实现者名单一字排开列着 Eternl、Gero、Lace、Mesh、NuFi、Typhon、Yoroi 等十余个钱包与工具——它-extension 了更广为人知的 CIP-30,把 Conway 账本时代新增的治理动作装进网页能调用的 JavaScript 接口。

理解 CIP-95 得先摆正 CIP-30 的位置。后者定义了网页发现钱包、请求授权、签名交易的通用桥接,但它写就的时间早于 Conway 时代。CIP-1694 治理升级给卡达诺引入了大量新角色——DRep 代表、存款、投票构件、治理程序等——钱包若只有 CIP-30 的接口,网页工具就无法替用户完成”注册成 DRep""对提案投赞成票""领取治理奖励”这类操作。CIP-95 的摘要部分把动机说得直白:让普通持币者不必理解账本细节也能用上治理功能,网页栈需要一个标准化的接口层。

接口设计的延续性体现在命名与结构上。CIP-95 定义的新方法挂在与 CIP-30 相同的 data signature 与完整交易签名框架之上:钱包在 enable 之后的对象上暴露一组治理方法,涵盖 DRep 注册与更新、对治理投票构件签名、存款与取款、以及查询账户治理状态等能力;所有签名产物仍是标准的 CIP-8 型数据签名或完整交易,验证规则不因走网页通道而打折。换言之,它是”同样的地基加盖新楼层”,网页应用通过能力探测判断钱包是否支持治理扩展,不支持则优雅降级——这个探测-降级模式是双注入风波后生态对兼容性最一致的答卷。

对 NFT 收藏者,治理扩展看似遥远,实则连着两件切身的事。第一件是委托:不愿自己研究每轮投票的持有者可以把投票权委托给 DRep,而委托动作的最后一公里——钱包在治理站点页面上弹出”为 X 注册 DRep”的确认窗——正是 CIP-95 接口在工作;看不到这个确认窗的钱包,说明它对治理操作只支持内置界面。第二件是参数:卡达诺的许多链上参数(包括与资产策略、存储成本相关的链上治理项)由投票修改,网页钱包能否直接展示”当前账本参数”与”在途投票”,也取决于这套查询接口。

核对钱包是否支持时,一个务实的办法是打开官方治理门户或任意一个 DRep 工具站,尝试发起一次委托——能走通签名流程说明实现已就位;报错”方法不存在”则回到钱包设置里找治理开关。生态实现名单在提案头部公开,选型时以当前文档与各钱包公告为准,因为这份规范仍在被多家钱包持续迭代。

顺手把 CIP-30 与 CIP-95 的关系画成一张能力地图。CIP-30 给出桥的承重墙:enable 授权、getUtxos 取余额、signTx 签交易,外加 data signature 与 getSupportedCapabilities 两类能力探测;CIP-95 在此之上加盖治理翼——注册与更新 DRep 的构件构造与签名、对 CIP-1694 各类投票构件签票、存款与取款动作、读取账本治理参数与在途投票的查询。网页应用的标准流程因此是三段式:先探测钱包声明的能力集,支持治理扩展的走 CIP-95 方法,不支持的把功能降级成”引导用户去钱包内置界面手动操作”。这套探测-降级模式是规范层面对碎片化的回答:所有钱包不必同时上齐功能,页面也不必为每家钱包写分支。对开发者还有一条排错线索:治理方法名与返回构件的 CDDL 定义直接写在提案正文,签名验不过时逐字段对照 CDDL 比凭感觉调试快得多——构件编码类错误九成出在标签集与哈希顺序上。

需要强调的安全面:治理操作与普通转账共享同一套确认界面,攻击者曾利用用户对”弹窗签名”的麻木诱导其签署恶意治理交易。防御要点是把确认窗当合同读——CIP-95 的每类治理动作在钱包内都有可读意图(注册 DRep、投票、提取),弹窗却显示原始构件时,宁可换官方入口手工操作,也不要在模糊界面里点确认。接口标准化提高了兼容性,但也让”界面友好”与”内容可疑”在观感上更难分辨,最终的责任落在读确认窗的人身上。

本文为机制说明,不构成任何投资建议。