
地址表达了什么
BTC地址是向他人表达接收条件的一种编码形式。Bitcoin Developer Guides的交易说明以P2PKH为例:公钥经过哈希处理,再结合版本信息与校验和编码为地址;交易输出则通过脚本规定支出条件。余额对应尚未花费的交易输出,后续交易引用这些输出并提供符合条件的证明。
入门时可以把地址理解为接收信息,把输出脚本理解为支出规则。理解这两层关系,便能避免把地址字符串本身当作控制资金的凭证。
私钥、公钥与地址的区别
NIST的私钥术语说明将私钥界定为非对称密钥体系中保持秘密的部分。在数字签名场景中,私钥用于生成签名,对应公钥用于验证签名。具体用途取决于算法和应用环境。
在这里讨论的比特币场景中,地址用于表达接收条件,公钥与签名参与验证支出权限。知道某个地址,并不等于掌握了产生有效签名的能力;展示地址也不能证明展示者控制对应私钥。私钥的保密性因此与地址的可公开性有根本区别。
钱包余额与UTXO的关系
UTXO即未花费交易输出。钱包显示的余额可以由多个这样的输出组成,因此,一个余额数字背后可能对应多条可被后续交易引用的记录。理解余额时,需要同时关注金额和支出条件。
地址、交易标识txid和输出序号各有用途:地址表达接收条件,txid识别交易,输出序号定位该交易中的某个输出。将它们混用,会把“接收信息是什么”和“具体引用哪条记录”混为一谈。
适用范围与常见问题
所有BTC地址都按同一种方式生成吗?本文的公钥哈希与编码说明针对P2PKH示例,不能直接推广为所有地址类型的完整规则。阅读技术说明时,应先确认其讨论的地址和脚本类型。
校验和能证明地址属于某个人吗?校验和用于发现输入错误,不能认证接收者身份。字符串通过格式校验,与其归属是否可信,是两个不同的问题。
地址对应余额,是否意味着只凭地址就能支出?支出仍须满足相关输出的脚本条件。学习地址的关键,是把接收信息、链上记录和授权证明分开理解,再看它们如何通过交易联系起来。