安全原理解读

加密中的合理否认详解

更新于 · 阅读约需 5 分钟

加密能很好地回答一个问题:没有密钥,别人能读到这些内容吗?合理否认回答的则是一个更难、更关乎人的问题:当有人逼你交出密钥时会怎样?这篇指南解释这个概念、它的来历、Velcrypt 如何运用它,以及它在哪里失效。

合理否认是什么意思

合理否认是这样一种特性:即使你在压力下打开了某样东西,也没有人能证明你还有所保留。你可以说“就这些了”,而系统不会给对方任何反驳你的证据。

它之所以重要,是因为强加密把薄弱环节从数学转移到了人身上。如果一个文件受 AES-256 保护,没有人会去破解加密算法。他们会来问你、坚持要求你,甚至威胁你。可否认的设计,试图让“部分让步”成为一个安全的选项。

简短的历史:隐藏卷

这个思路是通过磁盘加密软件进入大众视野的。TrueCrypt 和 VeraCrypt 这一系列工具引入了 隐藏卷:藏在普通加密容器未使用空间里的第二个加密容器。

这个技巧之所以有效,是因为好的加密输出看起来就像随机噪声,而一个用随机数据填满的加密卷,其空闲空间看起来也一样。一个密码打开外层卷,里面存放着可信的诱饵文件;另一个密码打开隐藏卷。没有第二个密码,隐藏部分与空白空间无法区分。

研究人员还更正式地探讨过“可否认加密”,即同一段密文可以用不同的密钥解密成不同的明文。隐藏卷则是这一思路实用且被广泛使用的版本。

多年来,同样是这些研究人员和从业者,也记录下了它的局限:操作系统会留下痕迹(最近文件列表、缩略图、日志),人的行为前后不一,而且一个知道该软件支持隐藏卷的对手,可能会直接假定隐藏卷存在。

Velcrypt 如何运用这个思路

Velcrypt 把这一原则改造后用在 iPhone 上的照片和文档保险箱里。这里没有外层卷和内层卷,取而代之的是:

  • 每个图案都是一个独立的保险箱。 每个保险箱都有自己随机生成的 256 位主密钥,由从该图案派生的密钥解开。
  • 没有保险箱列表。 App 不保存任何能列举出有多少个保险箱的信息。
  • 未知图案会打开一个空保险箱。 画一个 Velcrypt 从未见过的图案,你会进入一个新的空保险箱。不会出现“图案错误”的提示。

结果是:画错的图案,和一个有效但为空的保险箱,看起来一模一样。如果你为别人打开一个保险箱,界面上没有任何东西能显示其他保险箱存在。这让 诱饵保险箱 成为一种自然的使用方式,而不是一个特殊模式。隐藏保险箱 功能页面展示了它在实际中如何运作。

一项计划中的 Premium 功能 胁迫图案(即将推出)进一步延伸了这一点:一个特殊图案会打开指定的保险箱,并悄悄移除对其他保险箱的访问。

坦诚的局限

合理否认很容易被夸大。以下是 Velcrypt 不 声称能做到的事。

它不隐藏 App 的存在

Velcrypt 和其他 App 一样出现在你的主屏幕上。iOS 18 及更高版本允许你把 App 隐藏到一个用面容 ID 锁定的隐藏文件夹中,但那是 iOS 的功能,而且任何知道你设备密码的人仍然可以查看。别人看到一个保险箱 App,只会知道你重视隐私,而不会知道你存了什么。

它不隐藏加密数据的存在

Velcrypt 并不声称能隐藏设备上存有加密数据这一事实。加密文件要占用空间,而 iPhone 的“设置”会显示每个 App 使用了多少存储空间。对设备进行取证检查,可能会显示这个 App 存有的加密数据比你打开的那个保险箱更多。没有图案,它无法解密这些数据,但“这里还有更多东西”可能会被专家看出来。

它无法撤销别处的副本

如果一张照片仍然存在于你的“照片”图库、“最近删除”、iCloud 或某个聊天记录中,保险箱的合理否认就毫无意义。导入之后,请 删除原图。

