# 7z-encrypt > 端到端加密文件传输 | 零知识 + 零合并 | 服务端无密钥不解密 **发行版下载 (deb 安装包, 依赖自动安装):** Gitee [Releases v1.3.0](https://gitee.com/edgevoid/7z-encrypt/releases) · Gitea [Releases v1.3.0](http://8.136.202.225:3000/edgevoid/7z-encrypt/releases) 自托管、零知识、零合并的私有文件网盘。服务器只存密文卷——看不到内容,也看不到文件名。 ``` 本地 服务器 (任何自有机器) 本地 文件 ──32MB 切卷──> ┌───────────────────────────┐ ──aria2 并发拉卷──> 密文卷 │ │ 只存密文卷, 零合并不拼接 │ │ ├─ 逐卷 7z ─────>│ 不持密钥, 不解密 │ ├─ 逐卷解密 (context=vol:N) ├─ 逐卷加密 ────>│ 不存明文文件名 │ ├─ 7z 解压 └─ aria2 反向拉─>│ SQLite 元数据 + 目录管理 │ └─ 按序拼接还原 └───────────────────────────┘ ``` ## 核心设计 - **零知识**: 密钥永不出客户端。AES-256-GCM(C2SP chunked 流式认证加密, 16KiB 分块) - **零合并**: 服务端不存在解密/拼接代码路径, 密文卷原样落盘(怎么传的怎么放), 物理上无明文还原能力 - **卷级加密**: 32MB 统一切卷, 每卷 nonce 由 `context=7z-encrypt:v1:vol:N` 派生——加密参数零存储, 下载端按卷号重建 - **逐卷压缩**: 可压缩格式逐卷 7z mx=9; 已压缩格式(apk/zip/图片/视频黑名单)跳过二次压缩直传 - **aria2 全链路**: 上传走服务端反向拉取(客户端临时 HTTP 19000-19100)+ pull-status 实时进度; 下载 8 并发 × 4 连接/卷 - **完整性**: 逐卷 SHA-256 校验 + complete 总哈希双校验 - **账户隔离**: 一个账户一个空间, 跨账户 403 硬拒绝 - **文件名加密**: 元数据文件名也加密(enc: URL-safe base64) ## 安装 ```bash # deb 安装 (postinst 自动安装 aria2/p7zip/venv 依赖) sudo dpkg -i 7z-encrypt-client_1.0.0_all.deb # 源码版 (手机/Termux) sudo dpkg -i 7z-encrypt-client-bin_1.0.0_amd64.deb # Nuitka 编译版 (PC, 免 Python) # 源码运行 python3 -m venv .venv && .venv/bin/pip install -r requirements.txt ``` 命令: `sz-transfer` (CLI) / `sz-tui` (终端界面) / `sz-config` (配置) / `sz-backup` (一键备份) **完整 CLI 使用文档: [docs/CLI.md](docs/CLI.md)** (上传/下载/备份/目录/账号/示例) ## 目录管理 ``` sz-transfer --dir-create 相册备份 # 创建目录 (按用户隔离) sz-transfer --dir-list # 列表 (含每目录文件数) sz-transfer --dir-delete 1 # 删除目录 sz-transfer --init a.init.json --manifest a_manifest.json --dir 1 # 上传到指定目录 sz-transfer --move 1 2 # 移动文件到目录 (0=根) sz-transfer --clone 1 2 # 克隆文件 (物理复制卷 + 新记录) sz-transfer --list # 文件列表 (目录 + [目录名] 归属标记) ``` ## 一键备份 ``` sz-backup photos # 整个文件夹 = 一个文件: tar → 32MB 卷压缩 → 逐卷加密 → aria2 上传 sz-backup documents # 同上 (不分批, 全量单文件) sz-backup restore photos # 下载 → 自动还原 → 解包 ``` ## 测试 ```bash .venv/bin/pytest -q # 71 tests ``` ## 部署 - 服务端: [7z-encrypt-server](https://gitee.com/edgevoid/7z-encrypt-server)(独立仓库, 含 deb 双包 + 依赖自动安装) - 终端界面: [7z-encrypt-tui](https://gitee.com/edgevoid/7z-encrypt-tui) ## 代价与适用场景 自持硬件可用性(无 SLA/异地容灾)、无 Web/移动 App(CLI + TUI)、密钥丢失不可恢复。适合对数据主权有硬性要求的场景: 备份、涉密归档、跨设备私有传输。