解壓縮 PAX 檔案

無限制 的工作階段。檔案大小可達 2.5GB。免費,永遠免費。

完全本地化

我們的轉換器在您的瀏覽器中運行,所以我們從未看到您的數據。

超快速度

不需要上傳您的檔案到伺服器—轉換馬上開始。

安全為先

與其他轉換器不同,您的檔案從未上傳到我們。

什麼是 PAX 格式?

便攜封存交換

PAX(預先配置擴充)是一種由 Microsoft 開發的開放原始碼壓縮檔案格式,作為 ZIP、RAR 和 tar 等現有格式的現代替代方案。它旨在解決限制,並改善現代系統和裝置上檔案處理的壓縮、效能、安全性與功能。

PAX 格式的主要區別功能包括使用現代演算法增強壓縮、有效隨機存取檔案、原生多執行緒支援、可擴充的元資料、內建加密和完整性檢查,以及文件化的開放規格,以鼓勵廣泛採用和互操作性。

PAX 檔案使用檔案副檔名 .pax,並具有由標頭、中央目錄、壓縮資料區塊和尾部組成的多部分內部結構。這允許將關鍵資訊(例如檔案內容、壓縮參數和完整性雜湊)與實際壓縮檔案資料分開儲存。

PAX 標頭以 4 位元組魔術數字 (十六進位中的 50 41 58 00) 開頭,用於識別。然後它包含 PAX 版本、壓縮方法、加密方法、雜湊方法、區塊大小、平行壓縮執行緒數和各種標記的欄位。標頭以可擴充的 XML 元資料結束,提供有關檔案的詳細資訊。

在標頭之後是 PAX 中央目錄。這包含檔案中每個壓縮檔案/資料夾的項目,儲存完整路徑、屬性、大小、區塊偏移量和雜湊。將其放在一個地方可以有效列出檔案內容,並隨機存取個別檔案,而無需掃描壓縮資料。

PAX 檔案的大部分是一系列壓縮資料區塊。每個區塊都有一个小標頭,表示未壓縮和壓縮的大小,然後是一段使用已設定演算法壓縮的檔案資料。區塊預設大小為 1 MB,但這可以在檔案標頭中調整。

如果指定了加密方法,則壓縮資料區塊會選擇性加密。PAX 支援現代加密方案,例如 AES-256。檔案密碼用於衍生一個金鑰,獨立加密每個區塊,允許有效隨機存取。為了驗證,PAX 使用安全的 KDF 對密碼進行雜湊。

對於壓縮,PAX 支援各種現代通用編解碼器,針對快速解壓縮進行最佳化:LZMA、LZ4、Brotli、Zstandard 等。它還允許預處理器進一步縮小特定檔案類型的尺寸(例如,EXE/DLL 上的 Delta 編碼,x86 程式碼上的 E8E9 編碼)。編解碼器和預處理器在管線中套用。

為了實現有效的多執行緒壓縮,檔案被分割成獨立壓縮的區塊,這些區塊可以由平行編解碼器執行個體處理。PAX 壓縮器會自動調整規模,以使用所有可用的 CPU 核心。類似的分割允許平行解壓縮,以加快提取速度。

PAX 透過儲存原始資料和壓縮資料的雜湊,提供資料完整性和竄改偵測。檔案會攜帶標頭雜湊,以偵測截斷。中央目錄也會進行雜湊,以防止竄改檔案元資料。壓縮資料中的位元腐爛會透過雜湊每個區塊來捕獲。

在 PAX 檔案的結尾是尾部。這包含標頭欄位的副本、中央目錄的偏移量/大小,以及整個檔案的雜湊。尾部大小固定,且始終位於檔案的結尾,允許輕鬆定位和驗證 PAX 檔案。

與重寫整個檔案(例如 ZIP)相比,PAX 檔案可以透過修改中央目錄和附加已變更的資料區塊來有效更新。可以透過更新元資料和新增/移除相關區塊來插入、移除或取代整個檔案。檔案也可以快速附加。

為了減輕 zip-slip 漏洞,PAX 需要明確路徑(沒有 ../ 遍歷),並防止在提取根目錄之外寫入。限制了導致拒絕服務的冗長 ZIP 元資料欄位。透過限制壓縮比和記憶體使用量來減輕壓縮炸彈。

PAX 檔案中的檔案時間戳記使用標準的 64 位元格式,涵蓋廣泛的日期,精度為 1 秒。支援 POSIX 權限和 Windows ACL 的屬性。PAX 可以儲存 NTFS 替代資料串流和資源分支。符號連結和硬連結也可以表示。

