6.5 KiB
6.5 KiB
NAC 主网模块集成完成报告
报告日期:2026-03-07
执行人:NAC Admin
提交哈希:41c193c
服务器:103.96.148.7:22000
后台管理员:root / XKUigTFMJXhH
一、工作概述
本次工单完成了两项核心任务:
任务一:彻底去除以太坊技术栈残留(FIX-ETH-001)
NAC 公链是完全独立自研的 RWA 专用公链,不是以太坊的继承、衍生或扩展。本次扫描发现代码库中存在多处以太坊风格的实现,已全部修正为 NAC 原生技术栈。
任务二:主网模块集成(INT-001)
将所有主网微服务通过 nac-api-server v3.0.0 统一集成,实现单一入口访问所有模块。
二、以太坊技术栈残留修正
以下是本次修正的以太坊残留清单:
| 文件 | 以太坊残留 | NAC 原生替换 |
|---|---|---|
nac-cbpp/src/consensus.rs |
BFT Prevote/Precommit 投票状态机 | CBPP 宪法收据(CR)验证引擎 |
nac-cbpp/src/vote.rs |
投票类型(Prevote/Precommit) | 已移至 _archive/,替换为 receipt.rs |
nac-cbpp/src/validator.rs |
验证者/voting_power/stake | 已移至 _archive/,替换为 producer.rs(区块生产者/DID) |
nac-cbpp/src/signature.rs |
sha2::Sha256(32字节) |
sha3::Sha3_384(48字节) |
nac-cbpp/src/fork.rs |
min_voting_power/blacklisted_validators |
min_receipt_weight/excluded_producers |
nac-cbpp/src/validation.rs |
Gas 机制 | ComplianceFee(合规费) |
nac-cli/src/utils/crypto.rs |
secp256k1 椭圆曲线 |
BLS 简化实现(与 cbpp/signature.rs 一致) |
nac-upgrade-framework/src/governance.rs |
Yes/No/Abstain 投票机制 | 宪法授权审批(ConstitutionalApproval) |
nac-udm/src/l1_protocol/cross_shard_transaction.rs |
"2/3 验证者签名" | CR 权重验证(收据权重阈值) |
CBPP 共识机制正确定义
CBPP(宪政区块生产协议)是规则验证而非节点协商,与 PoW/PoS/BFT 的根本区别在于:区块的合法性由宪法规则决定,而非由节点投票决定。区块生产者(CBP)通过 DID + KYC 身份验证获得生产资格,而非通过质押代币。分叉选择基于宪法收据(CR)权重累计,而非投票数量比较。
三、主网模块集成架构
3.1 统一入口架构
外部请求
│
▼
nac-api-server (端口 9550)
│
├── /health → API Server 自身健康
├── /api/v1/health/all → 聚合健康检查(所有模块)
│
├── /api/v1/nvm/... → NVM 虚拟机 (9547)
├── /api/v1/acc/... → ACC-20 协议 (9554)
├── /api/v1/charter/... → Charter 编译器 (9555)
├── /api/v1/gnacs/... → GNACS 资产分类 (8001)
├── /api/v1/cnnl/... → CNNL 神经网络语言 (8765)
├── /api/v1/exchange/... → RWA 交易所 (9557)
├── /api/v1/wallet/... → 钱包服务 (9556)
├── /api/v1/onboarding/... → 资产上链 (9552)
└── /api/v1/constitution/... → 宪法层 (9548, 需 Token)
3.2 主网服务状态
| 服务 | 端口 | 协议 | 状态 | 通过 API Server |
|---|---|---|---|---|
| nac-cbpp | 9545 | NRPC 4.0 | ✅ 运行 | N/A(NRPC 非 HTTP) |
| nac-csnp | 9546 | HTTP | ✅ 运行 | ✅ |
| nac-nvm | 9547 | HTTP | ✅ 运行 | ✅ |
| nac-constitution-service | 9548 | HTTP+Token | ✅ 运行 | ✅ |
| nac-api-server | 9550 | HTTP | ✅ 运行 | 统一入口 |
| nac-asset-onboarding | 9552 | HTTP | ✅ 运行 | ✅ |
| nac-acc-service | 9554 | HTTP | ✅ 运行 | ✅ |
| nac-charter-service | 9555 | HTTP | ✅ 运行 | ✅ |
| nac_wallet_service | 9556 | HTTP | ✅ 运行 | ✅ |
| nac-rwa-exchange | 9557 | HTTP | ✅ 运行 | ✅ |
| nac-cnnl | 8765 | HTTP | ✅ 运行 | ✅ |
| nac-gnacs | 8001 | HTTP | ✅ 运行 | ✅ |
四、编译质量指标
| 指标 | 本次结果 |
|---|---|
| 核心 crate 总数 | 16 |
| 编译通过 | 16/16 (100%) |
| 编译错误 | 0 |
| 编译警告 | 0 |
| 以太坊残留 | 0(已全部清除) |
| secp256k1 引用 | 0 |
| BFT 投票机制 | 0 |
| Gas 机制 | 0(已替换为 ComplianceFee) |
五、代码归档
按照项目规范,旧版本代码已归档至备份目录:
_archive/nac-cbpp-bft-backup-20260307/— CBPP BFT 旧版本(vote.rs/validator.rs)_archive/wallet_legacy_v1/— 旧版 wallet 模块(nac-wallet-core/nac-wallet-cli/nac-vision-wallet)
六、集成测试结果
测试时间:2026-03-07 06:10:21 CST
| 测试项 | 预期 | 实际 | 结果 |
|---|---|---|---|
| API Server 统一入口 | HTTP 200 | HTTP 200 | ✅ |
NVM 代理 /api/v1/nvm/health |
HTTP 200 | HTTP 200 | ✅ |
ACC 代理 /api/v1/acc/health |
HTTP 200 | HTTP 200 | ✅ |
Charter 代理 /api/v1/charter/health |
HTTP 200 | HTTP 200 | ✅ |
GNACS 代理 /api/v1/gnacs/health |
HTTP 200 | HTTP 200 | ✅ |
CNNL 代理 /api/v1/cnnl/health |
HTTP 200 | HTTP 200 | ✅ |
Exchange 代理 /api/v1/exchange/health |
HTTP 200 | HTTP 200 | ✅ |
Wallet 代理 /api/v1/wallet/health |
HTTP 200 | HTTP 200 | ✅ |
Onboarding 代理 /api/v1/onboarding/health |
HTTP 200 | HTTP 200 | ✅ |
| 宪法层无 Token | HTTP 401 | HTTP 401 | ✅ |
| 宪法层有 Token | HTTP 200 | HTTP 200 | ✅ |
测试通过率:11/11 (100%)
七、Gitea 提交记录
| 提交哈希 | 说明 |
|---|---|
41c193c |
feat: 主网模块集成 + 彻底去除以太坊技术栈残留 |
fa6ced2 |
fix: FIX-005/006/007 安全修复 |
66eed0d |
docs: 安全审计修复完成报告 |
代码库:https://git.newassetchain.io/nacadmin/NAC_Blockchain
八、后续工作建议
- CBPP 共识完整实现:当前
receipt.rs/producer.rs为框架级实现,需要与 CBPP 节点(端口 9545)的 NRPC 4.0 协议完整对接 - nac-asset-onboarding 接口对接:当前使用 stub 接口,需要与
nac-udm的完整 API 对接 - 磁盘扩容:当前磁盘使用率 97%,建议扩容至 200G 或清理旧版本编译缓存
- API Token 轮换:宪法层 API Token 建议每 90 天轮换一次
- CSNP/NVM/ACC/Charter 认证:参照宪法层 Token 认证方案,为其他核心服务添加认证
后台管理员信息
服务器:103.96.148.7:22000
用户名:root
密码:XKUigTFMJXhH
Gitea 账号:nacadmin / NACadmin2026!