网页找钱包,除了往 window 上挂接口、往 iframe 里发消息,还有第三条路:CAIP-294 让扩展钱包与区块链库各自广播事件,一个 announce 自报家门、一个 prompt 点名询问,靠 UUID 路由、靠 JSON-RPC 装载荷。本文拆解这条事件总线路线的分工、时序与防指纹设计,并讲清它与 EIP-6963、CAIP-295 的关系。
网页找钱包,除了往 window 上挂接口、往 iframe 里发消息,还有第三条路:CAIP-294 让扩展钱包与区块链库各自广播事件,一个 announce 自报家门、一个 prompt 点名询问,靠 UUID 路由、靠 JSON-RPC 装载荷。本文拆解这条事件总线路线的分工、时序与防指纹设计,并讲清它与 EIP-6963、CAIP-295 的关系。
把收款地址换成攻击者地址,是硬件钱包也防不住的链下攻击。SLIP-0024 让受信任签名方把商家名、地址和金额打包签名,硬件钱包验签后屏幕上显示商家名字而不是那串十六进制。本文拆解 nonce 防重放、退款与购币备忘的地址归属校验、BIP-0021 链接里的 slip24sig 字段,以及受信方信任从哪来的边界。
机密交易的链上记录金额是一团 commitments,钱包却能一键显示你收了多少。靠的是盲化密钥:SLIP-0077 规定主盲化密钥用 SLIP-0021 的对称密钥树从助记词派生,每个收款脚本再拧出一把一次性盲化私钥。本文拆解派生链、双重 SHA-256 共享 nonce 与可交给审计的边界,并说明这份草案的适用范围。
同一句助记词导入两款 Cardano 钱包,地址可能完全不同,问题常出在种子到主节点这一步。SLIP-0023 用 universal 与 Icarus 两套方案规范了这条路:曲线名当盐的 HMAC 派生与 PBKDF2 四千零九十六轮的老兼容路径,各自配了位操作和链码取法。本文拆解两套算法、什么时候用哪套,以及恢复后地址对不上时的排查顺序。
硬件钱包给数据做对称加密时,密钥从不离开设备,要不要按确认键也不是软件说了算。SLIP-0011 定义的 CipherKeyValue 原语把派生路径、提示词和两个方向的确认选项一起搅进密钥推导,换输入绕确认在数学上走不通。本文拆解它的输入清单、E1/E0 与 D1/D0 确认位、AES 加密细节,以及 SLIP-0015、SLIP-0016 如何站在它肩膀上。
SLIP-0017 让确定性钱包按"服务 URI 加索引"派生专属密钥对,再用 ECDH 与对方算出会话共享秘密,备份沿用助记词那一套。本文拆解服务身份两元组、URI 哈希切成 m/17 派生路径的六步算法、GetECDHSessionKey 的调用逻辑,并说明它与登录用 SLIP-0013 的分工以及 ed25519 类曲线的限制。
SLIP-0025 为 CoinJoin 钱包定义了一条与普通账户刻意分开的派生层级 m/10025,脚本类型固定为 1、地址形态与 BIP-86 的 P2TR 相同,但 XPUB 释放必须逐层确认、内链地址不应展示。本文拆解六层路径各字段取值、为什么公开账户级 xpub 比常规场景风险更高,以及"链上看不出区别"这一设计目标的含义。
SLIP-0022 为 HD 钱包类硬件密钥定义了一种可互操作的 FIDO2 credential ID 格式:四字节版本、十二字节初始向量、加密的凭证数据与十六字节认证标签,让设备近乎无状态地把注册记录托管给对方网站。本文拆解这四段结构、CBOR 编码的九个字段、默认算法 ES256 与 P-256,以及密钥派生路径 m/10022 怎么由认证标签反推。
CoinJoin 这类需要签署外部输入的场景里,攻击者可以把你的真实输入谎标为"别人的"来骗过硬件钱包显示金额。SLIP-0019 用 SLIP-0021 派生的保密身份密钥对 scriptPubKey 做 HMAC,生成一段第三方可验证的所有权证明。本文拆解证明体结构、确认标志位与承诺数据,并解释这种证明如何同时防显示欺骗与注册占位攻击。
CAIP-171 给"与钱包之间一次打开的会话"定义了一个跨实现通用的标识符:一个字符串,但必须同时满足唯一、可关闭、状态变化中不变、JSON 往返一致、至少 96 位熵五条硬性质。本文拆解它要解决的浏览器沙箱与 Topic 型协议各说各话的问题,逐条解释每条性质防的是什么故障,并说明 Draft 草案阶段对用户能期待什么。