ZIP書庫 (.zip)

PKWARE 標準

ZIPは可逆データ圧縮をサポートするアーカイブファイル形式であり、複数のファイルやディレクトリを単一の持ち運び可能なコンテナにパッケージ化できます。

ZIP を TAR に変換

無料のブラウザ内 ZIP から TAR へのコンバーター。お使いのデバイスでファイルを即座に変換します。

ZIPをオンラインで圧縮

プライベート - ファイルがデバイスの外に出ることはありません

調査とメタデータ

オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してZIPファイルを識別します:

ファイルを選択するか、ここにドロップしてください

プライベート - ファイルがデバイスの外に出ることはありません

または貼り付け Ctrl+V
ネットワーク送信ゼロのプライバシー保証: 外部サーバーへのデータ送信は0バイトです。すべての処理はお使いのブラウザのサンドボックス内でローカルに実行されます。

バイトレベルのヘッダーシグネチャ (マジックバイト)

オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査してZIPファイルを識別します:

16進数シグネチャ(オフセット0):

50 4B 03 04

ASCII表現: PK..

標準化: PKWARE APPNOTE / ISO/IEC 21320-1

技術仕様

コンテナアーキテクチャ個別の圧縮ヘッダーを持つ複数のファイルを結合したアーカイブコンテナ
圧縮Deflate (方式 8)、Store (方式 0)、BZIP2、LZMA、Zstandard
バイトエンディアンすべてのシグネチャヘッダー、CRC32チェック、サイズにおいてリトルエンディアンを採用
色空間該当なし (任意のファイルのバイナリコンテナ)
チャンネルと構造階層型ディレクトリ構造、メタデータストリーム、ファイルチェックサム
最大寸法標準ZIP: 4 GB / 65,535 ファイル; ZIP64: 16エクサバイト / 1,800京ファイル
透過性該当なし
ストリーミングとプログレッシブファイル末尾にあるセントラルディレクトリにより、解凍なしで即時のファイル一覧表示が可能

技術比較表:ZIPと競合製品

技術属性ZIP (現在)7-Zip (7z)TAR.GZRAR
OS との互換性ZIP の標準機能は OS やバージョンによって異なります。多くのシステムには対応ツールが含まれています。7-Zipまたはサードパーティ製アプリが必要Linux/macOSではネイティブ対応、Windowsではツールが必要WinRARまたはunrarライブラリが必要
圧縮効率中程度 (Deflateアルゴリズム)非常に高い (LZMA/LZMA2アルゴリズム)中程度 (tarに対するDeflate)高い (RAR独自の圧縮)
ソリッド圧縮なし (各ファイルを独立して圧縮)あり (ソリッドブロックにより重複テキストの圧縮率が向上)あり (tarball全体を圧縮)あり (オプションのソリッドモード)
選択的抽出任意の単一ファイルを高速かつ瞬時に抽出先行するソリッドブロックの解凍が必要ターゲットファイルまでストリームを解凍する必要がある非ソリッドの場合は高速

一般的な破損モードと16進数リカバリガイド

アーカイブユーティリティが「End-of-central-directory signature not found」または無効なアーカイブであると報告する。

根本原因: セントラルディレクトリレコードを含む最後のバイトが欠落した、途中で切断されたダウンロード。

復旧: 'zip -FF damaged.zip --out fixed.zip' を使用して最初からローカルファイルヘッダーをスキャンし、新しいセントラルディレクトリを再構築する。

セキュリティ分析とパーサー攻撃ベクトル

ZIPのセキュリティは、Zip Slipパストラバーサル脆弱性と解凍爆弾に集中しています。

既知の攻撃ベクター

  • Zip Slip: ターゲットの抽出ディレクトリから抜け出す '../../' パストラバーサルを含む悪意のあるファイル名。
  • Zip Bomb: ペタバイトのゼロに展開される小さなアーカイブ (例: 4.5 PBに展開される 42 KBの 42.zip)。ディスクとメモリの枯渇によりサーバーをクラッシュさせます。
  • 数分で暗号文のみからの鍵回復を可能にする、レガシーなZipCrypto暗号化の脆弱性。

防御的ベストプラクティス: 抽出されたファイルパスがターゲットフォルダ内に確実にとどまるよう、常にパスをサニタイズしてください。信頼できないアップロードファイルを解凍する際は、最大バイト数とファイル数の制限を厳格に設定してください。WinZip AES-256暗号化を使用してください。

歴史的背景とマイルストーン

2015ISO/IEC 21320-1により、EPUB、DOCX、JARファイルの基本コンテナとしてZIPが正式に規格化される。
1998Microsoft WindowsがWindows 98 Plus!においてネイティブのZIPフォルダ展開機能を統合。
1989ARCをめぐるSEAとの法的闘争の後、PKZIPのためにPhil Katzによって作成される。

主なメリット

  • サードパーティ製ソフトウェアを追加インストールしなくても、世界中のすべてのオペレーティングシステムで標準対応しています。
  • アーカイブの末尾に配置されたセントラルディレクトリにより、解凍せずに即座にファイルの一覧表示が可能です。
  • アーカイブ全体を解凍することなく、必要なファイルだけを選んで抽出できます。

技術的な制限とデメリット

  • プラットフォーム間でUNIXのファイルパーミッションやシンボリックリンクを信頼性高く保存できません。
  • 非ソリッドアーカイブであるため、類似ファイルの大量コレクションに対しては 7zやtar.xz よりも圧縮率が低くなります。
  • 標準のレガシーなZipCrypto暗号化は暗号学的に破られています (AES-256が必須です)。

興味深い技術トリビア

  • ZIPファイルヘッダーの「PK」は、PKZIPの考案者であるPhil Katzの名前の頭文字に由来しています。
  • APK、JAR、DOCX、EPUB など、一般的な形式のいくつかは ZIP コンテナーを使います。
  • ZIPはローカルファイルヘッダーの前やセントラルディレクトリの後ろにデータを追加できるため、画像、JAR、実行ファイルとしても同時に機能するポリグロットファイルの好ましいコンテナとなっています。

よくある技術的な質問

ZIPと7Zの違いは何ですか?

ZIPは追加のソフトウェアをインストールしなくても、すべてのオペレーティングシステムで利用できます。7Zは最新のLZMA/LZMA2アルゴリズムとソリッド圧縮を使用しており、30%〜50%高い圧縮率を実現しますが、古いシステムで開くにはサードパーティ製ソフトウェアが必要です。

ZIPファイルの内容表示が速いのはなぜですか?

ZIPはファイルの末尾に「セントラルディレクトリ」を格納します。ソフトウェアは最後の数キロバイトを読み取るだけで、ファイルを解凍せずにディレクトリツリー全体とファイル名を即座に表示できます。

暗号化されたZIPファイルは簡単に解読できますか?

レガシーなZIP暗号化 (ZipCrypto) は脆弱な96ビット鍵ストリーム暗号を使用しており、bkcrackなどの既知平文攻撃ツールを使用すると数分で解読される可能性があります。最新のアーカイブでは、暗号学的セキュリティを保証するためにWinZip AES-256暗号化を使用する必要があります。