
一、先区分账本安全与应用安全
区块链技术信息安全相关术语如何理解,关键是先问清楚:它保护的是什么?比特币开发者指南侧重交易记录的组织与验证;以太坊智能合约安全文档侧重程序权限和逻辑约束。前者讨论账本如何保持一致,后者讨论应用如何正确执行,两者不能互相替代。
二、哈希、默克尔根与完整性
哈希是依据数据计算的摘要。比特币通过前一区块头的哈希连接区块,并把交易逐层汇总形成默克尔根,记录在区块头中。交易内容变化会影响相关摘要,因此这些结构能够支持完整性核验。

默克尔证明用于核验交易是否被某个区块包含,不等于独立确认交易满足全部规则。理解时应区分“记录被收录”和“记录有效”,也不要把摘要误认为隐藏原文的加密机制。

三、UTXO、双重支付与共识规则
UTXO指未花费的交易输出,是理解比特币交易输入的重要概念。双重支付指同一输出被重复花费;节点依据共识规则验证交易和区块,排除不符合规则的记录。
共识不是省略验证后的多数表态。节点需要自行验证;面对有效分支,比特币以累计工作量作为选择依据。区块高度表示区块所处的位置,但分支可能拥有相同高度,因此高度不能充当全局唯一标识。
四、工作量证明与不可篡改的边界
工作量证明要求区块头哈希满足规定的目标条件。它与区块之间的链接共同提高改写历史记录的成本。这里的“不可篡改”应理解为受到机制和成本约束,而不是任何条件下都绝对无法改变。
这些解释针对比特币相关机制,不能直接推广为所有区块链的共同实现。比较系统时,需要分别确认其共识方式和有效性规则。
五、访问控制、角色与多签
以太坊智能合约安全文档强调,敏感操作需要访问控制。所有者模式集中管理权限,角色模式按职责分配权限,多签则要求多个参与方共同批准。它们分别回答谁能操作、能做什么,以及需要谁共同同意。
权限分散不自动等于风险消失。角色划分与共同批准解决的问题不同,仍需明确每项敏感操作的授权范围,避免把“多人管理”直接当作安全保证。
六、不变量、形式化验证与审计
不变量是程序运行过程中应持续成立的条件;形式化验证检查模型是否满足明确的规格;独立审计提供额外的代码审查。它们是互补措施,而非彼此替代的安全证明。
常见问题是:通过验证或审计,是否意味着没有任何风险?不能这样理解。形式化结论受规格、模型和假设限制,审计也可能遗漏问题。同样,账本可靠记录了执行结果,并不意味着应用逻辑本身正确。