地址格式校验器
粘贴一个地址,看它属于哪条链、格式对不对。它拦不住"地址是真的但不是你要转的那个人",但能拦下粘贴出错、链搞混这两类最常见的事故。
判定
—
粘贴一个地址开始。
它到底验了什么、没验什么(展开)
提币前校验地址格式,能帮你挡住哪些错误
转账事故里最常见的两类,一是粘贴出错(少了几位、剪贴板被恶意软件替换),二是链搞混(拿着一个以太坊系地址去走波场链)。这两类都能靠格式和校验码当场发现,而且发现的成本是零。
不同地址类型,验的深度不一样
这一点必须说清楚,因为"验过了"这三个字的含金量在不同链上差很多:
- 波场(T 开头)——做完整的校验码核对:波场地址末尾自带一段校验码,工具会按规范重新算一遍再比对。少一位、错一位都会被发现。
- 比特币(1 或 3 开头)——同样做完整的校验码核对,方法和上面一致,只是开头的类型标记不同。
- 以太坊系(0x 开头,含 ERC20 / BEP20)——只做格式判断:0x 前缀 + 40 位十六进制字符。这类地址虽然有一套大小写校验规则(EIP-55),但验算它需要一种浏览器本身不带的算法,本站也不打算为此额外加载第三方代码。所以这一类只能告诉你"长得对",不能告诉你"没打错"。
- 比特币 bc1 开头的地址(含 bc1q 和 bc1p)——做完整的校验码核对:按比特币地址规范(BIP 173 / BIP 350)重新算一遍末尾的校验码,再检查地址结构和它用的校验方式是否对得上。大小写混合的地址一律判为无效,这是规范的硬性要求,不是风格问题。
之所以把这件事写这么细,是因为"我验过了"和"我做了格式检查"是两回事,而工具如果含糊其辞,反而会让你放松警惕。这也是为什么以太坊系那一栏我们宁愿写"没验",也不把"长得对"包装成"验过了"。
bc1 地址这一栏原先是"只做格式判断"
早先这个工具对 bc1 开头的地址只看开头、字符和长度,没核对校验码。这有一个具体的坏后果:比特币的地址规范(BIP 173)明确把大小写混写的 bc1 地址列为无效,而只看字符的做法会把它判成"格式正确"——一个规范说要拒绝的地址,被工具说成没问题,这比不检查更糟。
现在这一栏改成了完整核对,并且用比特币规范(BIP 350)里公开的标准样例逐条试过:8 个正确地址全部识别无误,15 个故意写错的地址全部被拦下——包括大小写混写、新旧两种校验方式用反、版本号或长度不合规定这几类。我们选择自己写这段核对,而不是加载第三方代码:核对规则本身并不复杂,不值得为它让页面多依赖一个外部来源。
关于 ERC20 和 BEP20 为什么分不开
因为它们的地址格式完全相同——都是以太坊系的 20 字节地址。光看地址无法判断对方要的是哪条链,必须问对方或者看对方的充值页面。这也是"同一个地址,链选错了还可能有救"的原因:两条链上的这个地址,通常由同一把私钥控制。
为什么要看首尾几位
有一类恶意软件会监视剪贴板,在你复制地址之后把它替换成攻击者的地址。你粘贴出来的东西看起来正常(格式完全合法,因为那也是一个真地址),所以格式校验发现不了。唯一的防法是粘贴之后和来源核对首尾各几位。本工具会把首尾片段单独列出来方便你比对。
数据来源说明
这个页面不联网查询任何区块链数据,也不上传你输入的地址,所有核对都在你自己的浏览器里完成。其中 T 开头的波场地址和 1、3 开头的比特币地址,核对校验码要用到浏览器自带的加密功能;如果你的浏览器不支持(比如把网页存到本地再直接打开),工具会明确告诉你"校验码没有验",而不是假装验过了。bc1 开头的地址不依赖这项功能,任何情况下都会真正核对。
相关阅读
- USDT 提币选哪条链——选错链之后还有没有救
- 提币网络决策器——先定链,再验地址
- 账户安全设置——用提币白名单彻底绕开手滑
- Web3 钱包是什么——地址和私钥的关系