
先理解区块链解决什么问题
区块链比特币机制入门需要了解什么,可以先从一个问题出发:没有统一记账机构,网络如何判断同一笔资金是否已被花费?比特币开发者指南将区块链描述为有顺序的公开交易记录。交易规则决定哪些支付有效,区块链与共识机制帮助节点确定交易历史。
以太坊技术介绍同样强调区块、节点和共识,但采用权益证明,并以虚拟机执行智能合约。两者说明,区块链具有共同的数据组织思路,具体记账与共识机制却需要分别理解。
交易与UTXO:余额背后的记录
比特币普通交易引用此前尚未花费的交易输出,即UTXO,并生成新的输出。同一个输出只能在有效链中花费一次;重复引用已花费输出,会触及防止双重支付的规则。普通交易输入总额与输出总额的差额构成手续费。
理解这一点,可以把钱包显示的余额看作相关可用输出的汇总。判断支付是否成立,需要检查它引用的输出及花费条件,不能只看界面上的余额数字。
哈希与区块:历史如何关联
区块通过前一区块头的哈希相连,区块内交易则通过默克尔树汇总到区块头。修改交易会改变相关哈希,使后续链接需要随之重建。
这种结构让修改留下可验证的痕迹。理解“难以篡改”时,还要同时考虑工作量证明与节点验证;仅把数据串起来,并不足以解释整个系统的安全性。
工作量证明与节点验证
矿工反复尝试区块头哈希,使其满足难度目标;全节点独立检查区块是否符合共识规则。遇到竞争分支时,节点在有效链中选择累计工作量最大的链。
这里有两个不同问题:区块是否合法,以及有效分支中采用哪一条。工作量用于比较竞争历史,不能替代交易有效性检查。因此,理解矿工的作用时,也要理解全节点的验证职责。
确认、分叉与适用边界
交易进入区块后,后续区块继续叠加工作量,重写这段历史通常会更困难。确认表达的是历史逐步稳固的程度,不能理解成绝对不会发生变化的保证。
常见疑问是“区块高度能否唯一标识区块”。竞争分支可能出现相同高度的不同区块,因此识别具体区块应使用区块哈希。另一个疑问是“所有区块链是否都靠挖矿”。以太坊的权益证明提供了不同例子,不能把比特币的工作量证明直接套用于其他网络。