NAC_Blockchain/docs/NAC_Complete_Technical_Docu...

374 lines
12 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# NAC原生技术栈完整技术文档
**版本**: v2.0.0
**日期**: 2026年2月7日
**状态**: ✅ 代码化完成
---
## 📋 目录
1. [项目概述](#项目概述)
2. [技术架构](#技术架构)
3. [核心组件](#核心组件)
4. [代码统计](#代码统计)
5. [使用指南](#使用指南)
6. [开发路线图](#开发路线图)
---
## 项目概述
NAC (NewAssetChain) 是一条为RWA资产通证化打造的高性能原生区块链基础设施。本项目包含了NAC的完整技术栈实现从底层虚拟机到上层智能合约语言100%独立设计0%以太坊依赖。
### 核心特性
-**GNACS编码系统**: 48位资产"数字基因"
-**主权管理**: A0-G5七种主权类型
-**合规内置**: KYC/AML/司法辖区验证
-**ACC协议族**: ACC-20/ACC-721/ACC-1155等
-**Charter语言**: RWA专用智能合约语言
-**NVM虚拟机**: NAC原生虚拟机
-**CBPP共识**: 宪政区块生产协议
-**CSNP网络**: 宪政结构化网络协议
---
## 技术架构
### 三层架构
```
┌─────────────────────────────────────────────────────────┐
│ L2 治理层Governance Layer
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 宪法框架 │ │ 条款系统 │ │ 规则引擎 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ┌──────────────┐ ┌──────────────┐ │
│ │ 主权管理 │ │ CCRN中继 │ │
│ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────┐
│ L1 协议层Protocol Layer
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ ACC协议族 │ │ CBPP共识 │ │ GNACS编码 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ NVM虚拟机 │ │ 碎片化协议 │ │ ACC-20C │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────┐
│ L0 原生层Native Layer
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ 全局身份 │ │ 资产注册 │ │ 权限引擎 │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ┌──────────────┐ ┌──────────────┐ │
│ │ 碎片化网络 │ │ 宪政账户 │ │
│ └──────────────┘ └──────────────┘ │
└─────────────────────────────────────────────────────────┘
```
---
## 核心组件
### 1. NAC_UDM (统一定义模块)
**语言**: Rust
**代码量**: 20,052行
**文件数**: 88个
**功能**:
- L0原生层实现
- L1协议层实现ACC/CBPP/GNACS/NVM
- L2治理层实现宪法/主权/规则)
- L2网络层实现CSNP
**新增模块**(本次开发):
- `acc/acc20_enhanced.rs` - GNACS增强版ACC-201,000+行)
- `acc20c/wrapper.rs` - ACC-20C包装器537行
- `acc20c/sync_engine.rs` - 状态同步引擎695行
- `acc20c/metadata_generator.rs` - 元数据生成器328行
- `acc20c/permission_proxy.rs` - 权限代理系统481行
- `l2_governance/sovereignty_rules.rs` - 主权规则系统660行
- `l2_governance/sovereignty_history.rs` - 主权历史追踪441行
### 2. Charter标准库
**语言**: Charter (.ch)
**代码量**: 11,266行
**文件数**: 17个
**模块列表**:
| 模块 | 文件 | 行数 | 功能 |
|------|------|------|------|
| GNACS编码 | asset/gnacs.ch | 300 | 48位编码系统 |
| 主权规则 | sovereignty/rules.ch | 592 | A0-G5主权类型 |
| ACC-20标准 | acc/acc20.ch | 557 | 可替代资产协议 |
| **ACC-20增强版** | **acc/acc20_enhanced.ch** | **733** | **GNACS集成** |
| **ACC-20C兼容层** | **acc/acc20c.ch** | **584** | **跨链桥接** |
| ACC-721标准 | acc/acc721.ch | 771 | 唯一资产协议 |
| 数学运算 | utils/math.ch | 476 | 安全算术 |
| 资产元数据 | asset/metadata.ch | 556 | 元数据管理 |
| 加密函数 | utils/crypto.ch | 380 | Blake3哈希 |
| 资产生命周期 | asset/lifecycle.ch | 711 | 状态管理 |
| 链上登记 | sovereignty/registry.ch | 765 | 登记系统 |
| 合规检查 | sovereignty/compliance.ch | 837 | KYC/AML |
| 交易市场 | defi/marketplace.ch | 875 | 订单簿 |
| 借贷协议 | defi/lending.ch | 819 | 抵押借贷 |
| 流动性池 | defi/liquidity.ch | 810 | AMM机制 |
| 投票系统 | governance/voting.ch | 771 | 链上投票 |
| 提案管理 | governance/proposal.ch | 729 | 提案系统 |
### 3. Charter编译器
**语言**: Rust
**代码量**: 2,647行
**文件数**: 7个
**组件**:
- 词法分析器lexer.rs
- 语法分析器parser.rs
- 语义分析器semantic.rs
- 代码生成器codegen.rs
- 优化器optimizer.rs
- PEG语法定义charter.pest
### 4. NVM_v2 (NAC虚拟机)
**语言**: Rust
**代码量**: 73,557行
**文件数**: 108个
**特性**:
- RWA专用操作码
- GNACS指令集
- 主权验证指令
- Gas计量系统
- 状态管理
---
## 代码统计
### 总代码量
| 组件 | 语言 | 文件数 | 代码行数 |
|------|------|--------|----------|
| NAC_UDM | Rust | 88 | 20,052 |
| Charter标准库 | Charter | 17 | 11,266 |
| Charter编译器 | Rust | 7 | 2,647 |
| NVM_v2 | Rust | 108 | 73,557 |
| **总计** | | **220** | **107,522** |
### 本次开发新增
| 阶段 | 组件 | 代码行数 |
|------|------|----------|
| 阶段1 | ACC-20增强版Rust | 1,000+ |
| 阶段2 | ACC-20C兼容层Rust | 2,152 |
| 阶段3 | 主权管理系统Rust | 1,221 |
| 阶段4 | Charter标准库扩展 | 1,317 |
| **总计** | | **5,690+** |
---
## 使用指南
### 编译NAC_UDM
```bash
cd NAC_Clean_Dev/nac-udm
cargo build --release
cargo test
```
### 编译Charter编译器
```bash
cd NAC_Clean_Dev/charter-compiler
cargo build --release
```
### 编译Charter标准库
```bash
cd NAC_Clean_Dev/charter-compiler
./target/release/charter-compiler ../charter-std/acc/acc20_enhanced.ch
```
### 运行示例
```bash
cd NAC_Clean_Dev
./charter-compiler/target/release/charter-compiler examples/acc20_enhanced_complete_example.ch
```
---
## 核心概念
### GNACS编码
GNACS (Global NAC Asset Classification System) 是48位的资产"数字基因"
```
┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐
│ 大类(8) │ 子类(8) │ 辖区(8) │ 合规(8) │ 风险(8) │ 校验(8) │
└─────────┴─────────┴─────────┴─────────┴─────────┴─────────┘
0-255 0-255 0-255 0-255 0-255 0-255
```
**示例**: `0x940101120187`
- `94`: 股权类资产
- `01`: 商业地产股权
- `01`: 中国司法辖区
- `12`: 高合规要求
- `01`: 中等风险
- `87`: 校验和
### 主权类型
| 类型 | 名称 | 描述 |
|------|------|------|
| A0 | 绝对所有权 | 完全控制权,无限制 |
| B1 | 使用权 | 有期限的使用权利 |
| C2 | 收益权 | 享有资产收益分配权 |
| D0 | 担保主权 | 作为抵押品的权利 |
| E3 | 知识产权 | 专利、版权、商标等 |
| F4 | 临时监管权 | 托管期间的管理权 |
| G5 | 共有权 | 多方共同所有 |
### ACC-20C兼容层
ACC-20C是NAC与以太坊生态的战略桥梁
```
NAC链 以太坊链
┌──────────────┐ ┌──────────────┐
│ ACC-20资产 │ │ ERC-721 NFT │
│ │ ──包装→ │ │
│ 1000股 │ │ TokenId: 1 │
│ │ ←─解包装─ │ │
└──────────────┘ └──────────────┘
```
**包装流程**:
1. 锁定NAC链上的ACC-20资产
2. 铸造以太坊链上的ERC-721 NFT
3. 生成符合OpenSea标准的元数据
4. 保持合规状态同步
**解包装流程**:
1. 验证以太坊链上的NFT所有权
2. 销毁ERC-721 NFT
3. 解锁NAC链上的ACC-20资产
4. 转移给接收者
---
## NAC合规性
### 术语对照表
| 以太坊术语 | NAC术语 | 说明 |
|-----------|---------|------|
| Token | Asset | 资产 |
| NFT | Certificate | 凭证 |
| Balance | Holdings | 持有量 |
| Account | Address | 地址 |
| Contract | Certificate | 合约 |
| SHA256/Keccak256 | Blake3 | 哈希算法 |
### 禁止使用的术语
❌ ERC-20/ERC-721/ERC-1155
❌ Ethereum/EVM
❌ Solidity
❌ Token/NFT
❌ Balance
❌ Account
### 必须使用的术语
✅ ACC-20/ACC-721/ACC-1155
✅ NAC/NVM
✅ Charter
✅ Asset/Certificate
✅ Holdings
✅ Address
---
## 开发路线图
### ✅ 已完成v2.0.0
- [x] NAC_UDM三层架构
- [x] GNACS编码系统
- [x] ACC协议族
- [x] Charter标准库17个模块
- [x] ACC-20增强版
- [x] ACC-20C兼容层
- [x] 主权管理系统
- [x] Charter编译器
- [x] NVM虚拟机
### 🔄 进行中v2.1.0
- [ ] CBPP共识完整实现
- [ ] CSNP网络协议
- [ ] 量子浏览器
- [ ] NRPC3.0
- [ ] XTZH稳定币机制
### 📋 计划中v3.0.0
- [ ] 七层合规验证框架
- [ ] AI合规检查引擎
- [ ] AI估值引擎
- [ ] 跨链桥接网络
- [ ] NAC原生钱包
- [ ] NAC原生交易市场
---
## 技术支持
### 文档
- [Charter语言规范](./CHARTER_LANGUAGE_SPECIFICATION.md)
- [NAC核心原则](../memory/principles/nac_core_principles.md)
- [开发决策记录](../memory/decisions/)
### 示例
- [ACC-20增强版完整示例](../examples/acc20_enhanced_complete_example.ch)
- [上海办公室股权示例](../examples/shanghai_office.charter)
### 记忆系统
- [NAC核心原则](../memory/principles/)
- [开发决策](../memory/decisions/)
- [技术债务](../memory/technical_debt/)
---
## 许可证
MIT License
---
## 贡献者
NewAssetChain Team
---
**最后更新**: 2026年2月7日
**文档版本**: v2.0.0