7-Zip書庫 (.7z)
7-Zipオープンアーキテクチャ仕様 標準7-Zip Archive (7Z) は、LZMAおよびLZMA2アルゴリズムを採用した高圧縮のオープンコンテナフォーマットであり、レガシーZIPよりも大幅に高い圧縮率と、ネイティブのAES-256ヘッダー暗号化を実現します。
ZIP を 7Z に変換
無料のブラウザ内 ZIP から 7Z へのコンバーター。お使いのデバイスでファイルを即座に変換します。
調査とメタデータ
オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査して7Zファイルを識別します:
バイトレベルのヘッダーシグネチャ (マジックバイト)
オペレーティングシステムやファイル解析ツールは、先頭のバイナリ列を検査して7Zファイルを識別します:
16進数シグネチャ(オフセット0):
37 7A BC AF 27 1CASCII表現: 7z¼¯'\x1c
標準化: 7-Zipオープンアーキテクチャ仕様
技術仕様
| コンテナアーキテクチャ | 複数の圧縮フィルターの連結とUnicodeファイル名に対応する、オープンでモジュール式のヘッダー構造 |
| 圧縮 | LZMA、LZMA2、PPMd(テキスト)、BZip2、Deflate、BCJ / BCJ2(実行ファイル向け分岐フィルター) |
| バイトエンディアン | リトルエンディアン(Intel x86) |
| 色空間 | 該当なし(アーカイブコンテナ) |
| チャンネルと構造 | 複数ファイルのディレクトリツリー、複数ボリュームにまたがるアーカイブ、ソリッド圧縮ブロック |
| 最大寸法 | ファイルおよびアーカイブ全体で最大16エクサバイト(160億GB)に対応 |
| 透過性 | ファイル属性、Unix権限、および高精度なNTFS 64ビットタイムスタンプを完全に保持 |
| ストリーミングとプログレッシブ | 通常ヘッダーはファイル末尾に格納されるため、専用の非ソリッド構成でなければストリーミング不可 |
技術比較表:7Zと競合製品
| 技術属性 | 7Z (現在) | ZIP | RAR | TAR.GZ |
|---|---|---|---|---|
| 圧縮アルゴリズム | LZMA / LZMA2 / PPMd | Deflate(従来型) | 独自RAR5アルゴリズム | Deflate(Tarストリーム上) |
| ファイル名暗号化 | サポートあり(AES-256ヘッダー暗号化) | サポートなし(ファイル名が可視) | サポートあり(AES-256ヘッダー暗号化) | サポートなし(平文tarメタデータ) |
| ソリッド圧縮 | サポートあり(大規模なファイル間圧縮率向上) | 標準ZIPでは非対応 | RARアーカイブでサポート | 本質的にソリッド(tarballストリーム) |
| ライセンス | フリーオープンソース(GNU LGPL) | オープンパブリックドメイン / PKWARE | 商用プロプライエタリ(WinRAR) | フリーオープンソース(POSIX/GNU) |
一般的な破損モードと16進数リカバリガイド
「Data error in encrypted file. Wrong password?」というエラーで抽出に失敗する。
根本原因: 暗号化されたLZMAストリーム内のCRC32チェックサムの破損、またはブロック境界の破損。
復旧: 7-Zipの「壊れたファイル保持」フラグまたはFile2File.app Archive Repairを使用して復旧を試みます。
セキュリティ分析とパーサー攻撃ベクトル
7zアーカイブは複雑なマルチフィルターデコードチェーンをサポートしており、細工されたフィルターシーケンスがメモリ安全性に関する問題を引き起こす可能性があります。
既知の攻撃ベクター
- 「zip爆弾」スタイルの高度な再帰的LZMA辞書解凍によるサービス拒否(DoS)。
- BCJ2実行可能ブランチアドレスフィルターの計算におけるヒープ範囲外書き込み。
- マルチボリュームアーカイブヘッダー構造の割り当て中の整数オーバーフロー。
防御的ベストプラクティス: 自動化されたサーバー側の抽出パイプラインにおいて、最大解凍メモリと解凍比率に上限を設定します。
歴史的背景とマイルストーン
主なメリット
- 優れた圧縮率:通常、レガシーZIPよりも30%~70%小さく、RARよりも10%~20%小さくなります。
- ソリッドブロック圧縮により、類似したファイルを連続したストリームにまとめ、冗長データの排除を最大化します。
- 軍用レベルのAES-256暗号化により、ファイル名の暗号化をサポートし、許可されていない検査からアーカイブの内容を隠します。
技術的な制限とデメリット
- ソリッド圧縮では、単一ファイルを抽出する際にブロック内の先行ファイルを解凍する必要があります。
- 最大圧縮のLZMA/LZMA2エンコーディング中のメモリ消費量が大きくなります。
- 内蔵の7zサポートがない古いWindowsリリースでは、サードパーティ製ユーティリティが必要です。
興味深い技術トリビア
- 7-Zipは7z形式の仕様を公開しています。7-ZipプログラムはLGPLライセンスで、LZMA SDKはパブリックドメインです。
- 7zのBCJ2フィルターは、圧縮を最大化するために32ビットx86実行可能ファイルのジャンプターゲットを別のストリームに分離します。
- Windows 11は、その発明から24年後の2023年後半に、ようやく7zアーカイブの抽出のネイティブサポートを統合しました。
よくある技術的な質問
7zがZIPよりも小さく圧縮できるのはなぜですか?
7zは、巨大な辞書サイズ(最大1 GB)を持つ高度なLZMA2アルゴリズムと、複数のファイルを1つの連続したストリームとしてまとめて圧縮しファイル間の重複データを排除する「ソリッド」圧縮を使用しているためです。
7-Zipをインストールせずに7zファイルを開くことはできますか?
Windows 11 バージョン 24H2 は 7z アーカイブに対応しています。 File2File.appは、対応ブラウザーと互換性のあるデバイスで7zファイルを処理できます。
7zのパスワード暗号化は安全ですか?
はい。7zは標準化されたAES-256暗号化とSHA-256鍵導出を使用しており、強力なパスワードを使用していれば総当たり攻撃に対して数学的に安全です。