
编码地址首先是一种标识
区块链编码地址的应用边界是什么?核心在于区分“指向什么”和“允许做什么”。地址把协议所需的信息表示成便于传递、识别的字符串;它能够标识目标,却不能独立完成授权,也不能保证目标符合使用者的真实意图。不同区块链的地址含义并不完全相同。
比特币:地址服务于输出条件
Bitcoin Developer Guides 的交易说明以 P2PKH 为例:地址编码包含版本信息、公钥哈希和校验和,软件解码后可据此构造输出脚本。余额对应尚未花费的交易输出;后续花费需要引用具体输出,并提供满足脚本条件的公钥和签名。

因此,地址不是装有资产的容器,也不是花费权限本身。它适合表达特定类型的接收条件,实际授权由脚本验证决定。这一解释针对资料中的 P2PKH 示例,不能把其中的编码方式推广到所有比特币地址类型。

以太坊:地址定位账户,但不说明全部行为
Ethereum.org 的账户说明区分外部账户与合约账户:前者通常由私钥授权,后者由代码逻辑控制。两者均有地址,但合约账户没有对应的控制私钥。账户也不等于钱包,钱包是与账户交互的应用或界面。
这意味着,同样形式的地址并不代表同样的权限结构。仅看字符串,无法判断目标合约会执行什么逻辑,也无法证明其安全性。合约地址能够预先计算的情形,还说明“可写出地址”不等于“该处已有部署完成的合约”。
适用条件:格式之外仍需上下文
地址的解释必须绑定具体网络和协议规则。某种格式可被软件识别,不意味着它在其他网络上具有相同用途;支持一种地址编码,也不等于支持全部脚本或合约行为。
编码、哈希和签名承担不同职责。编码方便表示,哈希参与标识的生成,签名用于验证授权。将三者混为一谈,容易误以为地址是加密后的私钥,或者认为知道地址就拥有控制权。
常见问题与边界判断
校验通过是否代表目标可信?不是。校验和用于发现部分输入错误,不能认证接收者身份,也不能阻止另一个格式有效的地址被替换进来。
地址能否证明现实身份?不能单凭地址作出这种判断。即使签名验证证明了相应密钥的控制能力,也不能自动推出控制者的姓名、机构身份或法律权利。
地址能否替代完整验证?不能。地址解决的是标识与信息传递问题;授权是否成立、交易是否有效、合约是否按预期执行,仍取决于对应规则、执行结果及链上状态。