NAC_Blockchain/protocol/nac-nvm
NAC Admin 74d88fc80f Issue #78 #79: protocol/ 和 rwa/ 目录分组重组
Issue #78: 将协议层模块迁移到 protocol/ 目录
- nac-udm, nac-cbpp, nac-cbpp-l0/l1, nac-csnp, nac-csnp-l0/l1/service
- nac-nvm, nac-nvm-service, nac-constitution-*, nac-lens
- 修复 nac-csnp-l0 缺少 sha3 依赖
- 修复 nac-constitution-clauses review_committee 字段名
- 所有 15 个 Rust 协议模块编译通过

Issue #79: 将 RWA 模块迁移到 rwa/ 目录
- nac-rwa-legal-model, nac-rwa-jurisdiction-adapters, nac-rwa-contract-templates
- nac-rwa-bilateral-rules, nac-rwa-sharia-compliance, nac-jurisdiction-rules/compat/version
- nac-lens-jurisdiction-router, nac-rwa-exchange, nac-asset-onboarding, nac-multi-jurisdiction
- 更新所有 Cargo.toml 路径引用
- nac-onboarding-system 归档(历史遗留编译问题)
- nac-api-server 路径更新并重新部署

目录结构: protocol/ rwa/ services/ ops/ sdk/ _archive/
2026-03-07 18:12:43 +08:00
..
src Issue #78 #79: protocol/ 和 rwa/ 目录分组重组 2026-03-07 18:12:43 +08:00
Cargo.lock Issue #78 #79: protocol/ 和 rwa/ 目录分组重组 2026-03-07 18:12:43 +08:00
Cargo.toml Issue #78 #79: protocol/ 和 rwa/ 目录分组重组 2026-03-07 18:12:43 +08:00
ISSUE_017_COMPLETION.md Issue #78 #79: protocol/ 和 rwa/ 目录分组重组 2026-03-07 18:12:43 +08:00
README.md Issue #78 #79: protocol/ 和 rwa/ 目录分组重组 2026-03-07 18:12:43 +08:00

README.md

NAC虚拟机NVM

NAC原生虚拟机用于执行Charter智能合约。NVM是专为RWAReal World Assets设计的虚拟机内置宪法验证、合规检查和资产操作指令。

特性

核心功能

  • 完整的指令集: 栈操作、算术运算、逻辑运算、内存操作、控制流、RWA专用指令、宪法验证指令、合规检查指令
  • 高级内存管理: 页式内存分配、标记-清除垃圾回收、内存安全检查、性能优化
  • JIT编译器: 热点代码检测、多级优化、内联优化、常量折叠、死代码消除、编译缓存
  • 沙箱安全系统: 权限策略、资源限制、安全监控、审计日志、安全报告生成

NAC专用指令

RWA资产操作

  • AssetCreate: 创建RWA资产
  • AssetTransfer: 转移资产所有权
  • AssetQuery: 查询资产信息
  • AssetBurn: 销毁资产

宪法验证

  • ConstitutionCheck: 检查宪法合规性
  • ClauseVerify: 验证特定条款
  • RightsQuery: 查询权利信息

合规检查

  • KycVerify: KYC身份验证
  • AmlCheck: 反洗钱检查
  • ComplianceReport: 生成合规报告

使用方法

基础执行

```rust use nac_nvm::{Executor, Opcode, Bytecode};

let mut executor = Executor::new(); let bytecode = Bytecode::new(vec![Opcode::Push, Opcode::Push, Opcode::Add]); let result = executor.execute(&bytecode)?; ```

使用JIT编译

```rust use nac_nvm::{JitCompiler, OptimizationLevel};

let mut jit = JitCompiler::new(); jit.set_optimization_level(OptimizationLevel::O2); let compiled = jit.compile(&bytecode)?; let result = compiled.execute()?; ```

使用沙箱

```rust use nac_nvm::{Sandbox, SecurityPolicy, ResourceLimits};

let mut sandbox = Sandbox::with_limits(policy, limits); sandbox.initialize()?; sandbox.pre_execution_check(Opcode::Push)?; let report = sandbox.generate_security_report(); ```

测试

```bash cargo test ```

33个测试全部通过

更新日志

v1.0.0 (2026-02-18)

  • 完整的指令集实现
  • NAC专用RWA指令
  • 高级内存管理
  • JIT编译器
  • 沙箱安全系统
  • 33个测试全部通过

许可证

MIT License