7-Zip 受密码保护的拆分档案在多次受密码保护时对黑客安全吗?

信息安全 加密 隐私 安全剧院 压缩 云储存
2021-09-06 19:28:12

想象一下,我希望在 Google Drive(或任何其他云服务)上上传我的敏感个人信息(照片、文档扫描、密码列表、电子邮件备份、信用卡信息等)。

我想确保这整组数据尽可能安全(防止黑客以某种方式获取这些数据,以及针对谷歌及其员工,以及在未来,即如果我从谷歌我想确保即使他们永远保留它的备份,他们也无法“打开”它)。

因此,在这种情况下,我不会立即将所有这些数据上传到云端,而是创建一个包含我要上传的所有数据的文件夹,然后我将使用 7-Zip 压缩整个文件夹,当然还有密码保护使用 7-Zip。

我不会这样做一次,而是几次,即,一旦我准备好受 7-Zip 密码保护的存档,我将使用 7-Zip 再次压缩它并使用完全不同的密码。我会这样做五次。因此,最后我的数据被压缩了五次,并使用 7-Zip 使用五个完全不同的不相关密码对其进行了密码保护。因此,为了获取我的数据,我必须提取五次并提供五个不同的密码。

然后我要做的是,我将使用这个受五次密码保护的存档,我将使用 7-Zip 和不同的第六个密码再次压缩它,但除此之外,我还会选择将档案分割成更小的块。

假设最后我得到了 10 个拆分档案,其中每个档案都是 200 MB 档案,但第 10 个档案只有 5 MB。

假设是,所有这六个密码都是至少 32 个字符的密码,它们完全不相关,它们都包含小写/大写、数字和符号。

现在,我将这 9 个 200 MB 的档案放入一个容器中,并使用VeraCrypt对容器进行加密(假设是三级级联加密),然后将此容器上传到我的 Google Drive。

我将第 10 个存档(5 MB 的存档)保存在完全不同的服务上(比如在 Dropbox 上——而且 Dropbox 帐户根本没有连接/链接到我的 Google 帐户)(也由 VeraCrypt 加密)。

- 我创建了一个安全剧院吗?还是我真的让任何人都无法访问和提取我的数据?毕竟他们必须通过 VeraCrypt 的一级加密,即使在此之后,档案也受到六次密码保护,其中一个档案(第十个)存储在其他地方!

- 如果有人可以访问我的 Google Drive 并下载所有这九个档案,他们有没有办法在没有最后一个(第十个)5 MB 档案的情况下提取档案?是否可以在缺少一个拆分档案的情况下以任何方式访问数据?

- 即使有人拿到了所有这 10 个档案并设法以任何方式绕过 VeraCrypt 加密,破解剩下的六个密码是否仍然可行?

4个回答

首先,这种多重加密方案是荒谬的。

7-Zip 使用的算法是AES-256,被认为是安全的。但是,如果有人在其中发现了一个可以破解的缺陷,那么他们很可能能够以同样的努力破解您的所有加密层。

因此,要么您信任 7-Zip 使用的加密算法,那么一个应用程序就足够了。或者您不信任它,那么您将使用不同的算法进行另一次加密传递。正如对Triple-DES的中间相遇攻击所证明的那样,多次分层相同的算法通常不会产生人们想象的那么大的效果。

关于拆分加密文件:如果部分存档丢失,通常可以从 7-Zip 存档中挽救一些数据。7-Zip 在 CBC 模式下使用 AES 来模拟流密码行为(每个 128 位块与前一个 128 位块组合)。这意味着如果有人遗漏了消息的一部分,他们无法解密后面的任何内容(除非他们在某处有已知的明文),但无法解密之前的所有内容。这意味着如果您想通过保留其中的一部分来防止攻击者解密存档,您需要保留第一个块,而不是最后一个块。

这超出了我从未见过的规模。这是一件坏事™,因为它增加了解决方案的复杂性,却没有增加任何安全优势。

