
账户、钱包与地址有什么区别
区块链的账户涉及哪些技术概念,首先取决于所讨论的账本模型。以太坊用账户记录状态,比特币则围绕未花费交易输出组织资金。两者都能在钱包中显示余额,但底层记录方式不同。
账户是链上的状态实体,地址用于标识账户或表达接收条件,钱包则是管理密钥、展示信息和发起交互的软件界面。因此,钱包不是账户本身,地址也不是能够授权操作的秘密凭证。

密钥、签名与哈希分别负责什么
公钥密码学把可公开验证的信息与必须保密的私钥分开。数字签名让网络验证授权,并检查签名覆盖的数据是否被修改;哈希则把数据映射成摘要,可用于地址构造和状态校验。

这些机制解决的问题不同:知道地址不等于拥有控制权,签名有效不等于交易一定成功。交易还必须满足账本规则,例如资金是否可用、执行条件是否成立。
以太坊账户模型中的核心字段
以太坊区分由私钥控制的外部账户与由代码控制的合约账户。账户状态包含nonce、balance、codeHash和storageRoot,分别关联计数、ETH余额、代码摘要与存储摘要。外部账户能够发起交易,合约代码在调用中执行。
理解这些字段时,应区分授权、余额和执行逻辑。nonce不是密码;balance也不是钱包展示的所有资产总额。代码摘要和存储摘要用于关联、校验代码与数据,并不是代码全文或完整存储内容。
比特币UTXO模型如何表达可用资金
比特币普通交易的输入引用已有输出,输出规定金额与花费条件。尚未被花费的输出称为UTXO,钱包余额来自相关UTXO的汇总。在传统P2PKH场景中,花费者提供公钥和签名,由脚本检验授权。
因此,比特币钱包中的“账户余额”不能直接套用以太坊账户字段解释。前者关注哪些输出尚可花费,后者关注账户状态如何更新。P2PKH只是具体脚本类型,不能代表所有比特币地址与授权形式。
适用范围与常见问题
判断账户机制时,可依次检查三个问题:账本记录的是账户状态还是输出,操作由密钥还是代码条件授权,交易需要满足哪些有效性规则。这个框架有助于避免仅凭界面名称判断底层结构。
合约地址是否也对应私钥?合约账户并非依靠自身私钥签名,而是按代码逻辑行动。签名是否能证明现实身份?它通常证明对相应密钥的控制或授权关系,不能单独证明现实身份,也不能保证交互对象可信。