
账户概念的适用范围
区块链账户概念入门需要了解什么,首先要看具体网络如何记录资产及验证权限。以太坊的账户模型与比特币的未花费交易输出模型存在差别,不能把一个网络中的“账户余额”解释直接套用到所有区块链。
理解时可以围绕三个问题展开:账本记录什么,什么条件允许改变记录,钱包如何展示这些记录。这能把界面上的余额与底层记账规则联系起来。
以太坊:账户状态与控制方式
以太坊账户包含余额、nonce、代码哈希和存储根等状态信息。余额字段记录ETH;nonce对外部账户而言记录已发送交易的数量,参与交易顺序及重复执行检查;代码哈希和存储根分别关联账户代码与存储内容。
基础分类包括外部账户和合约账户。外部账户通过私钥签名发起交易;合约账户由代码逻辑控制,在交易触发的执行过程中采取行动。创建密钥本身不需要支付网络费用,部署合约则涉及链上资源消耗。
地址、私钥与钱包分别是什么
地址用于标识账户,私钥用于生成授权签名,钱包则是与账户交互的应用或界面。以太坊外部账户的地址由公钥推导而来,地址公开不等于私钥公开。
因此,看到一个地址、能够查看其余额,与拥有该账户的操作权限是不同的事。钱包展示的是链上记录;对私钥控制的账户而言,关键授权能力来自签名,而非界面上的名称或图标。
比特币:余额来自未花费输出
比特币使用未花费交易输出,即UTXO。普通交易的输入引用此前的输出,并提供满足花费条件的证明;新输出则等待后续交易花费。钱包显示的余额,是相关可花费输出金额的汇总。
可以把这种结构理解为逐笔引用和更新可花费记录。理解比特币时,应关注输出及其花费条件,而不能假定底层存在一个与以太坊完全相同、直接增减的账户余额字段。
常见问题与理解边界
知道地址能否操作资产?仅有地址不足以获得权限。外部账户需要有效签名,比特币输出需要满足对应的花费条件,合约账户的行为则受代码规则约束。
所有账户都有私钥吗?合约账户没有自身对应的私钥,但合约代码可以设置由特定主体授权的操作。分析权限时,需要同时看账户类型与具体规则。
钱包里的“账户”是否就是协议中的账户?不一定。阅读界面或技术说明时,应先确认它指的是应用中的管理分组,还是链上实际使用的记账结构。