
先明确保护目标与攻击边界
讨论区块链技术的安全模型,需要先问系统保护什么:交易是否符合规则、账本历史是否保持一致、网络能否持续确认交易。这些目标相互关联,但不能用一个“安全”概念全部替代。
攻击者影响交易顺序、阻止交易被纳入,和伪造他人授权属于不同能力。评估风险时,应分别说明攻击者掌握的资源、能够影响的环节,以及仍然受到哪些验证规则约束。
工作量证明:验证规则与历史重写成本
比特币开发者文档说明,全节点独立验证区块;区块通过哈希关联,工作量证明增加改写历史的成本。在有效的候选链之间,节点依据累计工作量选择链。由此可见,哈希关联让修改留下可验证的变化,而历史抵抗重写还依赖共识资源。
这一模型适用于理解工作量证明系统。检查安全假设时,应关注诚实参与者与攻击者的相对算力,以及交易所在区块之后积累的工作量。不能把某个算力比例理解为所有攻击都适用的绝对分界。
权益证明:区分安全性与活性
以太坊权益证明攻防文档将重组、冲突的最终确定结果和最终确定延迟列为主要风险,并讨论权益惩罚与社会层协调。共识攻击并不自动赋予攻击者绕过交易有效性规则、任意支配账户资产的能力。
安全性关注是否产生相互冲突的确认结果;活性关注系统能否继续推进。网络可能仍在产生区块,却迟迟无法最终确定历史。因此,评估系统运行状态时,需要分别观察出块、分叉和最终确定情况。
通信条件、经济约束与恢复能力
安全模型还应写明通信假设:消息是否能够及时到达,参与者看到的信息是否一致,延迟或选择性传播会影响哪个环节。只讨论资源占比,容易遗漏攻击成立所需的网络条件。
经济惩罚的分析应回答违规是否可识别、损失由谁承担,以及惩罚能否约束相应行为。恢复能力则涉及异常发生后如何协调参与者、选择恢复路径;技术规则与社会协调需要分别评估。
常见问题:上链是否等于永久确定
交易被纳入区块,不等于它已获得同等强度的历史稳定性保证。工作量证明中的后续工作量积累,与权益证明中的最终确定机制有不同含义,不能直接互换。
同样,验证一笔交易被某个区块包含,与验证整个区块及其历史符合全部规则,属于不同范围的证明。使用“已验证”“不可篡改”等表述时,应交代验证对象、采用的机制及其成立条件。