164 lines
3.3 KiB
Markdown
164 lines
3.3 KiB
Markdown
# 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-384(48字节,非Keccak256)
|
||
|
||
### 核心功能
|
||
|
||
**账户管理**
|
||
|
||
- 创建新账户(交互式密码输入)
|
||
- 导入/导出私钥(AES-256-GCM加密)
|
||
- 列出所有账户
|
||
- 查询账户余额和RWA资产
|
||
- Keystore加密存储
|
||
|
||
**交易管理**
|
||
|
||
- 发送NAC交易(带签名和确认)
|
||
- 查询交易详情和状态
|
||
- 获取交易收据(包含宪法收据CR)
|
||
- 签名和广播交易
|
||
|
||
**Charter合约**
|
||
|
||
- 部署Charter智能合约
|
||
- 调用合约方法(只读查询)
|
||
- 发送合约交易(状态变更)
|
||
- 查询合约代码和信息
|
||
|
||
**宪法系统**
|
||
|
||
- 查询宪法条款(三层级:基础/核心/操作)
|
||
- 验证条款状态
|
||
- 查看条款参数
|
||
- 获取宪法收据(Constitutional Receipt)
|
||
|
||
**节点和区块**
|
||
|
||
- 查询节点信息和状态
|
||
- 查看对等节点列表
|
||
- 查询区块详情
|
||
- 获取最新区块和区块高度
|
||
|
||
**配置管理**
|
||
|
||
- 初始化配置文件
|
||
- 查看和修改配置
|
||
- 多环境支持
|
||
|
||
## 安装
|
||
|
||
### 从源码编译
|
||
|
||
```bash
|
||
# 克隆仓库
|
||
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. 初始化配置
|
||
|
||
```bash
|
||
nac config init
|
||
```
|
||
|
||
### 2. 配置RPC节点
|
||
|
||
```bash
|
||
nac config set network.rpc_url http://your-nac-node:8545
|
||
```
|
||
|
||
### 3. 创建账户
|
||
|
||
```bash
|
||
nac account create
|
||
```
|
||
|
||
### 4. 查询余额
|
||
|
||
```bash
|
||
nac account balance <地址>
|
||
```
|
||
|
||
### 5. 发送交易
|
||
|
||
```bash
|
||
nac tx send <发送方地址> <接收方地址> <金额>
|
||
```
|
||
|
||
## 命令参考
|
||
|
||
完整的命令参考请查看 [docs/COMMANDS.md](docs/COMMANDS.md)
|
||
|
||
## NAC RPC方法
|
||
|
||
完整的RPC方法列表请参考 [docs/NAC_RPC_METHODS.md](docs/NAC_RPC_METHODS.md)
|
||
|
||
## 配置文件
|
||
|
||
配置文件位于 `~/.nac/config.toml`,详细说明请查看 [docs/CONFIGURATION.md](docs/CONFIGURATION.md)
|
||
|
||
## 安全注意事项
|
||
|
||
- 私钥使用AES-256-GCM加密存储
|
||
- 所有交易都需要通过宪法验证(CEE)
|
||
- 使用HTTPS连接RPC节点
|
||
|
||
## 技术架构
|
||
|
||
### 加密模块
|
||
|
||
- **哈希**: SHA3-384(48字节)
|
||
- **签名**: 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团队的所有贡献者。
|