Peergos 介绍与选型指南
Peergos(p2p 端到端加密云存储与社交平台)介绍与选型指南:六层核心架构、功能特性、快速开始与适用限制,并与 Nextcloud/Seafile/Syncthing/FileBrowser 做量化选型对比(星数/许可证/加密模型),基于官方资料溯源(查询日期 2026-10-31)。
Peergos 介绍与选型指南
目标:面向需要「自托管加密网盘/私有云存储」场景的读者,讲清 Peergos 是什么、核心架构与功能边界、快速开始路径,并与 Nextcloud、Seafile、Syncthing、FileBrowser 等同类自托管存储服务做量化对比。本文基于官方资料溯源整理,版本与星数等数据的查询日期均为 2026-10-31。
一、环境信息
本文为认知与选型篇,全部信息来自官方一手来源联网溯源(标注见各节与参考链接),未引入本地实测数据:
- 溯源对象:Peergos(官网 peergos.org / 技术手册 book.peergos.org / GitHub 仓库 Peergos/Peergos 与 Peergos/web-ui)
- 版本核查:官方发行通道实查最新稳定版为 1.41.0(
release latest-version官方发布接口返回值,查询日期 2026-10-31) - 源码快照:GitHub 仓库 Peergos/Peergos(master 分支,快照提交 b14e380,2026-10-30)
- 许可证:AGPL-3.0(仓库
Licence.txt原文确认) - 实现语言:服务端 Java(运行于 JVM),Web 界面以 Java 交叉编译为 JavaScript(GWT 路线)
- 运行前置:Java 25 及以上(官方 README 安装要求原文:
You will need Java >= 25 installed)
二、软件概述
Peergos 名称取自希腊语 Πύργος(Pyrgos,意为「堡垒/塔」),谐音 peer-to-peer 的「peer」,官方读音为 peer-goss。项目口号是 "Control your data, control your destiny"(控制你的数据,掌握你的命运)。
Peergos 的官方定位是构建「下一代的私有 Web」:其基础是一个点对点的端到端加密全局文件系统,具备细粒度访问控制,设计目标是对「数据内容监控」与「好友关系图谱监控」双重抵抗。在此之上它还内置了加密聊天(messenger)、加密邮件客户端与桥接、以及一个完全私密的社交网络——谁能看到什么由密码学保证,而非服务器策略。它同时是一个可自托管的存储服务器:用户既可以使用官方付费托管 peergos.net,也可以在自己家中的 NAS/服务器上运行自己的 Peergos 实例。
💡 技术拓展:自托管网盘的加密模型常见三类——
加密模型 代表 数据机密性边界 不加密(明文存储) FileBrowser 依赖文件系统权限与 TLS,服务器管理员可见明文 静态加密(服务端落盘加密) Seafile(存储块加密) 密钥在服务端持有/派生,管理员与入侵者可解 端到端加密(客户端加密) Peergos、Cryptomator 叠加方案 私钥只在用户设备,服务器只存密文,服务器被攻破也读不到内容 Peergos 采用端到端加密:文件在上传前就在用户设备上用 TweetNaCl 加密(每 5MiB 分块独立加密,且每个文件/目录使用两个随机对称密钥,明确不使用会泄露元信息的收敛加密),服务器存储的是密文块。
💡 技术拓展:开源许可证对比——
许可证 核心特点 商用友好度 MIT / Apache-2.0 允许闭源分发,仅保留版权声明 高 MPL-2.0 文件级 copyleft,修改文件需开源 高 GPL-3.0 衍生作品分发即触发开源 中 AGPL-3.0 网络服务形式提供也触发开源义务 低 Peergos 采用 AGPL-3.0(仓库 Licence.txt 确认):自托管自用无负担;若二次修改后以网络服务对外提供,需开放修改后的源码。
三、核心架构
官方技术手册(book.peergos.org,2026-10-31 溯源)与仓库 README 将 Peergos 架构划分为 6 层:
- 点对点与数据层:内嵌一个 Java 实现的极简 IPFS——Nabu(官方仓库 peergos/nabu),负责数据存储、路由与检索。一个用户的数据至少要有一台 Peergos 实例(其「主服务器」home server)在存储,数据才可用。
- 授权层:每对密钥控制文件系统的一部分,每次写入都要签名。
- 数据存储层:密钥持有者的公钥之下是一棵 merkle-CHAMP(哈希数组映射字典树)加密块树,块以随机标签存放,块间无服务器可见的交叉链接——服务器无法推断文件大小。
- 加密层:在用户设备上用 TweetNaCl 做强加密,每 5MiB 分块独立加密。未分享给他人的文件已经天然抗量子计算机攻击(解密只涉及哈希与对称加密);已分享文件使用的非对称部分待后量子算法替换(官方路线图声明)。
- 社交层:实现「关注/好友」概念——任何人可向任何人发送 follow request,该请求密码学 blinded,服务器看不到谁在关注谁。
- 分享层:基于 Wuala 的 Cryptree 体系做加密分享;可为文件/目录生成 secret link(形如
https://域名/#密钥材料,#后的密钥不会发给服务器,由浏览器本地解析),也可将能力(capability)公开。
信任模型(README "Trust" 一节原文归纳):服务器与存储是 trustless 的——即使你的服务器被攻破,数据与元数据也不会暴露(前提是客户端未被攻破);IPFS 层与对象存储层同样不被信任,从其中存取的所有数据都是自证(self-certifying)的。
节点与身份:全网有一个 PKI 节点以类似 certificate transparency 的结构保证用户名唯一,所有 Peergos 服务器都会镜像这份 PKI 数据;新节点可通过任意公共 Peergos 服务器加入网络。登录口令与随机盐、口令哈希经 scrypt(参数 17, 8, 1, 96)派生密钥,密钥永不离开客户端。
四、功能特性
官方 README 与技术手册列出的能力面(2026-10-31 溯源):
- 加密网盘:Web 界面(Vue.js + GWT 交叉编译)+ 桌面/移动客户端,文件、照片、目录的加密存储与浏览;
- 加密分享:secret link 分享(链接不泄露内容)、指定好友的读/写分享、公开 capability 发布;
- 社交图谱:follow request 好友机制(元数据加密隐藏)、动态/社交流;
- 加密聊天:messenger,支持与真实电子邮件互操作的桥接;
- Web 应用沙箱:Web 应用可直接从 Peergos 加载运行,沙箱化、防追踪、防数据外泄,应用权限由用户授予;
- 多端接入:CLI(
shell交互式命令行)、FUSE 原生挂载、WebDAV 桥、双向目录同步客户端(sync); - 账号恢复:社交式账号恢复——指定 N of M 个好友协作找回账号;支持 U2F 双因子;
- 服务端可插拔存储:块存储支持内置 IPFS/Nabu 本地盘,或 S3 兼容对象存储(含 Backblaze B2——官方 peergos.net 生产环境即使用 B2);元数据库支持 SQLite 或 PostgreSQL;
- 服务器运维:配额管理、注册令牌、服务器身份轮换(server-identity gen-next/rotate)、用户数据镜像(mirror)、账号迁移(migrate)、块存储垃圾回收(gc);
- 自更新:新版本软件可通过 Peergos 网络自身分发(用户可关闭),官方发行包类型覆盖 jar / flatpak / rpm / msi / pkg / apk(
release get -type官方 help 原文)。
安全审计:项目接受过两次独立安全审计——2019 年与 2024 年,均由 Cure53 执行(官方 Audits 一节与 peergos.org/posts,2026-10-31 溯源)。
五、快速开始(最小可用示例)
以下为官方 README「Usage - self hosting (with docker)」一节的最小自托管示例(官方原文摘录,查询日期 2026-10-31;完整部署、初始化与注册流程的实测版见本专栏《Peergos 1.41.0 Docker Compose 部署指南》):
docker pull ghcr.io/peergos/web-ui:master
docker run --volume $(PEERGOS_PATH):/opt/peergos/data ghcr.io/peergos/web-ui:master daemon -listen-host 0.0.0.0 -public-domain $YOUR_DOMAIN_NAME -public-server true -announce-ipfs-addresses /ip4/$IP/tcp/4001,/ip4/$IP/udp/4001/quic-v1 -log-to-console true
要点(官方 README 原文归纳):
- 数据目录通过卷挂载到镜像内
/opt/peergos/data;配置文件持久化在$PEERGOS_PATH/config,首次运行后可直接改配置文件再重启; - 不用域名与 TLS 也能用:局域网内直接
java -jar Peergos.jar daemon -generate-token true -listen-host 0.0.0.0,其他设备用桌面客户端或shell -peergos-url http://192.168.1.10:8000连入(明文 http 仅接受私网地址与 localhost); - 注册新用户需要注册令牌:
quota token create生成,注册入口为 Web 界面https://域名/?signup=true&token=$TOKEN或 CLI shell; - 新用户默认配额 1 GiB,可用
-default-quota调整; - 首次启动会同步 PKI,耗时数分钟(官方 troubleshooting 原文:
The very first run will sync the pki and this takes several minutes. Subsequent runs should start within seconds.),之后每次启动秒级; - Java 直跑形态要求 Java >= 25;镜像形态自带 JRE 无需宿主安装 Java。
⚠️ 注意:官方明确 Peergos 尚不提供匿名性(anti-aims 原文:
Peergos does not provide anonymity, yet),onion routing(洋葱路由)尚未集成,仍属活跃开发中项目;对匿名性有硬需求的场景需叠加 Tor 访问或暂缓选用。
六、适用场景与限制
6.1 适用场景
- 隐私优先的个人/家庭云盘:家里 NAS/服务器常开,替代商业网盘,数据端到端加密、服务商不可读;
- 小团队加密协作:好友/同事间密码学分享文件与目录,服务器管理员看不到「谁和谁在分享」;
- 自托管社交与加密通讯:在存储之外顺带获得加密聊天与私密社交流,无需另拼多套组件;
- 不受 CA/DNS 信任链约束的接入:客户端可用本地实例经 P2P TLS 1.3 流直连主服务器,不依赖证书机构与 DNS 解析的信任;
- 多设备文件同步:桌面客户端或 sync 命令做双向目录同步,FUSE/WebDAV 供第三方工具挂载接入。
6.2 限制与边界
- 不提供匿名性(官方 anti-aims 明示),IP 地址与网络层元数据对服务器与对端可见,onion routing 未落地;
- 活跃开发期项目:官方 WARNING 明示部分文档功能尚未实现;已分享文件的非对称加密部分尚未替换为后量子算法(官方声明待候选算法明确后替换);
- 需要常驻在线的 home server:用户数据存于其主服务器,官方建议使用有公网 IP 的常开设备;NAT/防火墙后可工作但体验打折;公网暴露需自备域名 + TLS(官方推荐 nginx + Let's Encrypt,且证书需覆盖
域名与*.域名通配符以支持应用子域); - JVM 资源占用:服务端为 Java 进程,比 Go 系轻量网盘吃内存(实测部署篇给出堆上限 512MB 的配置与验证);
- 生态相对小众:第三方集成与应用生态不如 Nextcloud 丰富,社区规模较小(见下表星数对比)。
七、同类选型对比
面向「自托管存储/网盘」场景,选取四个主流同类项目与 Peergos 对比。星数取自 shields.io GitHub 实时徽章(查询日期均为 2026-10-31);许可证来源为各项目仓库 LICENSE 文件(查询日期 2026-10-31):
| 项目 | 定位 | 端到端加密 | 服务端语言/形态 | 许可证 | GitHub 星数 |
|---|---|---|---|---|---|
| Peergos 1.41.0 | p2p 加密文件系统 + 社交平台 | ✅ 客户端加密,服务器不可读 | Java(jar/容器/多平台安装包) | AGPL-3.0 | 2.5k(Peergos/Peergos) |
| Nextcloud | 功能全家桶私有云(文件+协作+应用生态) | ❌ 默认无(端到端加密为插件且有限制) | PHP | AGPL-3.0 | 37k(nextcloud/server) |
| Seafile | 高性能文件同步与分享 | ⚠️ 存储块静态加密(服务端可解) | Python/C(社区版) | GPL-2.0(社区版) | 15k(haiwen/seafile) |
| Syncthing | 设备间 P2P 持续文件同步(无云中心) | ✅ 传输与存储均加密但无服务端(节点互同步) | Go | MPL-2.0 | 90k(syncthing/syncthing) |
| FileBrowser | 轻量 Web 文件管理器 | ❌ 无 | Go(单二进制) | Apache-2.0 | 36k(filebrowser/filebrowser) |
关键差异与选型建议:
- 要「服务器也不可信」的强机密性 → Peergos 是唯一把端到端加密、元数据隐藏(好友图谱不可见、文件大小不可推断)与 p2p 架构做成一体的选项;代价是 JVM 资源占用、生态小众、尚在活跃开发;
- 要成熟稳定、应用生态与办公协作 → Nextcloud,但其安全模型依赖服务器可信;
- 要大文件高速多端同步、不在乎 Web 界面与分享链接 → Syncthing(无中心服务器形态,与 Peergos 的 home server 模式互补);
- 要极简、秒装、管理现有磁盘目录 → FileBrowser;要同步+分享平衡 → Seafile;
- 混合方案:Peergos 可把块存储后端指到 S3 兼容对象存储(含 B2),因此可「本地主服务器 + 对象存储异地副本」组合部署;官方 peergos.net 生产环境即运行在 Backblaze B2 之上。
八、参考链接
- Peergos 官网:https://peergos.org/
- 官方技术手册(tech book):https://book.peergos.org/
- 源码仓库(服务端):https://github.com/Peergos/Peergos
- Web UI 仓库与 Release Notes:https://github.com/Peergos/web-ui
- 官方发布页:https://peergos.net/public/peergos/releases
- 安全审计报告(2019/2024,Cure53):https://peergos.org/posts/security-audit-2024
- 官方付费托管:https://peergos.net/
- 官方自托管文档(README Usage 一节,含 docker/S3/Postgres 形态):https://github.com/Peergos/Peergos#usage---self-hosting
(本文星数与版本数据的查询日期均为 2026-10-31。)