Skip to main content

verify_hash_chain

Function verify_hash_chain 

Source
pub fn verify_hash_chain(facts: &[Fact]) -> bool
👎Deprecated since 0.2.0:

verify_hash_chain 始终返回 true,不验证存储的哈希。请使用 compute_chain_hash 比对存储的链哈希

Expand description

验证哈希链完整性(deprecated,保留向后兼容)

§⚠️ 已废弃

本函数始终返回 true,仅自洽地重算链式哈希,不验证已存储的哈希。 真正的完整性验证应使用 compute_chain_hash 比对存储的链哈希, 或在 verify_chain 命令中读取带哈希字段的 WAL 并逐一校验。

§算法

  • prev_hash 初始为 "genesis"
  • 对每个 Fact,计算 blake3(prev_hash + fact_hash) 作为当前哈希
  • 更新 prev_hash 为当前哈希,继续处理下一个 Fact

§返回值

始终返回 true:本函数仅以 Fact 列表为输入,按上述算法自洽地重算链式哈希。 空列表视为完整(true)。

§迁移指南

// 旧代码(不验证):
let ok = verify_hash_chain(&facts);

// 新代码(真正验证):
let computed = compute_chain_hash(&facts)?;
if computed != stored_last_hash {
    return Err("审计链断裂");
}