安全架构

透明、可审计、零信任

以下是 ProphetKey 的完整安全架构。所有加密逻辑在 Rust 加密核心中实现, 代码开源,算法透明,接受社区审计。

4
加密层
3
独立子密钥
0
unsafe 代码行
128 MiB
Argon2id 内存成本

加密核心

对称加密
XChaCha20-Poly1305(RFC 8439)— 192-bit nonce,无需随机数碰撞防护
密钥派生
Argon2id(RFC 9106)— 128 MiB 内存成本,抗 GPU/ASIC 暴力破解
域分离
HKDF-SHA256 — 从主密钥派生加密密钥、HMAC 密钥等独立子密钥
完整性校验
HMAC-SHA256 — 独立于 AEAD 标签的双重 HMAC,防篡改
每条密钥独立 salt
每条存储的密钥使用独立随机 salt,相同密钥不同密文

应用层防护

CSP 内容安全策略
严格限制资源加载来源,防止 XSS 数据外泄
IPC 限频
密码尝试 5 次/60 秒、TOTP 5 次/30 秒、泄漏扫描 5 次/5 分钟
文件路径白名单
文件读写限制到应用数据目录,拒绝路径遍历攻击
代理控制端点认证
随机 token 保护管理接口,本地其他进程无法枚举密钥映射
响应头过滤器
上游 API 服务器响应只放行白名单安全头

内存安全

零化内存
Rust zeroize crate — 密钥和主密码离开作用域自动清零
禁止 unsafe
#[forbid(unsafe_code)] — 整个加密核心零不安全代码
锁定自动清零
锁定保险箱时立即清除内存中的主密钥和所有明文密钥

TOTP 二次验证

标准协议
RFC 6238 TOTP + RFC 4226 HOTP — 6 位动态码,30 秒窗口
加密存储
TOTP 密钥使用 XChaCha20-Poly1305 加密存储,与主密钥分离派生
限频保护
5 次失败/30 秒,防止暴力穷举

已知限制与未来改进

  • 暂无第三方安全审计(计划用户量达 1 万后启动)
  • 暂无漏洞赏金计划(计划 v2.0 后开放)
  • 不支持 FIPS 140-2 / GM/T 0028 认证(视市场需求后续规划)
  • 当前仅 Windows 桌面端,macOS/Linux 支持开发中