secubox-openwrt/package/secubox/luci-app-zkp/README.zh.md
CyberMind-FR ccfb58124c docs: Add trilingual documentation (French and Chinese translations)
Add complete French (fr) and Chinese (zh) translations for all documentation:

- Root files: README, CHANGELOG, SECURITY, BETA-RELEASE
- docs/: All 16 core documentation files
- DOCS/: All 19 deep-dive documents including embedded/ and archive/
- package/secubox/: All 123+ package READMEs
- Misc: secubox-tools/, scripts/, EXAMPLES/, config-backups/, streamlit-apps/

Total: 346 translation files created

Each file includes language switcher links for easy navigation between
English, French, and Chinese versions.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-03-20 10:00:18 +01:00

4.8 KiB
Raw Blame History

English | Francais | 中文

LuCI ZKP 哈密顿仪表板

基于哈密顿回路问题的零知识证明密码学 Web 界面Blum 1986

功能特性

  • 密钥生成 - 创建图 + 哈密顿回路对
  • 证明创建 - 使用 Fiat-Shamir 启发式生成 NIZK 证明
  • 验证 - 验证证明并返回接受/拒绝结果
  • 密钥管理 - 列出、查看和删除已保存的密钥

截图

┌─────────────────────────────────────────────────────┐
│  ZKP 哈密顿密码学                      [v1.0.0]    │
├─────────────────────────────────────────────────────┤
│  已保存密钥: 3    最大节点: 50    哈希: SHA3-256   │
├─────────────────────────────────────────────────────┤
│  🔑 生成新密钥                                      │
│  ┌──────────┐ ┌──────────┐ ┌──────────┐            │
│  │ 名称     │ │ 节点     │ │ 密度     │ [生成]    │
│  │ my_key   │ │ 20       │ │ 0.8      │            │
│  └──────────┘ └──────────┘ └──────────┘            │
├─────────────────────────────────────────────────────┤
│  🗂️ 已保存密钥                                      │
│  ┌─────────┬───────┬────────┬─────────┬──────────┐ │
│  │ 名称    │ 节点  │ 图     │ 创建    │ 操作     │ │
│  ├─────────┼───────┼────────┼─────────┼──────────┤ │
│  │ test_1  │ 20    │ 1.2 KB │ 10:15   │ P  V  X  │ │
│  │ demo    │ 30    │ 2.1 KB │ 09:30   │ P  V  X  │ │
│  └─────────┴───────┴────────┴─────────┴──────────┘ │
└─────────────────────────────────────────────────────┘

菜单位置

状态 > ZKP 密码学

依赖项

  • zkp-hamiltonian - CLI 工具zkp_keygen、zkp_prover、zkp_verifier
  • OpenSSL用于 SHA3-256

RPCD 方法

方法 参数 描述
status - 库版本、密钥数量、路径
keygen nodes, density, name 生成图 + 回路
prove name 创建 NIZK 证明
verify name 验证证明 → 接受/拒绝
list_keys - 列出所有已保存密钥
delete_key name 删除密钥和文件
get_graph name 获取图元数据

使用方法

生成密钥

  1. 输入密钥名称(如 my_secret
  2. 选择节点数量4-50默认 20
  3. 选择边密度0.5-1.0,默认 0.8
  4. 点击 生成

创建和验证证明

  1. 在已保存的密钥上点击 证明
  2. 等待证明生成
  3. 点击 验证 进行验证
  4. 结果显示 接受拒绝

文件存储

/var/lib/zkp/
├── graphs/     # 二进制图文件 (.graph)
├── keys/       # 哈密顿回路文件 (.key)
└── proofs/     # 生成的证明 (.proof)

协议

ZKP 协议在不泄露回路的情况下证明对图中哈密顿回路的知识:

  1. 证明者拥有图 G 和秘密哈密顿回路 H
  2. 证明者创建随机置换 π,计算 G' = π(G)
  3. 证明者使用 SHA3-256 对 G' 的边进行承诺
  4. 挑战通过 Fiat-Shamir 导出G、G'、承诺的哈希)
  5. 响应揭示:
    • 挑战=0置换 π(证明 G ≅ G'
    • 挑战=1G' 中的回路(证明 H 存在)
  6. 验证者检查承诺和响应

安全性:使用 SHA3-256 时 ~2^-128 健全性错误。

构建

# 在 OpenWrt buildroot 中
make package/luci-app-zkp/compile V=s

# 安装
opkg install luci-app-zkp_*.ipk

快速部署(开发)

# 部署到路由器
scp htdocs/luci-static/resources/view/zkp/overview.js root@192.168.255.1:/www/luci-static/resources/view/zkp/
scp root/usr/libexec/rpcd/luci.zkp root@192.168.255.1:/usr/libexec/rpcd/
ssh root@192.168.255.1 'killall rpcd; /etc/init.d/rpcd start'

许可证

GPL-2.0-or-later

作者

SecuBox / CyberMind.FR