地址格式速查:95、42、34 个字符分别属于哪条链
我们在真实区块里数了地址形态:34 个字符覆盖四个互不相干的链族,42 个字符覆盖两个。附上本站对打错地址返回的原文报错。
两个长度相同的地址,可能属于毫无共同点的链。2026-10-27 我们取了五条链的最新区块数形态:比特币块 973,380 有 49 个可支付输出,只有三种长度——20 个 42 字符、22 个 34 字符、7 个 62 字符;莱特币块 3,202,605 的 45 个输出分布在 43、34、63 三个长度上;而波场一个块 87,479,169 里 524 笔交易的地址全是 34 个字符、以 T 开头。字符数只能缩小范围,永远说不出是哪条链。丢币就发生在这段空白里。
按前缀和长度分类。 比特币:1… 与 3… 是 34 个字符的 base58check;bc1q… 单签 42 个字符、多签 62;bc1p… 62 个字符,装的是 taproot 公钥。莱特币:L…、M…、3… 是 34;ltc1q… 单签 43、多签 63;ltcmweb1… 是 121 个字符的 bech32,住在扩展块里。Zcash:t1… 与 t3… 是 35 个字符;zs1… 是 Sapling 屏蔽地址;u1… 是统一地址;d-… 是 34 个字符的空数据,长得像地址,收不了钱。门罗:4… 是主地址、8… 是子地址,都是 95 个字符;集成地址 106 个字符,仍然以 4 开头。波场:T… 永远是 34。EVM 系:0x 加 40 个十六进制字符,永远 42。Solana:base58、无前缀,32 字节编码成 43 到 44 个字符。 (SOL 换 XMR 指南)
校验和到底覆盖了什么。 这里有四套机制,失败方式各不相同。比特币 legacy、莱特币 legacy、Zcash 的 t 地址和波场都用 base58check:把负载做两次 SHA-256,取前四字节附在末尾,整体做 base58。波场的负载是 21 字节,因为它以字节 0x41 开头——所以每个 T 地址解码出来都是 0x41 前缀的账户。门罗完全不同:按 8 字节分块编码,每块变 11 个 base58 字符(末尾 5 字节变 7 个),四个校验字节是 Keccak-256 的前四字节。这就是门罗地址是 95 个字符、不是 94 也不是 96 的原因——长度是算出来的,不是规定的。SegWit 用 bech32:对可读部分和数据做 BCH 式校验,但有两个常数——v0 输出必须用代表 bech32 的那个,v1 及以后必须用 bech32m。EIP-55 干脆没有校验字节:它把校验藏在十六进制字母的大小写里,所以 0xdac1… 和 0xdAC1… 是同一个账户的两种写法,一个未校验、一个已校验。 (BCH 换 XMR 指南)
看链上实际长什么样。 比特币块 973,380:20 个 42 字符的 P2WPKH、14 个 P2SH 与 8 个 P2PKH 都是 34 字符、5 个 P2WSH 与 2 个 P2TR 都是 62 字符——62 字符这一组里塞了两种脚本,只能靠前缀和校验和变体区分。块 973,390 类似:44 个输出里有 41 个可支付输出——24 个 42 字符、12 个 34 字符、5 个 62 字符。莱特币块 3,202,605:29 个 43 字符的 P2WPKH(比比特币多一个字符,因为 bech32 载荷落进了另一段区间)、8 个 P2PKH 与 7 个 P2SH 是 34、1 个 P2WSH 是 63。Zcash 连续 100 个输出:80 个 t1 公钥哈希与 14 个 t3 脚本哈希,都是 35 个字符,外加 6 个 34 字符的 d- 空数据输出。波场块 87,479,169:524 笔交易,每一个地址都是 34 个字符、T 开头,分布是 201 笔普通转账、118 笔合约调用、92 笔解除委托、72 笔委托、41 笔 TRC-10 转账。 (Zcash 与门罗 2026 对比)
本站校验器对每种字符串的反应。 我们把下单接口用的校验器编译出来跑了一批向量。门罗:95 字符的真实主地址、以 8 开头的 95 字符子地址、106 字符集成地址全部通过;把主地址末位改掉则返回「address checksum mismatch — a character was likely mistyped or the address was truncated」。比特币:34 字符 P2PKH、42 字符 P2WPKH、全大写 bc1q 都通过(bech32 允许全大写),混合大小写被拒,把 taproot 程序改用 bech32 常数编码会被拒,报「v1+ segwit address must use bech32m」。EVM:全小写与 EIP-55 混合大小写通过,改一个字符报「EIP-55 checksum mismatch — a character was likely mistyped」,全大写 0X 直接拒绝。波场:区块 87,479,169 里的真实 T 地址通过,改一个字失败,EVM 地址粘进来报「not a TRON address (expect T followed by 33 base58 characters)」。Zcash:t1 与 t3 通过、改一个字失败;zs1… 与 u1… 按设计只做形状检查。线上下单接口在任何上游之前执行同一道闸:坏校验和的门罗收款返回 HTTP 400「invalid_destination_address: address checksum mismatch…」,把莱特币地址填进比特币收款返回「not a Bitcoin address (expect bc1…, 1… or 3…)」。地址上限 256 个字符,memo 128。 (Zcash 与门罗 2026 对比)
实践中六种翻车方式。 一,相信 34 个字符:比特币 1… 与 3…、莱特币 L… 与 M…、波场 T…、Zcash 的 d-… 都是 34,只有首字符能分开它们。二,相信 42:比特币 P2WPKH 和所有 EVM 地址都是 42,一个是 bech32 系、一个是十六进制——同一个界面上同时接受两者的钱包,总有一天会把币打到错的链上。三,为了「好读」去改 bech32 或 EIP-55 地址的大小写:全大写 bech32 合法,混合大小写不合法,而 EVM 上的混合大小写本身就是校验和。四,从 Zcash 浏览器里复制 d- 开头的串:那 100 个输出里有 6 个是空数据负载,不是可支付地址,校验器会拒。五,把门罗集成地址当成子地址的等价物:字段两者都收,长度是 95 或 106,但上游对 106 字符形式的支持并不一致,而且本站 546 个资产里只有 7 个需要 memo。六,向一个打错的 Zcash zs1… 或 u1… 地址转账:校验器只查形状,错字在本地活下来,到上游才死,或者根本不死。 (Zcash 与门罗 2026 对比)
必须说清楚的那个缺口。 调度器是按 ticker 和网络选校验器的。门罗、比特币、Zcash、波场、Solana 和 EVM 资产都接了,莱特币没接。上面那次实测里,LTC 收款字段接受了真实的 M 段地址、合法的 ltc1q 地址、一个比特币 1A1z… 地址,以及改掉一个字符的 ltc1q 地址——四个都返回 ok。也就是说 LTC 这条线上校验和防护目前在我们这边并不存在,这个字段里的复制粘贴错误会带着「体检合格」的结论一路到上游。在这个分支补上之前,LTC 地址请手工核:L…/M… 数 34 个字符,ltc1… 数 43 或 63,末六位要跟生成地址的那个钱包对比,而不是跟剪贴板对比。同样的谨慎适用于那六个族以外的资产——狗狗币、BCH 的地址最多只做形状检查,那些字段会接受任何钱包都花不掉的字符串。 (BCH 换 XMR 指南)
粘之前那五秒钟。 把前缀对上字段旁边写着的网络,而不是你脑子里的网络——1… 和 bc1q… 都是比特币,但 L… 不是。按上面的表数长度:在期望 42 个字符的字段里放一个 34 字符的串,那是粘错链,不是打错字。永远不要手打地址,也永远不要把剪贴板当成事实来源:在掌握私钥的那台设备上比对末六位。EVM 收款地址保持你钱包显示的大小写原样。门罗是 4… 或 8… 的 95 个字符,集成地址 106。Zcash 要清楚 zs1… 与 u1… 只做形状检查,那里的错字只能靠你自己抓。如果某个资产需要 memo,光有地址不等于目的地——本站 546 个资产里有 7 个需要那第二个字段。 (Zcash 与门罗 2026 对比)
这些都不玄。它就是地址格式的普通算术,而它是兑换里最后一个你还能完全控制的地方:充值一旦广播出去,谁也改不了方向——不是我们,不是上游,也不是链本身。截至写作时(2026-10-27 约 14:10 UTC),本站报 100 USDT-TRC20 兑 0.14951806 XMR、5,000 USDT 兑 8.35131069 XMR,折合每 XMR 668.8 与 598.7 美元,现货 587.79——小额单带着大约 15 美元的固定成本,这是另一个问题。1 XMR 卖出 571.095008 USDT;0.05 BTC 换到 6.70164415 XMR(每 BTC 134.03288 XMR);10 LTC 换到 0.93300801 XMR(每 XMR 10.7183 LTC,现货 10.6397);1 ZEC 换到 2.08812226 XMR。实时价会动,以页面为准。你粘贴的那个地址,是订单里唯一没人能重新报价的数字。 (XMR 换 USDT 退出路线)