7z 加密有多安全?

信息安全 加密 密码 AES 密码破解 防御
2021-08-21 13:34:02

我有一个文本文件,其中存储了我所有的银行详细信息。我使用以下参数使用 7-Zip对其进行压缩和加密:

压缩参数:

  • 存档格式:7z
  • 压缩等级:超
  • 压缩方式:LZMA2
  • 字典大小:64 MB
  • 实体块大小:4 GB
  • CPU线程数:4

加密参数:

  • 加密方式:AES-256
  • 加密文件名:真

选择用于加密的密码,使其不会在任何字典中找到,而是一个几乎随机的字符串(由 15-20 个大小写字母、数字和符号组成)。我不会将此密码存储在任何地方。
此外,文本文件的文件名被保留,以至于没有人能够知道该文件与银行详细信息有关。

在以下情况下,这是否足够安全?

  1. 攻击者完全控制了系统,但不知道这个特定文件对他有任何重要性。
  2. 攻击者拥有该文件,并正在积极尝试解密它,知道它具有银行详细信息。
4个回答

7-zip(或任何其他类似的实用程序)加密旨在保护存档文件。所以,只要工具设计者的工作做得好,你对第二种情况是安全的(有人拿到加密文件并试图破解它)。

但是,此类实用程序并非旨在保护您免受第一次提到的情况(有人访问您计算机上的帐户数据和/或您定期访问文件内容)。实际上,对您的系统进行了完全(或什至只是最小,无需提升权限)访问的人会看到您使用此文件,并且还能够在您输入密码时捕获您的击键。更糟糕的是:攻击者实际上甚至不必为此烦恼,因为该文件很可能以清晰的形式存在于您的 Windows Temp 目录中。

因此,对于您的第一个威胁,我强烈建议您使用专为此用途设计的工具,例如KeePass,它将避免将解密的数据存储在临时文件中,并在输入密码时提供最低限度的保护

继续激进的情况。

可以假设原始文本文件已被删除,并且在知道临时文件的情况下也可以将其删除。

但是,有一些工具可以找到已删除的文件,并且可以轻松恢复它们,除非您使用“粉碎”程序来填充驱动器上的“空白”空间,并用随机位覆盖原始信息。

虽然您的 zip 隐藏方法对普通计算机用户很有用,但严重的犯罪者可以利用此软件,恢复已删除的信息并访问敏感文件。

即使您的文本文件中有误导性名称,“黑客”也可能会恢复他们可以找到的所有已删除文件,并使用工具快速搜索任何纯文本文件以查找与银行相关的关键字或数字。

使用 7z 或其他此类软件保存带有银行详细信息的加密文本文件的问题是,当您需要数据时,您必须打开文件并解压缩。那时 7z 将在 Windows 临时目录中转储它的未加密副本。您(或 7z 软件)每次打开文件时都需要正确擦除临时目录。

这不是保存银行详细信息的最佳解决方案。使用专门为此设计的软件。我建议改用 Keepass。您不必处理转储到 Windows 临时目录中的任何未加密内容。

有关 2019 年报告的与弱随机数生成有关的几个错误的详细信息,以及在当时的 7zip 版本中生成 IV 的方式中的缺陷,请参阅下面的链接:

https://threadreaderapp.com/thread/1087848040583626753.html

https://sourceforge.net/p/sevenzip/bugs/2176/

似乎这些错误已在更高版本的 7zip 中得到修复。