创建一个无法被破解的 zip 压缩包

2022-10-10 09:59:41 +08:00
 tool2d
试想一下,你把有敏感信息的文本或代码保存到 U 盘作为文档备份,但又怕 U 盘有一天不小心掉了,怎么办?

最简单的办法,就是用 zip 给文本加个密码后压缩保存。

但是密码始终存在被暴力破解的风险,现在 GPU 运行速度飞快,又再次加大了这种风险因素。

解决办法是,只要把 zip 的内部 hash 校验算法改成 MD5 ,就能高枕无忧。主流破解软件的暴力破解,都是针对特定 hash 的。那些非标准格式的 hash ,破解软件都是不支持的。
8390 次点击
所在节点    编程
100 条回复
bk201
2022-10-10 12:36:51 +08:00
做个算法,可以设置伪密码,破解到了伪密码后给予特定无用文件让对方误以为已破解。
binux
2022-10-10 12:42:07 +08:00
@tool2d 你又没法恢复,保留有什么用?你非得校验,校验压缩后的文件不是一样的。
你压根没想清楚自己在干嘛。
tulongtou
2022-10-10 12:43:10 +08:00
@superrichman zfs 吧,又能难住 50%的人
CatCode
2022-10-10 12:46:44 +08:00
@tool2d hash 留着有啥用? hash 只是校验码,不是纠错码。你只能知道文件坏了,但你修复不了啊。
tulongtou
2022-10-10 12:48:08 +08:00
你这已经不是 zip 压缩了啊,为啥还叫 zip 压缩包
duke807
2022-10-10 13:04:09 +08:00
@superrichman
我 u 盘两个分区,fat 以及 ext4 ,兼顾通用和安全
另外,重要的数据我用自己写的小脚本加密,on-the-fly 解密:
https://github.com/dukelec/cde/blob/master/tools/aes-mount.sh
tool2d
2022-10-10 13:06:01 +08:00
@binux 有没有留 hash 肯定不一样,hash 能知道文件有没有被黑客动过手脚。

只要黑客知道 hash 算法,修改源文件后,就可以被黑客覆盖回去的。

但这里 MD5 是我们自己的算法,也可以用 MD4 之类非常规算法,那么黑客不知道算法,自然就没办法回算 hash 了,能保证源文件 100%没有被动过。
tool2d
2022-10-10 13:08:00 +08:00
@tulongtou 是 zip 压缩,文件格式没有变,加密算法也没有变,仅仅改变了解密后文件的校验部分,防止密码被爆破。
wdssmq
2022-10-10 13:09:05 +08:00
现在去打印店打印东西都是微信传过去,只能说不方便传的话那最好是自己买打印机(之前为了自己开发票买过一台,已经送人了),U 盘最大的作用是当 pe ,也就放一些系统镜像和必装的软件……
ZE3kr
2022-10-10 13:13:26 +08:00
不存 hash ,加密用 aes 256 gcm ,就可以保证完整行了,如果覆盖了一部分解密的时候会发现有问题
tool2d
2022-10-10 13:13:31 +08:00
@wdssmq 现在的 U 盘不一样,随着固态硬盘价格全线崩溃,SSD 价格超便宜。随便买个 SSD 固态加个 USB 3.0 盒子,都能当副硬盘使用。

我电脑接 U 盘已经常态化,512G ,2T 之类的,很好用。

但是 U 盘太小,为了防止遗失,安全性就必须要考虑一下了。
binux
2022-10-10 13:34:08 +08:00
@tool2d 凭什么黑客知道 hash 算法,不知道你校验的 hash 算法?
dbow
2022-10-10 13:39:10 +08:00
bitlocker 解君愁
toaruScar
2022-10-10 13:42:54 +08:00
可 ZIP 用的 CRC32 是 32bit 的,你换成 MD5 的话变成了 128bit 的了,这样比较容易就能看出来校验算法被人换过了。
tool2d
2022-10-10 13:43:24 +08:00
@binux 我指假设黑客知道算法了,那就可以用计算的新 hash ,去覆盖老 hash 。

代码不泄漏的话,黑客肯定不知道魔改算法。

zip 文件格式很老,就 4 个字节空间保存 hash ,99.9%的黑客,拿到陌生的 zip 加密文档,绝对会认为是官方默认 zip hash 算法。
tool2d
2022-10-10 13:44:26 +08:00
@toaruScar 肯定是 MD5 截断后的,我试验过,防止碰撞效果一样。
binux
2022-10-10 14:01:13 +08:00
@tool2d 你把 hash 随便在文件里隐写不就完了。凭什么你可以假设黑客知道“算法”,但是不知道“算法”?既然你可以随心所欲地假设自己的方案不会被破解,别人的就能被知道,你干脆假设黑客没看出来文件就是明文的算了。
Jooooooooo
2022-10-10 14:27:25 +08:00
(不要自己发明加密算法)
clorischan
2022-10-10 14:40:47 +08:00
这种与密码本有什么区别.
可靠性都是建立在非公开算法的保密程度上.
还是相信密码学吧.
zhzy0077
2022-10-10 14:42:45 +08:00
这不是典型的民科思维吗 如果你担心 AES-256 的安全性 首先你要证明你存的东西比图灵奖对这个黑客来说更有诱惑性.

当然前提是你的密码不能是 123456

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/885696

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX