BIP-44钱包派生路径怎么读? 图 1
BIP-44钱包派生路径怎么读? · 图 1

BIP-44的五层路径分别回答用途、币种、账户、收款/找零和地址序号。相同助记词下,任何一层不同都可能生成完全不同的地址。

本文用一条完整路径逐层解释,并把账户发现与gap limit单独处理;脚本类型差异不会被coin_type自动解决。

一手规范给出的结论

五层路径树

BIP-44路径分为purpose、coin_type、account、change和address_index五层,前三层使用硬化派生。

硬化与非硬化

change为0表示外部收款链、1表示内部找零链,最后地址索引用非硬化方式递增。

收款和找零

账户发现按外部链扫描并使用20个连续未使用地址的gap limit,但具体钱包实现可能扩大或改变扫描策略。

m/44’/60’/2’/1/7逐层读

这条路径表示:遵循purpose 44;coin_type 60对应以太坊;使用第三个账户account 2;进入内部找零链change 1;取该链索引7。前三层带撇号,使用硬化派生;change和address_index不硬化。

change约定用途恢复时怎么扫
0对外收款地址用于账户发现与gap limit
1内部找零地址发现账户后继续扫描

账户发现通常从account 0开始,只要外部链出现历史就继续下一个账户;遇到一个从未使用的账户时停止。地址扫描常以连续20个未使用地址作为gap limit,但钱包可以采用更宽策略。恢复时应记录每个账户最后命中位置,不能只凭首页余额判断。

三个容易造成错误结论的做法

  • 不要这样做:coin_type相同就认为脚本类型也相同
  • 不要这样做:只扫描account 0和change 0
  • 不要这样做:自动把相似路径“修复”后直接导入高价值钱包

收款和找零实操清单

  1. 记录原钱包脚本用途、coin_type和账户编号
  2. 从account 0的外部链开始派生地址
  3. 查询历史并在连续未使用窗口内推进索引
  4. 发现账户后同时扫描外部与找零链
  5. 对比原设备导出的主指纹和样本地址

用三条路径验收硬化与非硬化

第一条是成功路径。选择一个已经知道结果的对象,执行“记录原钱包脚本用途、coin_type和账户编号”和“从account 0的外部链开始派生地址”,同时保存原始输入、原始输出、网络或版本、取证时间。另一位复核者只能读取这些材料,不读取页面上的结论;他需要独立完成五层路径树解释。两次结果一致,说明这个样本可复现,但不能据此承诺所有环境都得到相同结果。

第二条是单变量反例。故意制造“coin_type相同就认为脚本类型也相同”,并确保其余字段与成功样本完全相同。系统应明确指出哪一项校验失败,保留错误码、返回值或字节差异;若它自行切换默认值、吞掉未知字段或沿用缓存,测试就算失败。然后再针对“只扫描account 0和change 0”建立独立反例,两个错误不要同时注入。

第三条是状态切换。先完成“查询历史并在连续未使用窗口内推进索引”取得旧状态,再改变一个会影响账户发现边界的条件并重新查询。旧证据不能被覆盖,新证据也不能倒推旧时点。页面要把对象主键、上下文和时间放在结果旁边,让读者知道结论针对哪次观察。

最终交接包应包含五层路径树原文、硬化与非硬化推导、收款和找零验收和账户发现边界说明。若出现“自动把相似路径“修复”后直接导入高价值钱包”,发布状态只能是待核验,并回到“发现账户后同时扫描外部与找零链”补证据。这样可把底层事实错误、环境变化与界面展示错误分开定位。

来源、增量与风险边界

  1. Bitcoin Improvement Proposals:正式接口、字段与规范语义。
  2. BIP-43:实现路径、兼容性或安全边界。

本文资料读取于2026-07-20。coin_type和账户编号相同不代表不同钱包一定生成相同脚本类型,purpose与脚本标准也必须一致。

站内相邻主题可继续阅读:BIP-32派生输出描述符。派生排查应离线进行,绝不在网站粘贴助记词或私钥。路径猜测先用公开地址验证,避免写入或转账。