
共识究竟解决什么问题
理解节点共识,可以先分清三个问题:交易和区块是否符合规则;存在竞争分支时采用哪条历史;这段历史达到什么条件才足够稳定。这三个问题相互关联,但不能仅凭“节点已经收到区块”就认定共识已经完成。
比特币开发者指南说明,全节点独立验证区块,并在有效的竞争链中依据累计工作量选择历史。以太坊官网的权益证明攻防说明则将重组、冲突最终性和最终性延迟列为主要风险。两者分别对应不同机制,判断标准不能直接互换。

为什么节点会看到不同的链
节点接收信息存在先后顺序。比特币矿工近乎同时产生区块时,同一高度可能出现多个候选区块,不同节点可能先接收不同分支。因此,短暂分叉本身不等于有人攻击,也不等于验证规则失效。

比较节点状态时,仅比较高度不够:高度相同,区块内容仍可能不同。区块哈希才能用于识别具体区块;还需要区分节点暂时缺少信息,还是对区块有效性存在分歧。
链重组为什么影响确认状态
链重组是节点改为采用另一条分支,原先属于主链的部分区块随之被替换。一次交易曾被某个区块收录,并不意味着它会始终保留在最终采用的历史中。
理解重组风险时,应分别关注区块收录、后续确认和协议最终性。恶意重组可能改变交易顺序、排除交易或支持双花,但并非所有重组都是恶意行为。
继续出块是否代表已经最终确认
在以太坊权益证明机制中,出块与最终确定不是同一件事。最终性延迟意味着网络未能满足最终确定所需的条件,即使仍能看到新区块,也不能据此认定历史已经最终确定。
冲突最终性则更严重:相互冲突的分支都达到最终确定状态。它涉及共识安全性,而延迟主要涉及共识能否继续推进。分析故障时,需要先明确是哪一种现象,不能统称为“网络停止”。
多数控制能否任意修改账本
控制较大的算力或质押权重,会影响区块排序、分支竞争和交易收录,但不能据此推导出攻击者可以伪造任意账户的有效授权。诚实节点仍会按规则验证交易与区块。
同样,不能用一个固定比例概括所有共识攻击。攻击目标、共识机制和信息传播条件不同,所需条件也不同。讨论节点共识问题时,明确适用协议和具体故障,比笼统地说“多数节点决定一切”更准确。