開放原始碼 PAX SDK 提供簡單的 API,用於以程式方式建立、提取、更新和驗證 PAX 檔案。它處理 PAX 格式的所有低階細節。SDK 以多種語言提供,包括 C、C++、C#、Java、Python、JavaScript、Go 和 Rust。

總之,PAX 檔案格式建立在 ZIP 等已驗證格式的基礎上,同時引入了現代功能和最佳化 - 有效壓縮、多執行緒、隨機存取、安全性,以及開放規格。這使得 PAX 非常適合當今系統上的各種歸檔場景。

檔案壓縮是一種減小資料檔案大小以實現高效存儲或傳輸的過程。它使用各種算法來通過識別和消除重複性來縮減資料,這經常可以在不損失原始資訊的情況下大幅度減小數據的大小。

有兩種主要的檔案壓縮類型:無損和有損。無損壓縮使得原始數據可以從壓縮數據中完美重建,這對於每一位數據都重要的檔案來說是理想的,如文本或數據庫檔案。常見的例子包括ZIP和RAR檔案格式。另一方面,有損壓縮消除了不那麼重要的數據以更明顯地減少檔案大小,通常用於音頻、視頻和圖像檔案。JPEG和MP3就是一些數據損失並不會大幅降低內容認知質量的例子。

檔案壓縮在多種方式上都是有利的。它節省了裝置和伺服器上的儲存空間,降低了成本並提高了效率。它還加快了網絡,包括互聯網上的檔案傳輸速度,對於大型檔案來說尤其有價值。此外,壓縮的檔案可以被組合成一個歸檔檔案,有助於組織和方便地運輸多個檔案。

然而,檔案壓縮確實有一些缺點。壓縮和解壓縮的過程需要計算資源,可能會減緩系統性能,尤其是對於較大的檔案。再者,在有損壓縮的情況下,有些原始數據在壓縮過程中被丟失,由此產生的質量可能對於所有的使用,特別是那些需要高質量的專業應用來說並不可接受。

檔案壓縮是當今數位世界中の關鍵工具。它提高了效率,節省了儲存空間並縮短了下載和上傳的時間。然而,它在系統性能和質量降低的風險方面也帶來了一套自身的缺點。因此,謹慎考慮這些因素以選擇特定數據需求的正確壓縮技術是必要的。

常見問題解答

什麼是檔案壓縮?

檔案壓縮是一個減少檔案或檔案群大小的過程,通常用於節省儲存空間或加速網路傳輸。

檔案壓縮是如何運作的?

檔案壓縮運作原理,透過識別並移除數據中的冗餘資訊。它使用演算法將原始數據編碼在較小的空間裡。

檔案壓縮有什麼類型?

兩種主要的檔案壓縮類型是無失真及有失真壓縮。無失真壓縮可以完美地恢復原始檔案,然而有失真壓縮在一些資料品質的損失下能得到更大的壓縮程度。

請給出一個檔案壓縮工具的範例?

一個常見的檔案壓縮工具範例是WinZip,它支援多種壓縮格式包括ZIP與RAR。

檔案壓縮會影響檔案質量嗎?

在無失真壓縮中,質量保持不變。然而,在有失真壓縮中,可能會有顯著的質量下降,因為它刪除了一些較不重要的數據以便更大程度地減少檔案大小。

檔案壓縮安全嗎?

是的,相對於資料的完整性來說,檔案壓縮是安全的,尤其是無失真壓縮。然而,如同所有檔案,被壓縮的檔案也可能受到惡意軟體或病毒的攻擊,所以總是需要有專業的安全軟體以保護。

什麼類型的檔案可以壓縮?

幾乎所有種類的檔案都可以被壓縮,包括文字檔案、圖像、音訊、視頻和軟體檔案。然而,壓縮程度可以因檔案類型而有顯著的不同。

什麼是ZIP檔?

ZIP檔是一種使用無失真壓縮以減少一個或多個檔案大小的檔案格式。在ZIP檔中的多個檔案被有效地打包為單一的檔案,這也讓分享變得更加容易。

我可以壓縮一個已經壓縮過的檔案嗎?

技術上可行,儘管額外的大小減少可能非常小或甚至適得其反。壓縮一個已經壓縮過的檔案有時可能會增加其大小,原因在於壓縮演算法所增加的metadata。

我該如何解壓壓縮的檔案?

解壓壓縮的檔案,通常需要一個解壓縮或解zip的工具,像是WinZip或7-Zip。這些工具可以从壓縮格式中提取原始檔案。