NAC_Blockchain/sdk/nac-cli
NAC Admin 6652fd9ce8 refactor: 统一将 NRPC4.0/NrpcClient 更名为 nac_lens/NacLensClient
更名范围(代码文件,排除archive/target):
- protocol/nac-constitution-service/src/main.rs: NRPC4.0 -> nac_lens, mod nrpc -> mod nac_lens
- protocol/nac-nvm/src/constitution_interface.rs: NRPC4.0 -> nac_lens
- charter-std/src/constitution_interface.charter: NRPC4.0 -> nac_lens
- sdk/nac-cli/src/client/nac_lens.rs: NrpcClient -> NacLensClient
- sdk/nac-cli/src/client/mod.rs: NrpcClient -> NacLensClient
- sdk/nac-cli/src/commands/*.rs (6个文件): NrpcClient -> NacLensClient

保留不变:
- jsonrpc 字段名(NAC Lens 协议内部字段,非 NRPC 引用)
- cnnl-compiler/nac_lint.rs(lint 规则,已正确标注"NRPC 已更名为 NAC Lens")
- nvm_v2/documentation.rs 中的 JsonRpcProvider(以太坊对比示例代码)
- rwa/nac-lens-jurisdiction-router/src/lib.rs 中的历史说明注释(保留溯源记录)
- archive/ 目录(历史备份,不修改)

前期开发者已于 ISSUE-063 完成 1208 处替换,本次补全剩余 57 处
2026-03-18 23:11:40 +08:00
..
docs refactor: 目录重组 - 明确中心化运维与去中心化业务边界 2026-03-07 17:46:08 +08:00
src refactor: 统一将 NRPC4.0/NrpcClient 更名为 nac_lens/NacLensClient 2026-03-18 23:11:40 +08:00
test-constitution refactor: 目录重组 - 明确中心化运维与去中心化业务边界 2026-03-07 17:46:08 +08:00
test-contract refactor: 目录重组 - 明确中心化运维与去中心化业务边界 2026-03-07 17:46:08 +08:00
.gitignore refactor: 目录重组 - 明确中心化运维与去中心化业务边界 2026-03-07 17:46:08 +08:00
CHANGELOG.md refactor: 目录重组 - 明确中心化运维与去中心化业务边界 2026-03-07 17:46:08 +08:00
Cargo.lock refactor: 目录重组 - 明确中心化运维与去中心化业务边界 2026-03-07 17:46:08 +08:00
Cargo.toml refactor: 目录重组 - 明确中心化运维与去中心化业务边界 2026-03-07 17:46:08 +08:00
README.md refactor: 目录重组 - 明确中心化运维与去中心化业务边界 2026-03-07 17:46:08 +08:00
README.old.md refactor: 目录重组 - 明确中心化运维与去中心化业务边界 2026-03-07 17:46:08 +08:00

README.md

NAC CLI - NAC区块链命令行工具

NAC CLI是NAC (Native Autonomous Chain) 原生RWA公链的官方命令行工具提供完整的账户管理、交易发送、合约部署、宪法查询等功能。

特性

NAC CLI是专为NAC原生公链设计的命令行工具不继承任何以太坊或ERC标准,具有以下核心特性:

NAC原生技术栈

  • 智能合约语言: Charter非Solidity
  • 虚拟机: NVM非EVM
  • RPC协议: NAC Lens非JSON-RPC
  • 共识机制: CBPP宪政区块生产协议
  • 网络协议: CSNP非传统P2P
  • 地址格式: 32字节非以太坊的20字节
  • 哈希算法: SHA3-38448字节非Keccak256

核心功能

账户管理

  • 创建新账户(交互式密码输入)
  • 导入/导出私钥AES-256-GCM加密
  • 列出所有账户
  • 查询账户余额和RWA资产
  • Keystore加密存储

交易管理

  • 发送NAC交易带签名和确认
  • 查询交易详情和状态
  • 获取交易收据包含宪法收据CR
  • 签名和广播交易

Charter合约

  • 部署Charter智能合约
  • 调用合约方法(只读查询)
  • 发送合约交易(状态变更)
  • 查询合约代码和信息

宪法系统

  • 查询宪法条款(三层级:基础/核心/操作)
  • 验证条款状态
  • 查看条款参数
  • 获取宪法收据Constitutional Receipt

节点和区块

  • 查询节点信息和状态
  • 查看对等节点列表
  • 查询区块详情
  • 获取最新区块和区块高度

配置管理

  • 初始化配置文件
  • 查看和修改配置
  • 多环境支持

安装

从源码编译

# 克隆仓库
git clone ssh://root@103.96.148.7:22000/NAC/nac-cli.git
cd nac-cli

# 编译
cargo build --release

# 安装
cargo install --path .

系统要求

  • Rust 1.70+
  • 操作系统: Linux, macOS, Windows

快速开始

1. 初始化配置

nac config init

2. 配置RPC节点

nac config set network.rpc_url http://your-nac-node:8545

3. 创建账户

nac account create

4. 查询余额

nac account balance <地址>

5. 发送交易

nac tx send <发送方地址> <接收方地址> <金额>

命令参考

完整的命令参考请查看 docs/COMMANDS.md

NAC RPC方法

完整的RPC方法列表请参考 docs/NAC_RPC_METHODS.md

配置文件

配置文件位于 ~/.nac/config.toml,详细说明请查看 docs/CONFIGURATION.md

安全注意事项

  • 私钥使用AES-256-GCM加密存储
  • 所有交易都需要通过宪法验证CEE
  • 使用HTTPS连接RPC节点

技术架构

加密模块

  • 哈希: SHA3-38448字节
  • 签名: secp256k1
  • 地址: 32字节
  • 加密: AES-256-GCM

NAC Lens客户端

实现了60+个NAC RPC方法包括账户、交易、合约、宪法、共识等。

许可证

MIT License

更新日志

v2.0.0 (2026-02-18)

  • 完整实现NAC原生RPC客户端60+方法)
  • 使用NAC原生加密算法SHA3-384、32字节地址
  • Keystore管理AES-256-GCM加密
  • 账户、交易、合约、宪法、节点、区块、配置管理
  • 完整的文档和测试

致谢

感谢NAC团队的所有贡献者。