VeilSwap
← 全部文章
安全2026-11-078 分钟阅读

恢复钱包余额为 0:恢复高度与地址间隙怎么设(2026)

恢复后余额为 0,通常是扫描起点错了,不是钥匙丢了。四链实测块数与 BIP-44 地址间隙,附恢复高度、重扫与 gap limit 的具体步骤。

余额为零,多半是扫描设置错了,不是钥匙丢了。 2026-11-07 10:20 UTC,门罗链高 3,801,119。用传统 25 词种子恢复、恢复高度留空,钱包会从 0 区块开始读:380 万块、295,279,001,600 字节(275 GiB)的链数据库、约 14.5 年链史,只为找一笔上周才到账的兑出。私钥一直是对的,钱包只是不知道从哪看。恢复不是「装个 App 粘进词」一个动作,而是两个设置:扫描起点(恢复高度或钱包生日)和地址间隙(gap limit)。任何一个错,余额都显示 0,钱却还在链上。

恢复高度是什么、不是什么。 它是一个区块号,不是秘密,也不在种子里。同一组词在任何兼容钱包里派生出同一批密钥和地址;高度只决定从哪一块开始读。门罗官方恢复指南把两个方向说得很直:设得比第一笔入账所在块还高,钱包就检测不到全部交易,余额会错;设得低,钱包扫了不必要的块,第一次同步更久。前者是静默的,后者只是慢。这个不对称给出规则:拿不准就选低,绝不选高。

门罗:25 词种子没有生日,16 词 Polyseed 才有。 wallet2.cpp 里,只有 Polyseed 会使用内置生日;传统种子从你填的高度开始扫,留空就是 0。CLI 和 GUI 都接受 YYYY-MM-DD 日期并换算成高度,比翻区块浏览器找数字省事。写作时链高 3,801,119,出块目标 120 秒:每天 720 块、每年 262,800 块。两年前第一笔 XMR 到账的钱包,从 0 开始要翻约 525,600 块;把高度设在那笔到账前一天,只扫 720 块。

怎么选这个数字。 在区块浏览器里找到该钱包任一地址的第一笔入账,读它的区块高度,再减去一段余量。一天的块数是:比特币 144、门罗 720、莱特币 576、Zcash 1,152(Zcash 目标 75 秒一块)。门罗 1,000 块余量约 33 小时。建钱包时把高度和日期一起记下来;只记日期也够,兼容钱包会换算。旧钱包文件或缓存还在,就先导出高度再删。只记得大概月份,就往前多推几周——多扫比漏账便宜。 (Zcash 与门罗 2026 对比)

比特币和莱特币还有地址间隙。 BIP-44 让钱包扫外部地址链,连续遇到 20 个未使用地址就停下,假设后面没有。每个地址都收过款会重置计数,所以「每单用一个新地址、而且每单都真的用了」是安全的。危险在批量预生成:为将来的兑换先生成 25 个收款地址,只用第 25 个,恢复后钱包可能停在 20 号地址,余额显示 0;钱在链上,只是在恢复没有派生到的路径上。解决办法不是重装钱包,而是提高 gap limit 并重扫。Electrum 有现成命令:`getminacceptablegap` 返回「要发现所有已知地址所需的最小值」,`changegaplimit` 用来改(带确认参数)。

Zcash 用的是钱包生日,不是高度。 zcashd 从最早的密钥创建时间推导钱包生日,重扫时跳过时间戳早于「生日减一个时间窗」的块(wallet.cpp)。轻钱包则直接让你填生日高度。规则一样:设高了会漏掉更早的 note,设低了扫全链。Zcash 目标 75 秒一块,一天 1,152 块、一年 420,480 块——同样一年,块数是比特币的八倍多。屏蔽交易并不会让扫描变成可选:钱包仍然要读块才能找到 note。 (Zcash 与门罗 2026 对比)

账户模型的链把「高度」换成了派生路径。 EVM 钱包不扫链,它从 m/44'/60'/0'/0/0 和账户索引派生地址。路径或索引不同,地址集就不同,种子没错、恢复出来的钱包也可能是空的。Solana 各家钱包的路径约定不一样,把种子恢复到另一家钱包,地址可能对不上。动钱之前,先拿恢复出的第一个收款地址和你实际用过的地址比对;对不上就查路径和索引,不要盯着余额。 (SOL 换 XMR 指南)

信任一次恢复之前,六项检查。 一,把高度或生日、创建日期和种子记在一起——它们不是秘密,丢了只花扫描时间。二,宁低勿高;门罗官方指南明确说设高了会静默漏交易。三,逐字符核对一个已知地址,不只看余额。四,先在备用设备上演练,再入金。五,UTXO 链如果预生成过地址,查 gap limit;Electrum 的 `getminacceptablegap` 就是直接检查。六,同步后改高度要重扫——只改字段不会重读旧块。常见坑:旧钱包填了今天的高度;传统种子留空;把 BIP-39 的 12/24 词往门罗钱包里恢复;忘记 seed offset passphrase;把交易所充值地址当收款或退款地址——那不是你的地址。 (转错网络如何找回)

收尾:钥匙从未变过。 兑换到账只是你种子派生地址上的一个输出,所以几年后同一组词还能找回它——而恢复高度和 gap limit 决定恢复出来的钱包看不看得见它。截至写作时(2026-11-07 10:20 UTC),1,000 USDT-TRC20 报 1.610578 XMR(两条路由,150bps 优势),0.01 BTC 报 1.223795 XMR(122.3795 XMR/BTC),目录 438 种资产、65 条网络,其中 6 种需要额外 ID。报价会动,以页面实时报价为准;恢复设置不会动,建钱包时就写下来。 (XMR 换 USDT 退出路线)

常见问题

恢复后的门罗钱包为什么显示 0?

几乎都是因为恢复高度设在第一笔入账之后,而不是种子错了。把高度设到那一块或更早(提前一天是 720 块),重扫,余额就会出来。门罗官方指南明确说:设高了会静默漏交易,设低了只是第一次同步更久。

去年建的钱包,恢复高度该填多少?

找到第一笔入账所在块,再减去余量:门罗一天 720 块、比特币 144、莱特币 576、Zcash 1,152。只记得日期也行,门罗 CLI 和 GUI 接受 YYYY-MM-DD 并自动换算。拿不准就选更低——多扫一点比漏掉一笔兑出便宜。

BIP-44 的地址间隙会影响兑换到账吗?

只有在你连续预生成了 20 个以上未使用地址时才会。某个地址收到款就会重置计数,所以「每单一个新地址、而且真的用了」是安全的。如果批量预生成、只用后面某一个,恢复后的钱包可能停在 20 号;提高 gap limit 并重扫。Electrum 的 `getminacceptablegap` 会返回所需最小值。

钱包同步完之后还能改恢复高度吗?

数字可以改,但钱包不会自动重读旧块,必须重扫。monero-wallet-cli 里的命令是 `rescan_bc`,GUI 也有同样的重扫入口。只改字段不会重读链,所以改低之后一定要从新的高度重扫。

准备好换币了吗?

无账户 · 无 KYC · 无邮箱

立即兑换
恢复钱包余额为 0:恢复高度与地址间隙怎么设(2026) — VeilSwap