说起WINDOWS系统上的解压缩软件,一般会想到WinRAR,2345好压,360压缩,7-Zip等,相比之下WinRAR最出名,国产的好压以及360压缩次之,7-Zip貌似偏置一偶。显然,这次的主角却是7-Zip!并且我也不想教你如何破解WinRAR以去除广告,也不会教你如何破解好压、360压缩自动安装流氓全家桶。
名称 | 安装后大小 | 支持格式 | 广告 | 捆绑安装 | Hash校验 | 更新 | 其他 |
---|---|---|---|---|---|---|---|
WinRAR | 约7M | rar,zip,7z,tar等约17种 | 有(可破解) | 无 | 无 | 202007 | 老牌 |
7-Zip | 约6M | rar,zip,7z,tar等约40种 | 无 | 无 | 12种 | 202006 | 老牌,源码分享 |
2345好压 | 约57M | rar,zip,7z,tar等约30种 | 有 | 有(可选) | 3种 | 202005 | 虚拟光驱,格式转换 |
360压缩 | 约30M | rar,zip,7z,tar等约73种 | 无 | 无 | 无 | 202003 | 国产 |
这一比较,都清清楚楚了。那么回到标题:7-Zip为何有CRC32/64及SHA-1/256校验却无MD5校验?这个问题真是百思不得(姐)解!说实话,这个问题其实困扰我好几年了 。这几天下载了些压缩包,文件很多,都好几个G的那种,而提供的校验码就是MD5。找了些小工具,但使用起来不理想。无奈之下,终于鼓(是)起(我)勇(太)气(懒)百度之:7-zip为什么没有md5校验? - 知乎、7zip之前可以直接看md5跟哈希,怎麼现在不行了【firefox吧】_百度贴吧。好不容易找到了关键词“9.38”,一顿测试后,未果!不死心,后来又在必应里面搜索(主要是它可以方便的进行英文搜索,且从我这小站的爬虫记录来看,必应蜘蛛是最勤快的):7-Zip / Discussion / Open Discussion: MD5 calculation in 7-Zip: A solution。真是好运,找到的关键词“7-Zip ZS”。怀着激动的心情一顿测试后,终于给解决了。
那么问题来了,我貌似还是没有找到标题的答案!好吧,问题解决了,答案慢慢再想吧。
最后,这里提供可显示MD5等12种校验码的7-Zip版本(安装后大小约为11M)的下载地址:Releases · mcmilk/7-Zip-zstd · GitHub。这里还有部分插件可供选择:7-Zip plugins
答案就是没有必要用那么多的校验工具,md5诞生的目的也不是用来验证的.md5是个加密算法,由于几乎不可逆的优越算法成为最普遍的加密工具.算法复杂,效率低,杀猪要用牛刀?如果只考虑校验那么crc更适用,速度快,撞车几率也不大,sha摘要算法也很快,唯独md5很慢.其实一个压缩软件附带那么多校验工具干嘛呢,你也看到了7zip才6m, 7zip zs 11m,加了校验算法体积增大快一倍.
殊不知作者为了优化源码减小的每一kb都是无数心血,一个压缩工具当然是越小越好.
进行文件校验主要是确保其正确性,防止文件损坏或者恶意替换或者破解。不管MD5,还是SHA,还是CRC,还是AES等,都有各自适用的领域,你说的以偏概全了