peavey2787/qssm-rs
GitHub: peavey2787/qssm-rs
一个后量子安全的、无需可信设置的零知识证明工具包,为高吞吐 BlockDAG 提供轻量级验证方案。
Stars: 0 | Forks: 0
[](LICENSE)
[](CONTRIBUTING.md)
[](https://github.com/peavey2787/qssm-rs/actions/workflows/ci.yml)
[](https://github.com/peavey2787/qssm-rs/actions/workflows/ct-assembly-gate.yml)
# QSSM: Quantum-Safe Sovereign Multiset
### 无状态晶格驱动的真理引擎
**QSSM** 是一个通用的、后量子安全的、无需可信设置、无状态的零知识堆栈,核心是**无状态通用真理引擎**:一个基于格密码的系统,能够在不要求验证者重放历史、信任账本或依赖中心化中继的情况下,生成紧凑、可移植的证明。
我们的目标不是交付一个“开箱即用”的 L2。目标是构建一个密码学工具包:一个类似模板但无需证明者网络的集成接口、移动优先的性能目标,并且核心产品中不内嵌区块链孤岛。
在此语境下,“无状态”意味着验证者不会重放历史、不维护状态,也不依赖区块链账本。
更多细节请参见 [SECURITY.md](SECURITY.md)(披露策略与安全不变性)以及 [docs/01-architecture/architecture-overview.md](docs/01-architecture/architecture-overview.md)(高层系统边界)。
贡献指南:[CONTRIBUTING.md](CONTRIBUTING.md)
**注意:**
一些探索性的 L1/L2 应用说明与规范仍位于 `docs/02-protocol-specs/l1-l2`,但它们并非本仓库的产品边界,也不是 QSSM 的主要入口点。
### 功能特性
- **两种证明引擎,统一 API**
- **QSSM‑LE(引擎 A)**:基于掩码、盲化、证明者随机性和拒绝采样的 Lyubashevsky 风格格密码 NIZK。
- **QSSM‑MS(引擎 B)**:确定性、原生哈希谓词引擎,无需证明者随机性。
- 公共 API 暴露单一证明接口,但底层引擎在设计上有所不同。
- **后量子(格密码基础)**
- **无需证明者网络**(无 GPU 农场、无证明者集群)
- **无状态验证**(不重放账本、无历史记录)
- **移动级性能目标**(< 10ms)
- **模板驱动的真值谓词**
- **完全本地化的证明者 + 验证者**
- **六层冻结架构**
### 非目标
- 不是 zkVM
- 不是通用电路系统
- 不是区块链
- 不是证明者网络
- 不是“开箱即用”的 L2
- 不是排序器产品
### QSSM 适用于谁?
- 集成本地证明/验证流程的开发者
- 探索后量子证明系统的研究人员
- 构建无需区块链即可实现信任最小化应用的团队
- 审计确定性、冻结型密码原语的审计人员
### 状态
所有核心 crate 已冻结并稳定。API 遵循语义化版本锁定。
### 文档地图
- [架构概述](docs/01-architecture/architecture-overview.md)
- [QSSM‑LE — 引擎 A](docs/02-protocol-specs/qssm-le-engine-a.md)
- [QSSM‑MS — 引擎 B](docs/02-protocol-specs/qssm-ms-engine-b.md)
- [BLAKE3‑lattice 小工具规范](docs/02-protocol-specs/blake3-lattice-gadget-spec.md)
- [真理引擎层图](docs/01-architecture/diagrams/truth-engine-layers.md)
- [证明/验证流水线](docs/01-architecture/diagrams/prove-verify-pipeline.md)
- [贡献指南](CONTRIBUTING.md)
- [安全策略](SECURITY.md)
## 六层真理引擎
- **第 1 层 — `qssm-le`(格密码引擎 A)**:数学基础。
- **第 2 层 — `qssm-ms`(镜像移位引擎 B)**:完整性引擎与真理绑定器。
- **第 3 层 — `qssm-gadget`(递归桥接)**:允许引擎 A 验证引擎 B 的连接组织。
- **第 4 层 — `qssm-local-prover` + `qssm-entropy`**:消耗熵并生成完整的证明工件。
- **第 5 层 — `qssm-local-verifier`**:返回最终是/否决策的逻辑。
- **第 6 层 — `qssm-api`**:世界如何与机器通信。
## 仓库与冻结状态
- [`truth-engine/qssm-le`](truth-engine/qssm-le) — 第 1 层数学基础 — 冻结版本 `v1.0.0`。
- [`truth-engine/qssm-ms`](truth-engine/qssm-ms) — 第 2 层完整性引擎 — 冻结版本 `v1.0.0`。
- [`truth-engine/qssm-gadget`](truth-engine/qssm-gadget) — 第 3 层递归桥接 — 冻结版本 `v1.1.0`。
- [`truth-engine/qssm-local-prover`](truth-engine/qssm-local-prover) — 第 4 层本地证明者 — 冻结版本 `v2.0.0`。
- [`truth-engine/qssm-entropy`](truth-engine/qssm-entropy) — 第 4 层熵载体与 `to_seed()` 路径 — 冻结版本 `v1.0.0`。
- [`truth-engine/qssm-local-verifier`](truth-engine/qssm-local-verifier) — 第 5 层本地验证者 — 冻结版本 `v2.0.0`。
- [`truth-engine/qssm-api`](truth-engine/qssm-api) — 第 6 层公共集成接口 — 冻结版本 `v2.0.0`。
- [`truth-engine/qssm-utils`](truth-engine/qssm-utils) — 共享哈希、Merkle 树与熵辅助工具 — 冻结版本 `v1.0.0`。
- [`truth-engine/examples`](truth-engine/examples) — 示例集成与参考流程。
- [`desktop`](desktop) — 模板编写、实验工作流与桌面侧操作工具的 GUI。
- [`desktop/src-tauri`](desktop/src-tauri) — 桌面应用的 Rust 后端。
请查阅每个冻结 crate 的 `README.md`、`FREEZE.md` 与 `SECURITY_CHECKLIST.md`,以了解稳定契约与验证记录。
## 快速开始
### 首次阅读
1. 从 [架构概述](docs/01-architecture/architecture-overview.md) 开始。
2. 阅读协议规范:[引擎 A](docs/02-protocol-specs/qssm-le-engine-a.md)、[引擎 B](docs/02-protocol-specs/qssm-ms-engine-b.md) 与 [BLAKE3‑lattice 小工具](docs/02-protocol-specs/blake3-lattice-gadget-spec.md)。
3. 使用 `truth-engine/` 目录下的 crate README 作为贡献者入口点。
### 从哪里开始?
- 若你正在将真理引擎集成到应用、服务、SDK 或产品中,请从 [`truth-engine/qssm-api`](truth-engine/qssm-api) 开始。
- 若你想要模板编写、实验使用与桌面侧工具的工作流,请从 [`desktop`](desktop) 开始。
- 将 [`truth-engine/qssm-local-prover`](truth-engine/qssm-local-prover) 与 [`truth-engine/qssm-local-verifier`](truth-engine/qssm-local-verifier) 视为内部引擎层,除非你正在审计内部实现、修复缺陷或审查安全问题。
### 如何安装
```
git clone https://github.com/peavey2787/qssm-rs
cargo build --workspace
```
### 验证工作区
```
cargo check --workspace
cargo test -p qssm-api
cargo test -p qssm-entropy
```
### 最小示例
```
use qssm_api::{compile, commit, prove, verify, open};
fn main() {
// 1. Compile a template into an opaque blueprint (byte array).
let blueprint = compile("age-gate-21").expect("unknown template");
// 2. Commit to the secret so the prover cannot change it later.
let secret = b"my-secret";
let salt = [1u8; 32];
let commitment = commit(secret, &salt);
// 3. Prove a claim against the blueprint.
let claim = br#"{"claim":{"age_years":25}}"#;
let proof = prove(claim, &salt, &blueprint).expect("prove failed");
// 4. Verify the proof.
assert!(verify(&proof, &blueprint));
// 5. (Optional) Reveal — only for debugging or demonstration.
// Real zero-knowledge flows NEVER call this.
assert_eq!(open(secret, &salt), commitment);
}
```
## 许可与主权
本项目采用 **Business Source License 1.1 (BSL-1.1)** 许可。完整文本请参见 [`LICENSE`](LICENSE)。
- **非商业/研究用途**:完全免费,符合许可条款。
- **商业用途**:需要许可证(请参阅 `LICENSE`)。
- **变更日期**:2029 年 4 月 13 日(此后为 **GPLv3** 或更高版本,以 `LICENSE` 为准)。
*数学即法律,主权不可谈判。*
标签:BlockDAG, Lattice-based cryptography, Non-interactive zero-knowledge, No trusted setup, Rust, Sovereign Networks, Stateless Universal Truth Engine, ZK Stack, 主权网络, 区块链无关, 可视化界面, 后量子密码, 多集哈希, 平等序列化, 无状态验证, 格密码, 移动优先, 网络流量审计, 轻量级验证, 通知系统, 量子安全, 零知识证明, 高吞吐