安全说明

本文档有两个用途:(1) 告诉安全研究人员如何私下报告漏洞;(2) 向用户说明 Novara 如何保护你的数据、以及不保护什么


1. 受支持的版本

以下版本提供安全修复。我们强烈建议始终运行最新版本。

版本状态说明
5.0✅ 支持当前版本
4.0✅ 支持在可行范围内提供关键修复
3.0✅ 支持在可行范围内提供关键修复
2.0⚠️ 旧版使用较旧的 AES-CBC 加密;建议升级
< 2.0❌ 不支持

2. 报告漏洞

我们认真对待安全报告,且绝不惩罚善意的安全研究。

请先私下报告——不要在公开 Issue 中贴出漏洞细节。

请尽量包含:

  1. 受影响的版本;
  2. 对问题及其潜在影响的清晰描述;
  3. 复现步骤(或概念验证),如有;
  4. 建议的修复方案(可选)。

你可以期待:

3. 安全模型与威胁模型

我们保护什么。 Novara 是一款 本地优先 应用,其安全目标是保护静止数据(磁盘上的单文件数据库),使其免于:

我们不保护什么(诚实的边界)。 本地应用无法抵御一切。Novara 抵御:

结论: Novara 的加密保护的是磁盘上的静止数据。它不能替代一台健康、无恶意软件、物理环境安全的电脑。

4. 加密体系

开启隐私锁后,Novara 对整个数据库加密:

项目详情
加密算法AES-256-GCM(认证加密),256 位密钥
密钥派生PBKDF2-SHA256,100,000 次迭代,每用户随机 32 字节盐
密码6–64 位字符;本地仅存加盐 SHA-256 哈希
认证12 字节随机 nonce + 16 字节 GCM tag——任何篡改都会被检出
数据流JSON → GZip 压缩 → AES 加密 → 落盘文件
迁移旧版 v1(AES-CBC,Novara 2.0)在一次确认后自动迁移到 v2(GCM)

重要:加密默认关闭。未开启隐私锁时,数据库是明文 JSON 文件(仅受 Windows 账户权限保护)。这是刻意的设计选择,避免普通用户被自己的数据锁在门外。

5. 数据完整性与可靠性

6. 防暴力破解与锁定

7. 版本兼容与降级警告

场景行为
在 3.0/4.0/5.0 中打开 2.0 数据✅ 可读,并在一次确认后从 AES-CBC(v1)迁移到 AES-GCM(v2)
在 2.0 中打开 3.0/4.0/5.0 数据无法读取——2.0 不识别 GCM 格式
3.0 ↔ 4.0 ↔ 5.0✅ 同为 v2 GCM 格式,兼容

⚠️ 降级或回滚到 2.0 之前,请先导出一份明文备份。数据库一旦迁移到 GCM,旧版本将无法打开。

8. 应用加固

9. 开发者承诺

  1. 绝不运营收集用户数据的云服务器。
  2. 绝不加入后门、密码找回绕过机制,或任何远程解锁/窃取数据的途径。
  3. 绝不加入遥测、分析或广告。
  4. 绝不在未经用户显式操作的情况下自动更新或自动上传数据。
  5. 透明披露安全问题:先修复、后发布,并致谢报告者。

10. MCP 接口安全模型

可选 MCP 接口让 AI 助手读写卡片。其安全模型采用纵深防御:

核心原则——Novara 自身绝不传输你的数据——保持不变。接入云端 AI 客户端时的数据边界,见隐私政策。

11. 未来变更

安全加固会跨版本持续推进。未来可能为 MCP 接口加入更细粒度的工具权限控制等,每版更新日志都会列出安全相关变更。

12. 联系方式