42.zip

最近看linux的解压缩,无意间了解到了一个和压缩率相关的小故事——42.zip

一般我们使用压缩工具的时候,都会用到无损压缩技术,对于无损压缩,算法非常重要,不同的算法实现

的压缩率和速度有很大差别,主流的算法压缩率都在30%-40%之间,而这里要说的42.zip,它的压缩率可

以说是相当恐怖了,这里顺便贴上这个文件的下载地址:42.zip

它的原始大小就和它的文件名一样:42kb,但是解压(解压密码是42)之后,大小足足有4.5PB,什么概念

呢,4.3G x 16的五次方:

首先,这个文件解压之后,会得到16个压缩文件,然后每个文件解压又会出现16个压缩文件,继续每个文件

解压又会得到16个压缩文件,循环5次,最终得到1048576个文件,每个最终文件大小为4.3GB。

惊喜不惊喜?刺激不刺激?其实还有比这更刺激的。

一个叫做droste.zip的大小为28kb的文件,一旦被打开之后,就会无限解压缩生成一份同样的文件,直到永远,

直到永远啊~~~~

这个文件的灵感应该取自德罗斯特效应,一张图片的部分与整张图片相同,无限循环:

一个文件的压缩率有极限么,是可以有的,可以有信息学之父克劳德·香农提出的信息熵函数算出来:

不过上述两个文件不适合套用该函数。

这种文件有什么存在的意义呢,意义在于这类文件的别名——ZIP炸弹。

这玩意儿除了会BOOM之外,其实是用来攻击别人的,一些病毒制作者,利用杀软扫描压缩文件内部的特性,

会将ZIP炸弹和病毒一起发到目标电脑上,趁着杀软扫描4.5PB的数据,病毒就可以乘虚而入了。不过现在很

多杀软已经有办法避开这类zip炸弹的佯攻了。

 

转载于:https://www.cnblogs.com/eco-just/p/9557970.html

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值