檔案壓縮與解壓縮

本機壓縮最多 1,000 檔/200 MiB,或預檢最大 50 MiB 的 ZIP 後按需解開安全項目。

檔案不上傳;不支援密碼或加密 ZIP,並會拒絕超過 50 MiB 單檔、200 MiB 總量或 100:1 比例的內容。
模式

使用說明

在瀏覽器本機建立或檢查 ZIP;壓縮最多 1,000 檔/200 MiB,解壓輸入最多 50 MiB,先檢查再按需解壓。

在瀏覽器內將多個檔案打包成 ZIP,或先查看 ZIP 檔案清單,再選擇個別項目準備下載。檔案內容不會上傳。

💡 3 步驟快速上手

① 選擇模式

選擇「壓縮」或「解壓縮」。

② 使用檔案選擇器

壓縮模式可選多個檔案;解壓縮模式選一個未加密的 ZIP,先查看預檢後的清單。

③ 下載壓縮檔或個別檔案

壓縮完成後下載 ZIP;解壓縮時先按所選項目的「準備下載」,再下載該檔案。

適用情境

解壓預檢限制單檔 50 MiB、總計 200 MiB、最多 1,000 檔及單檔與整體 100:1 壓縮比。

計算或處理方式

先解析中央目錄並拒絕不安全路徑、重複名稱、加密、ZIP64、多磁碟與不支援方法;只在選取下載時解開單一安全檔案。

具體範例

例如先列出 20 MiB ZIP 內通過檢查的檔案,再只解開所選項目;可疑高壓縮比檔案會在解壓前停止。

限制與資料處理

不支援密碼/加密 ZIP、ZIP64、多磁碟、不安全路徑、重複名稱或未知壓縮法;目錄可列出但不能下載。

檔案與項目名稱不上傳、不保存;本機下載網址會在替換、切換模式、重設、錯誤或離開頁面時撤銷。

ZIP 封存格式規範、Deflate 壓縮與前端解壓縮安全手冊

一、ZIP 檔案結構:Local File Header 與 Central Directory

ZIP 檔案是由 Phil Katz 於 1989 年發明的開源封存格式(現為 PKWARE APPNOTE 規範)。ZIP 檔案的特殊之處在於其結構將檔案的「中央目錄(Central Directory)」放置於檔案最末端。

這種設計使得作業系統或瀏覽器無需將整份巨大檔案完全解壓縮,即可透過定位末端的中央目錄,在毫秒內瞬間列出壓縮包內包含的所有檔案清單、原始大小、壓縮後大小與路徑結構。

二、Deflate 演算法原理:LZ77 與 Huffman 編碼結合

ZIP 最常用的壓縮演算法是 DEFLATE(IETF RFC 1951)。它結合了兩大無損壓縮核心:首先透過 LZ77 演算法找出資料中連續重複出現的字串,並以「距離與長度指針」替代;接著透過霍夫曼編碼(Huffman Coding)將出現頻率高的符號賦予較短的二進位碼,實現極高的無損壓縮比。

三、本機 JavaScript 處理與解壓限制

本工具以瀏覽器本機 JavaScript 讀取 ZIP 目錄與處理檔案,不上傳檔案內容。清單檢查在解壓選定項目前進行;瀏覽器記憶體仍是實際限制。

預檢限制 ZIP 大小、檔案數、解壓總量與壓縮比例,以降低資源耗盡風險;這不代表能保證任何來源的 ZIP 都安全,請只處理可信任檔案。

權威資料來源與參考規範

  • PKWARE:.ZIP File Format Specification (APPNOTE)
  • IETF RFC 1951:DEFLATE Compressed Data Format Specification
  • W3C:Compression Streams API Standard

常見問題

檔案壓縮與解壓縮接受哪些輸入與大小限制?

壓縮最多 1,000 個檔案、來源共 200 MiB;解壓 ZIP 最多 50 MiB,預檢最多 1,000 個檔案、單檔 50 MiB、總計 200 MiB、壓縮比 100:1。

檔案壓縮與解壓縮如何產生結果?

壓縮與預檢都在瀏覽器執行;安全清單通過後只按需解開選定檔案,不會一次把所有內容做成記憶體下載網址。

檔案壓縮與解壓縮有哪些限制?

不支援密碼/加密 ZIP、ZIP64、多磁碟、不安全路徑、重複名稱或未知壓縮法;目錄可列出但不能下載。

檔案壓縮與解壓縮如何處理資料?

檔案與項目名稱不上傳、不保存;本機下載網址會在替換、切換模式、重設、錯誤或離開頁面時撤銷。