7.6 KiB
7.6 KiB
Issue #70 — 宪法层规则增补:多辖区节点共享条款
状态: 已完成
版本: 1.0
日期: 2026-03-07
关联白皮书: 《NAC公链多辖区节点共享方案与技术落地白皮书》v1.0
关联 Issue: #59(多辖区节点共享方案)、#66(宪法增补条款A01-A43)
一、工作概述
本次工单在现有宪法增补条款(A01-A43)基础上,新增 9 条多辖区节点共享宪法条款(A44-A52),覆盖物理共享逻辑隔离、跨辖区区块生产、资源协商分配、节点身份绑定、WASM沙箱、CEE集群、争议裁决、CSNP路由、存储加密等核心规则。
二、新增宪法条款清单(A44-A52)
| 条款编号 | 层级 | 条款名称 | 核心规则 | 违规处理 |
|---|---|---|---|---|
| A44 | Strategic | 多辖区节点物理共享许可 | 物理共享节点必须容器化逻辑隔离 | reject_block |
| A45 | Strategic | 跨辖区区块生产双CR强制 | 区块头必须含 jurisdiction_merkle_root | reject_block |
| A46 | Strategic | 共享资源辖区协商分配 | 资源分配需委员会≥67%投票 | revert_allocation |
| A47 | Tactical | 节点身份辖区绑定强制 | GIDS注册需辖区政府数字签名 | reject_node_registration |
| A48 | Tactical | WASM规则插件沙箱执行强制 | 插件执行≤10ms、≤64MB、哈希上链 | terminate_plugin_execution |
| A49 | Tactical | CEE节点跨辖区共享验证 | CEE必须支持多辖区并行验证 | fallback_to_single_jurisdiction_cee |
| A50 | Tactical | 辖区争议宪法法院裁决 | 争议必须提交宪法法院、判决上链 | freeze_disputed_resources |
| A51 | Tactical | CSNP辖区感知路由强制 | CSNP必须识别辖区并保留原始CR | reject_non_compliant_routing |
| A52 | Tactical | 共享存储敏感数据加密 | AES-256-GCM加密、≥3副本冗余 | quarantine_unencrypted_data |
三、交付文件清单
3.1 CNNL 宪法条款文件
nac-constitution/clauses/node_sharing_clauses.cnnl
- 9条条款的 CNNL 形式化表达
- 每条包含:tier(层级)、clause_index(索引)、predicate(谓词)、obligation(义务)、violation_action(违规处理)、test(测试块)
- 完整测试块(9个测试用例)
3.2 Rust 验证引擎
nac-constitution-clauses/src/node_sharing.rs
- 每条条款独立的验证函数(
validate_a44_*至validate_a52_*) - 综合验证报告(
NodeSharingComplianceReport) - 违规摘要生成(
violation_summary()) - 完整单元测试(12个测试用例,覆盖合规和违规场景)
3.3 多辖区运行时增强
nac-multi-jurisdiction/src/node_sharing_enhanced.rs
SharedNodeRegistry:节点共享注册表(隔离违规检测)DynamicQuotaManager:动态资源配额管理(A46)CrossJurisdictionBlockCoordinator:跨辖区区块生产协调器(A45)GidsEnhancedRegistry:GIDS增强注册表(A47)- 完整单元测试(5个测试用例)
3.4 Charter 合约接口
charter-std/src/constitution_interface.charter
IConstitution接口:宪法内置合约完整接口定义RwaAssetCrossJurisdictionTransfer示例合约:演示A45/A46/A47/A50/A51集成NodeSharingRegistry示例合约:演示A44/A47/A48集成
四、架构设计说明
4.1 条款层级设计
宪法层级结构(A44-A52 扩展后):
永恒级(Eternal,索引1-100):
A01-A08 基础架构条款(NAC原生技术栈保护)
战略级(Strategic,索引101-1000):
A09-A16 资产合规条款
A17-A24 节点治理条款
A25-A32 XTZH货币条款
A33-A38 多辖区条款(基础)
A39-A43 AI合规条款
★ A44 多辖区节点物理共享许可(新增,索引101)
★ A45 跨辖区区块生产双CR强制(新增,索引102)
★ A46 共享资源辖区协商分配(新增,索引103)
战术级(Tactical,索引1001+):
★ A47 节点身份辖区绑定强制(新增,索引1001)
★ A48 WASM规则插件沙箱执行强制(新增,索引1002)
★ A49 CEE节点跨辖区共享验证(新增,索引1003)
★ A50 辖区争议宪法法院裁决(新增,索引1004)
★ A51 CSNP辖区感知路由强制(新增,索引1005)
★ A52 共享存储敏感数据加密(新增,索引1006)
4.2 跨辖区区块生产流程(A45)
区块生产节点收到跨辖区交易
↓
为每笔跨辖区交易选择最优CEE节点(A49负载均衡)
↓
CEE节点并行调用源辖区和目标辖区插件(A48 WASM沙箱)
↓
生成双CR(源辖区CR + 目标辖区CR)
↓
将所有双CR哈希构建默克尔树 → jurisdiction_merkle_root
↓
写入区块头 block.header.jurisdiction_merkle_root
↓
CBPP验证节点验证 jurisdiction_merkle_root 有效性
↓
区块上链
4.3 节点注册流程(A47)
节点申请加入网络
↓
向辖区政府/监管机构申请辖区证明(jurisdiction_proof)
↓
提交 GIDS 注册(DID + 辖区 + 辖区证明 + 插件哈希列表)
↓
GIDS 验证:
- DID 格式(must start with "did:nac:")
- 辖区 != 0
- 辖区证明签名有效且未过期
- 至少一个已授权插件哈希
↓
注册成功,节点可加入网络
↓
节点加载插件时,GIDS 实时验证插件哈希(A47+A48)
4.4 资源分配流程(A46)
辖区提交资源分配提案
↓
辖区协商委员会(JurisdictionCouncil)投票
↓
投票比例 ≥ 67%?
├─ 是 → 提案通过,DynamicQuotaManager 应用新配额
└─ 否 → 提案拒绝,维持原配额
↓
配额变更记录写入宪法附录(链上存证)
↓
各辖区节点按新配额运行
↓
超出配额时触发 A46 违规处理(revert_allocation)
五、与现有模块的集成关系
| 现有模块 | 集成方式 | 涉及条款 |
|---|---|---|
nac-constitution-clauses |
新增 node_sharing.rs 验证器 |
A44-A52 |
nac-multi-jurisdiction |
新增 node_sharing_enhanced.rs 运行时 |
A44-A47、A49 |
nac-cbpp |
区块头新增 jurisdiction_merkle_root 字段 |
A45 |
nac-csnp |
新增辖区感知路由模块 | A51 |
nac-nvm |
新增宪法内置合约(地址0x...0001) | A44-A52 |
charter-std |
新增 constitution_interface.charter |
A44-A52 |
nac-ai-compliance |
AI合规检查集成A39-A43 | A39-A43 |
六、测试覆盖
| 文件 | 测试数量 | 覆盖场景 |
|---|---|---|
node_sharing.rs |
12 | A44合规/违规、A45跨辖区、A46投票、A47身份、A48沙箱、A52存储 |
node_sharing_enhanced.rs |
5 | 注册表、隔离检测、配额超额、GIDS验证、区块协调器 |
node_sharing_clauses.cnnl |
9 | 每条条款独立测试块 |
七、后台管理员信息
- Gitea 管理员账号: nacadmin
- Gitea 管理员密码: NACadmin2026!
- 服务器 SSH: root@103.96.148.7:22000
- 服务器密码: XKUigTFMJXhH
- 宝塔面板: http://103.96.148.7:12/btwest(cproot / vajngkvf)
八、下一步工作建议
- Issue #71:将
jurisdiction_merkle_root字段集成到 CBPP 区块头结构(nac-cbpp模块) - Issue #72:实现 NVM 宪法内置合约(地址
0x0000000000000000000000000000000000000001) - Issue #73:CSNP 辖区感知路由实现(
nac-csnp模块扩展) - Issue #74:WASM 插件运行时沙箱集成(
nac-nvm模块扩展) - Issue #75:宪法条款 A44-A52 主网部署和测试
本文档由 NAC 核心协议工程组生成 | Issue #70 | 2026-03-07