
区块与哈希:组织记录并建立关联
区块链将记录按区块组织,并通过密码学引用连接前后区块。哈希把数据映射为摘要;修改原始内容,通常会得到不同摘要。后续区块引用前一区块,使历史修改能够沿着关联关系被发现。
这里需要区分完整性与保密性:哈希用于校验内容,并不等于把内容加密。区块链能否隐藏数据,不能仅凭采用了哈希来判断。

默克尔树:核验记录是否包含在区块中
比特币开发者文档介绍了默克尔树:交易的哈希经过逐层组合,得到写入区块头的根哈希。结合必要的中间哈希,可以验证某笔交易是否包含在相应区块中。

这种包含性证明有明确边界:它回答记录是否属于某个区块,不能单独证明交易满足全部规则,也不能独立确定该区块属于网络接受的历史。
节点与共识:保存副本并确定共同记录
数据实际保存在节点运行的计算机上,节点之间传播交易和区块,并依据协议检查收到的内容。保存副本解决数据分布问题,共识规则则帮助网络在存在竞争记录时确定接受哪段历史。
比特币通过工作量证明及累计工作量选择有效链;以太坊技术介绍说明其采用权益证明,由验证者参与提议和确认区块。这些机制各有条件,不能把某一种机制视为所有区块链的统一实现。
交易、签名与状态:保存内容的不同层次
交易表达一次更新请求,数字签名用于验证相应授权。以太坊还将账户和合约数据组织为状态,由以太坊虚拟机执行计算并更新;比特币则以未花费交易输出描述可供后续交易使用的输出。
历史记录与当前状态用途不同:前者描述发生过哪些更新,后者描述执行后的结果。因此,理解保存原理时,需要同时关注记录顺序、授权检查和状态更新规则。
常见问题与适用边界
区块链是否绝对无法修改?哈希关联使修改可被发现,共识机制进一步约束替换历史的条件和成本。其安全性依赖协议及网络运行条件,不宜表述为任何情况下都不可更改。
写入链上的内容是否必然真实?节点可以检查数据是否符合协议,却不能仅凭保存过程证明链外事实。涉及实物、身份或事件的记录,仍需关注信息进入系统时的真实性。