Saber 酱的抱枕

Fly me to the moon

06/28
2024
软件

如何使加密的压缩文件不易被破解

如果你有一些保存了敏感信息的压缩包,例如个人证件、网站密码、黄色文件等,为了避免它们意外流出并被人破解,以下是我的一些建议:

  1. 不要使用过于简单和常用的字符作为密码,如 123456iloveyou。密码应该有较长的长度和复杂度。假如使用大小写字母、阿拉伯数字再加上一些特殊符号,那么密码每增加一位,其可能性就增加了数十倍。
  2. 可以考虑部分或全部使用中文字符,因为汉字的数量比数字+英文多出几个数量级,更不容易被破解。比如《望庐山瀑布水》桃花潭水深千尺,奔流到海不复回。,请问阁下该如何破解呢?当然,为了让密码更有记忆点,也可以加入一些与内容相关的词句,或者自己喜欢的一些事物的名称组合,不过不要太容易被猜到的(防止被熟人猜到)。我再想个密码:飞蓬将军景天大战神树果实,大概世界上没有第二个人的脑海里会出现这样的字词组合。这么做唯一的缺点是很多压缩软件的密码框不支持输入法,需要先在别的地方打好字,复制粘贴进去。当然系统也需要安装中文输入法。

  1. 设置一个强密码已经足够了,因为所有破解方法都需要尝试密码。但如果你想给可能存在(但实际上没有)的破解者一点苦头,可以继续折腾。比如使用破解成本更高的压缩格式:7Z 和 RAR 格式就比 ZIP 格式需要花费更多的时间来尝试解密。另外,如果压缩时加密了文件名(也就是必须有正确的密码才会显示文件列表),会使得破解成本更高,甚至有的软件不支持破解此类压缩文件。
  2. 对压缩文件进行伪装。例如很早以前就有图种的方式,即把图片和其他文件合并到一起,表面上看是个图片,也能打开查看,实际上里面含有其他文件。现在也有一些软件可以把文件伪装成视频等格式(见文末)。但是此种伪装方式也有缺点,如果你的压缩包很大,有几个 GB,但显然一张图片是很少达到 GB 级别的,这容易引起人怀疑。不过假如你已经设置了强密码,那就无所谓了。
  3. 分卷压缩+修改文件后缀名。这也是一种伪装方式,但并未掩盖它是压缩文件的事实。缺点是手动修改后缀名略微有点麻烦,文件越多越费时间。虽然对于单个未分卷的压缩文件,修改后缀名一般没什么用(例如把 .7z 后缀改为 .zip),解压软件会自动识别到正确的文件类型,从而进行解压。但是对于分卷的情况则有所不同,有些软件无法解压刻意修改了后缀名的分卷文件。例如我把一个文件压缩为 3 个分卷,后缀名是 7z.0017z.0027z.003。然后我将其后缀名修改为 zip 分卷的格式,也就是 .zip.z01.z02。顺便一提,RAR 的分卷文件名格式是 .part1.rar.part2.rar.part3.rar。Bandizip 无法解压这种修改了后缀名的分卷格式,会提示“该文件已损坏”。7-Zip 也无法提取它,显示“非压缩包”。实际上某些破解软件就是用 7-Zip 作为解压引擎的。既然压缩软件无法识别,再假如用户是个小白,想不到这个思路,那么此方法也算是独辟蹊径了。
  4. 双重压缩,更狠一点的话内外层设置不同的密码、使用不同压缩格式的分卷,那就更有趣了。

已知的无用方法:

  1. 使用 RAR 格式或 RAR 分卷、添加恢复记录等方法,试图使其他软件无法解压。这是没用的,因为 RAR 的解压方法是公开的,而且我试了 Bandizip 和 7-Zip 都可以解压用最新版本 RAR 制作的各种压缩文件。

另外我不清楚使用固实压缩以及较高的压缩级别能否提高破解成本。虽然这会使得解压时间增加,但在验证密码是否正确时,应该不需要完整解压,所以仅对于增加“验证时间”而言,不知是否会有帮助。

参考:

  1. Bandizip 如何使用密码恢复

使用 apate 来伪装文件

apate 是一个开源软件:https://github.com/rippod/apate

界面如下:
apate 伪装文件

它默认会使用一个内置视频作为面具来伪装文件,文件伪装后看起来就是一个视频,也可以播放。点击“选项”菜单的“面具伪装”就可以选择自定义文件作为伪装,不局限于视频,例如你也可以选择图片或者压缩包(emmm 套娃了)。文件被伪装后看起来是面具文件,而且可以正常打开使用。

我试了用压缩文件来伪装压缩文件是可行的,可以解压出作为面具的压缩文件的内容。不过因为解压后的文件只是面具文件,所以体积会小一些,可能被人发现。不过这个问题是很难避免的,尤其是你要伪装的文件体积很大时。

同时它会修改源文件的二进制文件头,例如 jpg 文件本来有 JFIF 文件头,伪装后的文件里是没有 JFIF 字符的。

还原时也必须使用这个软件(还原时不需要面具文件,所以你不需要始终保存面具文件)。当然,任何人都可以使用这个软件来还原它所伪装的文件,所以你还是必须先给文件加密打包,然后再使用它来伪装。

如果对方不知道你是用这个软件做的伪装,甚至不知道文件是被伪装过的,那可以说是非常安全了。

如何使加密的压缩文件不易被破解