
先明确公示与共识的区别
“公示机制”可以用来描述区块链记录对外可查、可核对的安排。理解这一说法时,需要同时认识共识机制:公示关注记录如何被看到和检查,共识关注节点按什么规则接受记录、选择交易历史。两者相关,但含义不同。
本文讨论比特币、以太坊这类公开网络的基础机制。具体系统公开哪些信息、允许谁读取,仍取决于其设计,不能将公开网络的特点直接套用到所有区块链。
区块如何让记录相互关联
以太坊将交易组成有序区块,新区块引用父区块,节点通过验证交易执行结果检查状态变化。比特币的公开账本同样按区块组织交易,并用前一区块的哈希连接历史;其默克尔树将交易汇总为可核验的摘要。
哈希可以理解为数据的校验指纹。修改历史内容会改变相应摘要,并破坏原有引用关系。因此,检查记录时既要看内容,也要看它与所在区块、后续历史的关联。仅凭一张展示交易信息的截图,无法完成这种验证。
公开之后,还要按规则验证
传播记录只是第一步。比特币全节点独立验证区块,检查交易是否符合规则,包括防止同一笔输出被重复花费;发生竞争分支时,在有效链中按累计工作量选择历史。以太坊采用权益证明,验证者参与区块提议和证明,执行验证还需要核对交易产生的状态。
这意味着记录被某个节点收到,并不等于它已经被整个网络接受。理解公示结果时,应区分已传播、已入块以及共识确认程度,不能将这些状态视为同一件事。
入门时应认识哪些查询信息
交易标识用于定位交易,区块哈希用于识别具体区块,区块高度表示区块在历史中的位置。遇到分叉,同一高度可能出现不同区块,所以高度本身不能充当全局唯一标识。
核对一条记录,可以围绕几个问题展开:它属于哪个网络,是否被纳入区块,所在区块是否属于节点当前接受的链。不同网络的字段和验证方法存在差异,不能只凭页面上的相似名称判断含义。
常见问题与证明边界
公开记录是否等于内容真实?链上验证能够检查记录是否满足协议规则,但不能仅凭入块证明一项链外陈述真实。例如,记录一份文件的摘要,可以用于核对文件是否变化,文件描述的现实事件仍需其他证据。
历史是否绝对不能修改?哈希关联使修改留下可检测的变化,共识机制进一步限制改写历史。网络仍可能发生分叉和链重组,因此更准确的理解是:记录的可信程度来自可验证的数据结构与共识规则共同作用,不能仅由“已经公示”推导出来。