安全审计与开源透明度 —— 为什么 10 年开源代码 + 独立审计值得信任
三个信任支柱
Cryptomator 的安全可信建立在三个公开事实之上:
1. 开源(GPLv3)+ 10 年维护
- 主仓库:github.com/cryptomator/cryptomator(Java,桌面端核心)
- Android:github.com/cryptomator/android(Kotlin)
- iOS:github.com/cryptomator/ios(Swift)
- Cryptomator Hub:github.com/cryptomator/hub(TypeScript/Node)
- Vault Format 规范:docs.cryptomator.org 公开
所有加密逻辑、FUSE 实现、文件系统层、密钥派生逻辑全部在 GitHub 公开。任何人可以克隆代码、阅读、审计、提交 issue / PR。
2. 独立安全审计
Skymatic 定期委托专业安全公司对 Cryptomator 做完整安全审计。最近几次:
| 审计方 | 年份 | 审计范围 |
|---|---|---|
| Cure53 | 2021 | Cryptomator 桌面端 + Vault Format |
| NCC Group | 2023 | Cryptomator Hub 安全架构 |
| Cure53 | 2025 | Cryptomator 1.18.0 新功能(Recovery Key 全重建) |
审计报告公开在 docs.cryptomator.org 的 Security 分类里——你可以亲自读。审计中发现的问题会:
- 被公开披露(CVE 编号)
- 被修复(在对应版本里)
- 被记录在 changelog 里
3. 持续自动化安全测试
Cryptomator 在 GitHub Actions 里有每个 PR 都跑的安全测试流水线:
- CodeQL(GitHub 内置静态分析)
- SpotBugs(Java 静态分析 + 安全规则)
- 单元测试覆盖率 > 90%(Cryptomator 官方声称远高于行业平均)
- Fuzzing(模糊测试)覆盖加密层边界情况
这些自动化测试持续运行——不是只在发版前跑一次。任何新提交如果引入了安全问题,会在合并前就被 CI 拦下。
为什么开源比闭源加密值得信任
加密工具的信任链条可以简化为:
加密原语(AES/scrypt/AES Key Wrap)→ 使用这些原语的代码 → 你的密码 → 信任边界
- 加密原语:AES-256、scrypt、AES Key Wrap 都是 NIST 推荐、经过学术界和工业界数十年检验的标准——Cryptomator 没有自造轮子
- 代码实现:这是开源 vs 闭源的核心区别——开源让全世界安全研究员能审计代码里有没有后门、有没有实现错误
- 你的密码:只有你知道,Cryptomator 自己都不存
- 信任边界:开源把信任边界压缩到最小——你不需要信任 Skymatic 不搞后门,因为代码公开谁都能看
闭源加密工具(比如某些商业加密软件)你必须信任厂商"没搞后门"——你只能靠厂商说的话。开源加密工具你可以自己验证(或者相信社区已经验证过了)。
10 年的安全记录
Cryptomator 自 2015 年以来发布了上百个版本。安全记录:
- 没有发现过主密钥被绕过的漏洞
- 发现过一些边角问题(比如某些边缘场景下的文件丢失风险、scrypt 参数的细微调整建议)——都在后续版本里修复
- 没有爆出过任何恶意代码、后门、窃取密码的丑闻
- Skymatic 团队的透明性和响应速度在开源加密工具里属于上层
开源不等于"可以随便改"
GPLv3 许可证意味着:
- 你可以随便用、随便改、随便分发
- 但如果你改了 Cryptomator 源码,然后分发(包括提供云服务),必须同样开源
- GPLv3 的 copyleft 条款防止了有人拿开源代码做闭源的"增强版"赚钱
GitHub 上的其他东西
除了核心代码仓库,cryptomator 组织下还有:
- Release 归档:github.com/cryptomator/cryptomator/releases —— 所有历史版本 + 对应的 changelog
- 文档仓库:docs.cryptomator.org 源码
- 各种插件仓库:KeePassXC 插件、Bitwarden 插件等
想追溯某个版本的具体改动、或者读 changelog 里说的安全修复——GitHub 是唯一可信来源。