功能
SeraShield 保险库中的设备端加密意味着什么
了解 iPhone 保险库需要保护哪些文件、设备身份验证如何控制密钥,以及发布之前应进行哪些测试。

先考虑别人实际上能看到什么
以租赁合同扫描件为例。如果文件已加密,但缩略图或文件名出现在可读取的缓存中,敏感部分仍可能暴露。有效的设计必须考虑导入文件、列出文件的索引、生成的缩略图,以及浏览或分享时使用的临时副本。
iOS 已通过 Data Protection 系统保护文件,并对不同文件类别采用不同访问规则。应用保险库可以在将选定资料写入永久存储前加密,从而增加自己的保护层。设计上的问题是,正常使用时文件在哪里可读取,以及之后哪些内容仍可读取。
决定何时可以使用密钥
候选设计会使用成熟的认证加密 API,例如 Apple CryptoKit 中的 AES-GCM,在隐藏加密内容的同时验证其完整性。仍然需要经过验证的密钥管理方案,包括密钥生成和保护、如何防止 nonce 重用,以及存储格式发生变化时的处理方式。
Apple 钥匙串控制可以根据设备状态和用户在场情况限制访问。这样可以探索一种保险库:即使把已解锁手机交给别人,也需要重新认证。备用解锁方式至关重要。如果接受设备密码作为备用方式,知道密码的人就可能解锁。将密钥更加紧密地绑定单台设备可能使迁移和恢复更加困难。
正式发布之前希望取得的证据
我们会分别定义针对随意浏览、持有已锁定手机、访问复制出的备份所要提供的保护。每一种情况都需要单独测试。手机处于他人控制之下,或者文件已导出保险库,都会增加额外风险。
- 在导入、锁定、强制退出和重启后,检查存储文件、缩略图、日志及应用预览。
- 篡改一份加密样本,确认应用拒绝它,而且不会显示部分内容。
- 测试备用身份验证、被中断的导入、密钥更改和在替换设备上的恢复。
- 记录导出或分享时哪些文件离开了保险库。
你可能想了解的事
Face ID 会加密文件吗?
Face ID 可以作为允许访问密钥的身份验证策略的一部分。文件加密是独立操作。策略和实现决定它们如何配合。
我现在可以使用这个保险库吗?
iPhone 保险库仍处于概念阶段。当前 SeraShield 网站提供指南和浏览器工具。