加密机制要么安全,要么不安全。通过多次加密,您不会受到更多保护。如果加密是安全的,那么添加额外的加密层是没有用的。如果您的安全模型存在缺陷,例如,您的加密密钥可能泄漏,多层加密将无法修复此缺陷。

拆分档案也是一样的:它没有任何作用。它不会改善也不会减少对文档的保护。

您应该放眼大局:您将密码保存在哪里?谁可以访问它?如果您无法访问或记住您的密码,您的备份解决方案是什么?您的计算机是否免受恶意软件的侵害(这会使任何加密变得无用)?您的解决方案是否如此复杂以至于您永远不会使用它?

首先,呼吸。如果您忘记呼吸,加密工作通常会失败。失去知觉会导致我们很难加密东西!

其次,听起来您需要一个威胁模型。威胁模型描述了您担心面临的对手类型。没有威胁模型,所有的安全都是安全的,因为你基本上是四处乱窜,希望你不受控制的行为能阻止你一无所知的对手。你是想阻止你姐姐看你的日记,还是想躲避暴徒?您最近是否与任何三信机构为敌?

您是否考虑过您的对手是否愿意进行橡胶软管密码分析?

XKCD( XKCD )

这就是威胁模型如此重要的原因。考虑一下。人们普遍认为,使用适当长的密码保护的 AES-256 加密文件不会被政府机构以外的任何人破解,并且通常认为政府机构也无法破解它。因此,单层 AES-256 肯定会保护您免受各种阴暗人物的伤害,他们愿意用橡胶软管殴打您,直到您咳出密码。 没有理由只做一层 AES-256,除非你有一个威胁模型来支持它。

现在您为什么认为拆分文件会对您有所帮助?您已经在使用地球上一些最强大的加密工具。为什么扣留一节真的有帮助?当然,如果您遇到的攻击者知道一些当前未公开的 AES-256 破解但不知道如何对 7zip 拆分文件格式进行逆向工程,那可能会有所帮助。锡纸也可以。

我不会说您拥有的是安全剧院。第一步很好:以加密格式存储数据,并使用良好的强密码。然而,该过程的其余部分是安全剧院。不要浪费时间进行层层加密。

最坏的情况是,您的过度努力使您无法访问数据,因为您使获取自己数据的难度增加了 10 倍。在导致您的数据无法访问的过程中出现错误的可能性很大,并且您没有获得明显的实际安全性。

我对 7-Zip 不太熟悉,无法完全理解它的功能。但是,假设它只是一个受密码保护的 zip 文件,那么不,这不安全。但是,我看到一些评论,其中 7-Zip 可能提供基于 AES 的加密,这将是安全的(假设 7-Zip 的实现不存在错误,因此它创建了一个真实有效的 AES 加密文件)。

总之,凡是能离线下载破解的,都应该假设有足够的时间可以破解。假设您的 7-Zip 文件是使用 AES-256 加密的(同样,没有错误),您将受到密码熵和攻击者机器速度的支配。

与其创建 5 或 6 级拆分存档,使用单个高熵密码存档就足够了。拆分档案没有任何作用,因为您只需能够“解锁”第一个档案就可以解密档案链。

最终,您的问题的答案是,只要您使用具有尽可能多熵的真正随机且安全的密码,就足以使用 7-Zip 和 AES-128 或 256。64 个字符的大写、小写、数字和符号,没有明显的图案或重复是完全可以接受的。只是不要在便签上写下密码并将其留在显示器上。使用真正的密码管理器来跟踪该 64 个字符的密码,并确保您在该密码管理器上使用了一个很好的安全主密码。只有最不安全的方法才是安全的——将密码作为纯文本文件粘贴在桌面上并不安全。

还要记住,攻击者可能更容易访问您的 PC 以捕获相同的数据 - 请记住您要保护自己免受谁的侵害。在这种情况下,上述内容对于 Google Drive/Dropbox 之类的东西是完全可以接受的,并且担心它们会暴露(或爱管闲事的员工)。