
先明确“变化规则”的含义
区块链变化规则可以从三个问题入手:哪些交易能够改变账本,出现不同记录时如何选择,以及判断有效性的规则是否发生改变。前两者属于按既有规则运行,第三者涉及协议规则的调整,不能混为一谈。
理解这些区别后,便能把“新增区块”“临时出现分支”和“规则升级”分开讨论。本文聚焦交易验证与共识运行,不把某条链的具体设计推广为所有区块链的统一标准。

交易先通过验证,才能成为有效记录
比特币开发者指南说明,全节点独立验证区块;普通交易花费的是未花费交易输出,同一输出不能在有效链上重复花费。区块通过前一区块头的哈希相连,改动历史交易会影响后续关联。竞争分支的选择依据是有效链的累计工作量。

这意味着阅读一笔账本更新时,应先问它是否符合验证条件,再问它是否被纳入所采用的历史。传播到节点、被装入候选区块与成为有效链的一部分,是不同的环节。
共识协调有效记录的顺序
以太坊共识机制文档将共识描述为协议、激励和相关机制的组合。其权益证明机制由验证者参与提议与证明,分叉选择考虑按质押权重计算的支持。工作量证明和权益证明还承担抗女巫攻击、区块作者选择等作用,不能独自概括完整共识。
验证规则回答“这份记录合不合法”,共识还要解决“在竞争的有效记录中采用哪一份”。因此,不能把共识理解为任意数量的节点举手表决,也不能认为获得较多支持就能绕过交易有效性检查。
机制比较需要说明适用条件
讨论工作量证明时,应关注累计工作量,而不是仅比较区块数量;讨论权益证明时,需要理解具体协议如何计算权重、选择分支和约束验证者。两类机制不能用同一个“最长链”口号解释。
哈希关联使历史修改能够被检测,但维持共同历史还需要验证与共识机制。评估账本的稳定性,应结合所讨论网络的规则,不能仅凭“使用了哈希”就推导出绝对不可修改。
入门常见问题
出现分叉是否意味着规则变了?不一定。同一套规则下,也可能因同时产生区块或传播先后不同而出现竞争分支。判断规则是否改变,需要另行查看有效性条件是否发生变化。
区块高度能唯一标识区块吗?不能。在竞争分支中,同一高度可能存在不同区块。高度表示位置,识别具体区块还需要区块哈希。
学习时应该先记参数吗?更有帮助的是先理清交易、验证、区块和分支选择之间的关系,再研究特定网络的参数与例外,避免把局部设计误认为通用原理。