
先区分三个安全问题
区块链术语可以按三个问题理解:记录是否发生变化,交易是否符合规则,多个节点如何形成一致的历史。它们分别涉及数据完整性、有效性验证和共识。理解这种分工,才能看清某项技术究竟提供了什么保障。
哈希与默克尔树:识别数据变化
比特币开发者指南介绍了区块的数据关联方式:交易的哈希逐层汇总为默克尔根,区块头再引用前一区块头的哈希。全节点独立验证区块,未花费交易输出用于判断交易输入是否可用;有效分支之间的选择依据累计工作量。

哈希可理解为根据数据计算的摘要,适合检查数据是否变化。默克尔树则把多条记录组织成可验证的结构,使包含关系的证明更紧凑。证明某笔交易包含在某个区块中,与证明整个区块及其所在链符合全部规则,是不同层次的判断。

共识、工作量证明与权益证明
以太坊共识机制文档将共识解释为协议、激励及相关规则的整体。工作量证明和权益证明承担抗女巫攻击、区块生产者选择等作用,还需配合分叉选择。文档描述的以太坊权益证明机制使用质押、奖励与惩罚,并按质押权重衡量验证者投票。
女巫攻击指通过制造多个身份扩大影响力。若每个身份都能无成本获得同等权力,单纯增加节点数量就可能操纵结果。工作量证明把影响力关联到计算工作,权益证明把参与权重关联到质押资源,因此不能把共识理解为按电脑台数进行简单投票。
双重支付与分叉:不同的问题
双重支付是试图重复花费同一笔可用输出。在比特币的交易模型中,节点需要检查输入所引用的输出是否尚未被花费。这种解释适用于未花费交易输出模型,不宜直接套用为所有区块链的账户结构。
分叉是出现相互竞争的链分支,也可能由区块近乎同时产生引起,本身不等于攻击。分叉选择规则用于在符合验证规则的候选分支之间作出选择。比特币语境中的“最长链”应理解为累计工作量最多的有效链,不能只数区块。
常见问题:不可篡改是否意味着绝对安全
“不可篡改”描述的是修改历史会暴露数据关联变化,并受到共识规则和资源成本的约束。哈希能够帮助发现变化,网络是否接受另一段历史还取决于具体协议及其安全条件,不能据此推出历史绝无改变的可能。
同样,链上记录通过验证,只说明它符合相应规则。学习这些术语时,应先明确讨论的是数据证明、交易验证还是共识安全,避免把某一层的保障扩大为整个系统的安全承诺。