是否可能/实际创建一个压缩算法,将文件分成块,然后将这些块与一个巨大的(100GB?,200GB?)伪随机文件进行比较?
生成的"压缩"文件将包含偏移量和长度的有序列表.使用该算法的每个人都需要相同的巨大文件才能压缩/解压缩文件.
这会有用吗?我认为其他人之前已经考虑过这个并尝试过,但这对谷歌来说是一个艰难的过程.
这是一个常见的技巧,被许多压缩"claimers"使用,它经常宣布"革命性"压缩比,达到荒谬的水平.
显然,这个技巧取决于参考字典中的内容.
如果这样的字典只是"随机",如所建议的那样,那就没用了.简单的数学运算将表明,平均而言,偏移量与其引用的数据一样多.
但是如果字典碰巧包含大部分或整个输入文件,那么它将被"神奇地"压缩为引用或一系列引用.
这种技巧被称为"隐藏熵".Matt Mahoney写了一个简单的程序(barf)来演示这种技术,直到将任何东西减少到1个字节.
这种技巧的解决方案是比较练习应始终包括压缩数据,解压缩程序以及它使用的任何外部字典.当所有这些元素都计算在等式中时,就不再可能在任何地方"隐藏"熵.欺骗得到揭示......