它无法阻止被观察

如果有人看着你画出真正的图案,或者拍下了屏幕,合理否认就不复存在了。请在私密的环境下画图案,并遮挡屏幕。

它不是一种法律策略

在一些国家,拒绝披露密钥或误导执法人员可能会受到处罚。合理否认主要用于应对非正式的压力:嫉妒的伴侣、小偷、爱打听的亲戚。凡是涉及当局的情况,请阅读 过境指南,并寻求正规的法律意见。

合理否认与保密:两种不同的承诺

把这两个概念分开会很有帮助,因为在营销中它们经常被混为一谈。

保密(加密)合理否认
它回答的问题没有密钥,别人能读到这些内容吗?别人能证明还有比你展示的更多的东西吗?
它依靠什么数学和密钥管理无法区分的设计和可信的行为
它有多强有 AES-256 和良好的密钥派生时非常强视情况而定;取决于观察者和具体情境
什么会破坏它弱“秘密”、泄露的密钥、别处的副本存储空间大小、取证痕迹、迟疑、被观察

加密在几乎所有情况下都能让你的内容无法被读取。合理否认则是叠加在上面的一层更“软”的社会层面保护:在当下很有价值,但永远不该把一切都押在它上面。

让合理否认可信

技术提供了可能性;你的行为提供了可信度。

  1. 让你会打开的那个保险箱看起来常用。 真实的相簿、最近的项目、一个可信的用途。
  2. 让说法与存储空间相符。 一个只有几份文档的诱饵保险箱,配上好几 GB 的 App 存储空间,会显得很奇怪。
  3. 不要迟疑。 反复练习你会打开的那个图案,直到它成为自然反应。
  4. 避免留下痕迹。 不要在别处用你隐藏的内容来命名相簿,也不要把原图留在其他 App 里。

Velcrypt 的定位

Velcrypt 把可否认的结构和强加密结合在一起:通过 Apple CryptoKit 使用 AES-256-GCM,用 PBKDF2-HMAC-SHA512(至少 600,000 次迭代)从你的图案派生密钥,并用 HKDF 派生每个文件的密钥。一切都留在设备上,没有账户,也没有可能透露你有多少个保险箱的服务器。加密页面 有详细介绍,安全概览 则列出了它在设计上无法阻止的威胁。

常见问题

用简单的话说,合理否认是什么意思?

意思是你可以可信地说“这就是全部”,而且没有人能证明并非如此。在加密中,这是通过特定设计实现的:隐藏的数据与空白空间、或与根本不存在的数据无法区分。

Velcrypt 会隐藏我在用保险箱 App 这件事吗?

不会。除非你使用 iOS 自带的隐藏 App 选项,否则这个 App 会显示在主屏幕上,它占用的存储空间也会出现在 iPhone 的“设置”中。Velcrypt 的合理否认关乎有多少个保险箱以及其中有什么,而不是设备上是否有加密数据。

取证工具能发现隐藏的保险箱吗?

它们也许能显示:这个 App 存储的加密数据,比已打开的保险箱所能解释的更多。没有正确的图案,数据本身仍以 AES-256-GCM 加密,但在专家面前,这些数据的存在可能无法否认。

合理否认合法吗?

在大多数国家,使用加密是合法的,但关于披露密钥和误导执法人员的法律差异很大。本指南不构成法律建议;如果你面临法律问题,请咨询律师。

什么是隐藏卷?

隐藏卷是存放在一个普通加密卷空闲空间里的第二个加密卷。一个密码打开外层卷,另一个密码打开隐藏卷,而隐藏的数据看起来就像随机的空闲空间。

Well Encrypted. Truly Private.

画出图案,打开私密保险箱。你的照片、视频和文档都加密保存在你的 iPhone 上,无需账户,不经过云端。

即将登陆 App Store

即将推出 iPhone 版(iOS 17 或更高版本)。提供免费版,可选 Premium 高级版。