高手炮製“解壓炸彈包”…把46MB變4.5PB

研究員大衛·菲爾(David Fifield)去年曾展示過早期的解壓炸彈包,能將一個42kB的zbsm.zip文件迅速膨脹到5.5GB。之後,他又推出一個表面上只有10MB,但其實能夠膨脹到281 TB的zbLG.zip炸彈壓縮包。到2019年7月,菲爾又發表最新研究成果——一個表面上只有46MB,但可以膨脹到4.5PB的zbxl.zip炸彈壓縮包。

不過需要指出的是,由於其採用了Zip64,所以相容性較差。

據報導,ZIP解壓炸彈包使用遞歸算法的原因,歸結於ZIP解析器中使用的Deflate算法無法實現高於1032:1的壓縮率。有趣的是,菲爾找到了一種繞過該限制的方法。

解壓炸彈的輸入與輸出大小,呈現的是二次方增長,即隨著炸彈變大,壓縮比也就更強。構造取決於ZIP和Deflate的特徵,它不能直接移植到其他文件格式或壓縮算法。

此外,該方案與大多數ZIP解析器相容,不過文件流解析器例外。後者在一次傳遞中解析,無需事先查詢ZIP文件的中心目錄。


分享到:


相關文章: