importdescriptors如何导入观察钱包? 图 1
importdescriptors如何导入观察钱包? · 图 1

importdescriptors导入的是钱包识别和扫描规则。RPC返回success只说明配置被接受,历史余额是否完整还取决于timestamp、range、重扫进度和节点保留能力。

本文给出观察钱包请求骨架和逐项响应判断,不重复输出描述符语法基础。

一个观察钱包请求骨架

[
  {
    "desc": "wpkh([fingerprint/84h/0h/0h]xpub.../0/*)#checksum",
    "timestamp": 1690000000,
    "active": true,
    "range": [0, 999],
    "next_index": 0,
    "internal": false,
    "label": "cold-watch"
  }
]

示例中的fingerprint、xpub和checksum必须来自本地getdescriptorinfo或可信钱包导出,不能照抄。若timestamp写now,节点不会为它扫描旧区块;范围描述符缺range可能无法覆盖历史地址。返回数组与请求逐项对应,应同时读取successerrorwarnings

活动外部描述符用于后续收款地址,内部描述符用于找零。导入后要查看钱包扫描状态,随机抽取已知历史地址和交易验证;扫描未完成前,零余额不能当作没有资金。

从输入到验收

阶段动作
准备备份钱包、原始描述符和主指纹
读取用getdescriptorinfo补校验和并确认是否为range
解释根据最早使用时间设置timestamp,不确定时保守提前
复核逐项读取success、warnings和error
收尾等待重扫结束,再用已知交易和地址抽样验收

事实与证据边界

核验项可确认结论
请求字段表importdescriptors接收描述符请求数组,每项可设置desc、timestamp、active、range、next_index、internal与label。
时间戳与重扫timestamp决定钱包从何时开始扫描链上历史,填now会跳过旧区块;范围描述符需要配置range,活动描述符用于后续地址生成。
观察钱包步骤导入成功只说明钱包接受配置,不证明已发现全部历史交易;应核对逐项success与warnings,并等待对应重扫完成。

请求字段表如何做双盲复核

作者先依照“备份钱包、原始描述符和主指纹”收集一份不含结论的证据包,内容包括目标对象、网络或版本、完整返回、查询时点和使用的工具。复核者收到材料后,按“用getdescriptorinfo补校验和并确认是否为range”自行解释时间戳与重扫。双方最后才交换结果;如果结论不同,优先比较原始字段与口径,不能用页面颜色或多数意见裁决。

接着建立反例包。反例一只模拟“用timestamp=now导入旧钱包后看到零余额”,反例二只模拟“范围描述符没有range或范围小于历史索引”。每个反例必须说明预期拒绝点和实际拒绝点。程序若把错误输入修正后继续执行,应把修正动作完整展示;静默修正会让用户误以为原输入有效,因此仍判为不通过。

为了覆盖失败与恢复,还要在状态改变前后各保存一次“根据最早使用时间设置timestamp,不确定时保守提前”的结果。两份证据必须有独立时间和上下文,不能只留最终快照。若变化由缓存、节点或索引造成,报告应注明观察层级,而不是直接断言链上事实改变。

上线页面把原始证据、解释规则和结果状态拆开呈现。原始栏不做舍入和自然语言改写;解释栏写清公式、版本或字段映射;结果栏允许已确认、被否定和待核验。触发“忽略warning并重复导入,制造多组重叠配置”时,按“逐项读取success、warnings和error”重新取证,禁止继续自动处理。

故障与停止条件

误判正确处置
用timestamp=now导入旧钱包后看到零余额保留原始证据,停止外推并按本文步骤复核
范围描述符没有range或范围小于历史索引保留原始证据,停止外推并按本文步骤复核
忽略warning并重复导入,制造多组重叠配置保留原始证据,停止外推并按本文步骤复核

来源、增量与风险边界

来源本文用途
Bitcoin Developer Reference正式接口、字段与规范语义
BIP-380实现路径、兼容性或安全边界

本文资料读取于2026-07-20。节点裁剪状态、描述符校验和和钱包加密状态可能影响导入,正式操作前应先备份钱包与原始描述符。

站内相邻主题可继续阅读:输出描述符观察钱包边界。观察钱包不含私钥,但会暴露地址体系和余额隐私。导入前备份,裁剪节点或加密钱包限制未排除时不要依赖零余额结论。