-
-
winrar文件加密的安全性
-
发表于:
2019-1-13 22:14
15049
-
winrar是一款优秀的文件压缩软件,同时它又可以对文件加密,但是这种加密却是不安全的,而这种不安全是出于软件设计问题,简单举例如规定只用3个字符的密码并且字符都是数字,那你用穷举攻击很快就可以攻破,它是这样处理的,如果你的密码错误,它将告诉你错误,只有密码正确时才能完成解密和解压缩,也就是说,软件帮你审查用户密码的真伪,你的工作就是组织符合条件的数据在软件上试验,碰到合适的数据就得解了。较深层次的原因是软件提取了明文或用户密码的信息,加以处理后置于密文中,解密时做解密运算并取出信息加以比对,只有信息一致时才能得到明文,所以无形中帮了破解者的忙,保存原始信息是危险的,信息概况的越细致就越危险,所以即使你用真随机数这样的乱码组成一个文件,在winrar那里依然能够被破解。
如何解决这个问题呢?其实只要不做判断即可,判断由用户自己去解决,如果是文本将可以看懂了、mp3则可以听了、可执行文件可以运行了,如果是乱码文件则不好说是否解密了,只有看原文件或两者的CRC值是否一致,这样将极大的提高安全性,你也不必愚蠢的为破解提供服务,因为数据量大时这样的工作量很大。这样虽然很有效但似乎人机交互性上有些冷漠,且看下面。
为了提供较好的人性化服务,可以局部的检测原文件的数据,举个简单例子,例如原文件或用户密码第一个字符和最后一个字符的和模3等于2,将2存于密文中,这样程序做完解密运算后,衡量是否原文件或用户密码第一个字符和最后一个字符的和模3等于2,如果不是则告诉你密码错误,如果碰对了也不能解密成功因为大量的其它数据并不一定一致,除非所有数据都一致了,而程序并不做这样的工作。也就是说密码错误能被筛选出来,即使符合了判断标准,也不代表你完成了解密,你需要做进一步的判断,如果不知道文件的性质那就麻烦了,你需要判断各种可能性,做的细致工作量很大耗时很长,做的粗些就可能漏网,一旦漏网所有工作都白做了。这样才能很好的遏制穷举攻击。
虽然如果将穷举做的无遗漏都能碰到正解,但是碰上就成功和需要自己判断差别太大了,后者成功的可能性很小。
本来乱码加密是不能破解的,winrar却让其能破解,真的大开方便之门出卖自己,为破解者服务到家了,完全背离了文件安全。
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!