請更新您的瀏覽器

您使用的瀏覽器版本較舊,已不再受支援。建議您更新瀏覽器版本,以獲得最佳使用體驗。

科技

這小小 46MB 炸彈壓縮檔 ,解壓後可變成 4.5PB 立即炸裂你的硬碟空間

電腦王阿達

發布於 2019年07月19日11:42 • Rocky

一般來說檔案壓縮之後,如果能少一半就已經很厲害的,但國外有一位開發者不斷在研發如何把壓縮檔壓到最大,從最初的 42KB 解壓縮檔可變成 5.5GB 超大檔案,現在更打造出一個 46MB ZIP,解壓縮後可立即炸裂你硬碟空間的 4.5PB 炸彈壓縮檔 。

炸彈壓縮檔 ,Codes coding hacker 97077
炸彈壓縮檔 ,Codes coding hacker 97077

這小小 46MB 炸彈壓縮檔 ,解壓後可變成 4.5PB 立即炸裂你的硬碟空間

國外這位 David Fifield 開發者長期都在研究如何製作一個最佳的 ZIP 炸彈壓縮檔,過去已經成功研究出 42kB → 5.5GB 以及 10MB → 281TB 這兩個夠跨張的檔案,而最近他再次公布 46MB → 4.5PB 恐怖炸彈壓縮檔,這不論是誰的電腦都無法應付這容量。

下圖為 ZIP 檔案的結構:

螢幕快照 2019 07 19 下午12 03 11
螢幕快照 2019 07 19 下午12 03 11

你一定會有疑問,一般壓縮軟體不可能實現這麼高的壓縮比,根據 David Fifield 的說明,這是因為 ZIP 解析器所支援 DEFLATE 算法,是無法達到超過 1032 的壓縮比,而他找到其他方法繞過這個限制,簡單來說就是在 ZIP 檔裡不斷堆疊檔案,以便在多個文件中引用高度壓縮數據的內核,而無需製作多個副本:

螢幕快照 2019 07 19 下午12 02 44
螢幕快照 2019 07 19 下午12 02 44

有了炸彈壓縮檔的基本架構後,David Fifield 不斷的進行優化,一方面找出多少的 ZIP 檔案大小,可以擁有最大壓縮比,另一方面也必須考量 ZIP 格式的限制。

早些時候由於 ZIP 格式的限制,讓他在擴大檔案方面遇到障礙,無論如何巧妙壓縮,依舊無法超過 281TB 輸出。而當他使用 ZIP64 格式後,這問題就突破了,這格式可讓中央目錄標頭從原本的 46bytes 增加到 58bytes,本地目錄標頭也從 30bytes 提升到 50 bytes,最終就打造出這個 46MB 的炸彈壓縮檔。

不過 ZIP64 的相容性比較差:

螢幕快照 2019 07 19 下午12 28 07
螢幕快照 2019 07 19 下午12 28 07

David Fifield 在這篇文章中有詳細說明每個研究細節,有興趣了解更多的可點我查看,而他也有提供檔案下載,有需要的人使用前記得先想想。

0 0
reaction icon 0
reaction icon 0
reaction icon 0
reaction icon 0
reaction icon 0
reaction icon 0