
地址格式的适用范围
数字货币钱包地址格式的适用条件有哪些?主要包括地址所属的区块链、编码规则、所对应的输出条件或账户类型,以及软件能否正确解释这些信息。不同系统赋予地址的含义不同,不能只凭字符串长度判断是否适用。本文以比特币P2PKH和以太坊账户地址为例,不将这些规则扩展为所有数字货币的统一标准。
比特币:格式需要对应输出条件
Bitcoin Developer Guides的交易说明指出,P2PKH地址将公钥哈希与地址版本、校验信息编码为Base58字符串。软件解析地址后,可以构造相应的交易输出;之后使用该输出,需要提供符合条件的公钥和签名。

因此,这类地址适用于能够解析其编码、并支持相应输出类型的系统。地址承担的是表达目标条件的作用,后续能否使用相关输出还取决于授权证明。这里描述的是P2PKH,不能据此认定所有比特币地址都采用同一种编码。

以太坊:格式相同还要区分账户类型
Ethereum.org的账户说明指出,以太坊地址标识一个20字节的账户,通常写作0x加40个十六进制字符。外部账户与合约账户采用相同长度的地址,前者由私钥控制,后者由合约代码逻辑控制。钱包则是与账户交互的应用或界面。
因此,符合字符和长度要求,只能说明满足基本的表示规则。单看地址外观,不能判断它属于外部账户还是合约账户,也不能判断合约收到调用后会执行什么行为。涉及合约时,适用条件还包括其代码所定义的交互规则。
常见问题:校验通过是否代表可用
校验通过不等于确认了地址归属。比特币地址中的校验信息用于发现输入错误,不能证明地址属于预期对象。地址编码检查与控制权验证解决的是不同问题,前者检查表达是否符合规则,后者依赖签名或相应授权条件。
地址是否就是钱包?以太坊的账户模型明确区分了两者:地址标识账户,钱包提供交互界面。同样,能够显示或识别某个地址,也不能直接证明软件掌握其控制权。判断格式适用性时,需要把字符串规则、链上含义和授权条件分别理解。