NAC_Blockchain/docs/NAC_CONSENSUS_CORE.md

4.3 KiB
Raw Permalink Blame History

NAC共识机制核心知识

⚠️ 重要声明

NAC使用CBPP共识机制不是DAG共识

这是NAC与其他区块链的核心区别之一必须牢记。


CBPP - 宪政区块生产协议

CBPP = Constitutional Block Production Protocol(宪政区块生产协议)

核心理念

"宪法即共识" - Constitution as Consensus

NAC的共识不是基于算力PoW、权益PoS或有向无环图DAG而是基于宪法

CBPP核心组件

1. 宪法收据系统CR - Constitutional Receipt

  • 交易进入区块链的唯一凭证
  • 每个交易都必须获得宪法收据才能上链
  • 收据包含:
    • 交易哈希48字节
    • 宪法版本哈希48字节
    • 触发的宪法条款索引
    • AI引擎执行结果哈希
    • 收据ID48字节

2. 开放生产网络OPN - Open Production Network

  • 任何满足宪法要求的节点都可以参与区块生产
  • 不是"挖矿",而是"生产"
  • 生产者需要通过宪法验证

3. 流体区块模型FBM - Fluid Block Model

  • 区块不是固定大小
  • 根据网络状态和宪法规则动态调整
  • 支持并行区块生产

4. 三维区块坐标系统

  • Epoch纪元:宪法版本,每次宪法升级递增
  • Round轮次:共识轮次,单调递增
  • Branch分支支持并行区块32字节哈希

NAC不使用的共识机制

不是DAG共识

  • NAC 不使用 Directed Acyclic Graph有向无环图共识
  • 不是IOTA、Nano、Fantom等DAG链
  • 虽然可能使用DAG作为数据结构,但不是共识机制

不是PoW工作量证明

  • 不需要挖矿
  • 不需要算力竞争

不是PoS权益证明

  • 不是基于代币质押
  • 不是基于财富分配

不是传统BFT

  • 不是PBFT、Tendermint等传统拜占庭容错
  • 虽然有容错机制,但基于宪法而非投票

代码中的体现

正确的模块

  • constitutional_receipt.rs - 宪法收据系统
  • cbpp_integration.rs - CBPP集成
  • block_coordinate.rs - 三维区块坐标
  • open_production_network.rs - 开放生产网络
  • fluid_block.rs - 流体区块模型

错误的理解

  • dag.rs 如果包含"DAG共识算法" - 这是错误的
  • 任何试图实现DAG共识的代码 - 应该删除或修正

开发指导原则

1. 永远记住

NAC = CBPP共识 ≠ DAG共识

2. 遇到"DAG"时

  • 如果是数据结构 → 可能正确
  • 如果是共识机制 → 肯定错误

3. 核心文件

所有共识相关的代码都应该围绕CBPP的四大组件

  1. 宪法收据CR
  2. 开放生产网络OPN
  3. 流体区块模型FBM
  4. 三维区块坐标

4. 类型系统

  • Address: 32字节
  • Hash: 48字节SHA3-384
  • Branch Hash: 32字节从48字节截取

常见错误

错误1实现DAG共识

// ❌ 错误
// NVM-L0 DAG图结构和共识算法
pub struct DagGraph {
    // DAG共识相关代码
}

错误2混淆数据结构和共识

// ⚠️ 需要澄清
// 如果DAG只是数据结构应该明确说明
/// DAG数据结构用于存储交易关系不是共识机制
pub struct DagGraph {
    // 仅作为数据结构使用
}

正确做法基于CBPP

// ✅ 正确
/// CBPP共识集成
pub struct CBPPConsensus {
    constitutional_receipt_manager: ConstitutionalReceiptManager,
    open_production_network: OpenProductionNetwork,
    fluid_block_manager: FluidBlockManager,
    coordinate_manager: BlockCoordinateManager,
}

总结

  1. NAC使用CBPP共识 - 宪政区块生产协议
  2. 不是DAG共识 - 不要实现DAG共识算法
  3. 宪法即共识 - 所有共识逻辑都基于宪法
  4. 四大组件 - CR、OPN、FBM、三维坐标

参考文档

  • /home/ubuntu/NAC_Clean_Dev/docs/CBPP_WHITEPAPER.md - CBPP白皮书
  • /home/ubuntu/NAC_Clean_Dev/nvm_v2/NVM-l0/src/constitutional_receipt.rs - 宪法收据实现
  • /home/ubuntu/NAC_Clean_Dev/nvm_v2/NVM-l0/src/cbpp_integration.rs - CBPP集成
  • /home/ubuntu/NAC_Clean_Dev/nvm_v2/NVM-l0/src/block_coordinate.rs - 三维区块坐标

最后提醒NAC是原生公链不是以太坊的衍生或扩展。CBPP是NAC独创的共识机制。