CMP ファイル形式とは?
.cmpは、PKWARE Data Compression Library (DCL)によって生成されるアーカイブファイルです。この形式は、ITセキュリティおよびデータ圧縮企業であるPKWARE社によって作成されました。これはDCL Implodeアルゴリズム(標準的なZIPアーカイブで使用されるDEFLATEに関連していますが、それよりも古いスライディングウィンドウ方式)を適用して単一のデータストリームを圧縮します。内部にファイル名テーブルやディレクトリ構造は持ちません。
.cmpストリームは、リテラルコーディングモード(バイナリまたはASCII)と辞書サイズ(1 KB、2 KB、または4 KB)をエンコードする1つまたは2つのヘッダーバイトで始まります。これに続いて、長さ、距離、リテラルトークンのシーケンスと、終端のストリーム終了マーカーが続きます。固定されたマジックバイト(ファイル署名)が存在しないため、識別は作成元のアプリケーションを知ることに依存します。
DCL圧縮データは、スタンドアロンの.cmpファイルとして保存されるよりも、レガシーなゲームアーカイブ、古いインストーラーパッケージ、独自のデータコンテナなどの内部に埋め込まれた形で見つかることが一般的です。.cmp拡張子は多くの無関係なプログラムによって頻繁に再利用されているため、正しく識別するには文脈が不可欠です。
PKWAREは、組織内での安全なドキュメント交換を管理するための広範なエンタープライズソリューションであるPKWare Platformも提供しています。そのプラットフォームに関連付けられた.cmpファイルは、汎用的なDCLストリームと互換性はありません。DCLの.cmpデータを処理できるツールには、blast(zlibソースツリーに含まれるDCLデコンプレッサ)や、調査・分析用の010 Editor、ImHexなどのバイナリエディタがあります。
セキュリティと安全性
リスク: LOWDCL .cmpは受動的な圧縮データであり実行可能ではないため、ファイルタイプ自体のリスクは低いです。実用上の危険は誤認にあります。.cmpが実際には別の(おそらく独自の)形式である可能性があり、バグのあるデコンプレッサで信頼できない圧縮データを解凍すると、理論上メモリバグを引き起こす可能性があります。バイナリエディタで検査し、アドウェアなどの可能性がある不審な«CMP opener»をダウンロードするのではなく、メンテナンスされているツール(zlibのblast)を使用してください。
形式の詳細
概要- JEDMICS C4 圧縮画像 (CALS Raster Type 4) - 米国国防総省のビットマップ画像:128バイトのヘッダー、タイルインデックス、512x512のCCITT Group 4タイル。PKWAREとは無関係ですが、同じ.cmp(または.c4)拡張子を使用します。
- Yamahaキーボード パフォーマンス/セットアップファイル - 一部のYamaha PSR/Tyrosアレンジャーキーボードは、レジストレーション/パフォーマンスデータを.cmp拡張子で保存します。
- 汎用的な「比較」/ ビットマップコンポーネントファイル - 様々なCAD、GIS、画像ツールが、カラーマップ、比較、またはコンポーネントデータとして.cmpを出力します。
CMP ファイルを開くプログラム
技術的詳細
詳細仕様| 圧縮アルゴリズム | DCL Implode - PKWAREによって開発されたLZ77/ハフマン・スライディングウィンドウ方式。DEFLATEとは異なります。 |
| 辞書サイズのオプション | ヘッダーフラグで選択可能な3つのサイズ:1 KB (フラグ 4)、2 KB (フラグ 5)、または 4 KB (フラグ 6) |
| リテラルコーディングモード | バイナリモード (0) または ASCIIモード (1)。データ型に合わせてトークンコーディングを最適化するために最初のヘッダーバイトで選択されます。 |
| ファイル構造 | 生のシングルストリーム圧縮データ - 内部ディレクトリ、ファイル名、またはマルチファイルアーカイブのラッパーはありません。 |
| マジックバイト / 署名 | なし - 最初のバイトはモードと辞書サイズをエンコードするDCLヘッダーフラグであり、固定のマジックナンバーではありません。 |
| バイト順序 | リトルエンディアンのビットおよびバイトストリーム |
| MIMEタイプ | application/octet-stream (DCL .cmp専用に登録されたMIMEタイプはありません) |
| 拡張子の曖昧性 | .cmp拡張子は非常に多くの無関係なアプリケーションで再利用されています。正しく識別するには作成プログラムを知る必要があります。 |
| 典型的な埋め込みコンテキスト | DCLストリームは、スタンドアロンの.cmpファイルとしてよりも、レガシーゲームのアーカイブ、古いインストーラー、独自のデータコンテナ内のブロックとして現れることが多いです。 |
| 暗号化のサポート | サポートされていません - DCLは純粋な圧縮アルゴリズムです。暗号化はコンテナレベルで別途適用する必要があります。 |
| 標準的なオープンソースデコンプレッサ | blast - zlibソースツリー (contrib/blast/) に含まれており、DCL Implodeストリームをデコードするために特別に作成されました。 |
| PKZIP Implodeとの関係 | DCL ImplodeはPKZIP Implode(圧縮メソッド6)とは別のアルゴリズムです。名前は共有していますが、互換性はありません。 |
| ストリーム終了マーカー | ビットストリームに埋め込まれた専用の終了トークンが終端を示し、物理的なファイルサイズとは独立しています。 |
| 関連プラットフォーム | WindowsおよびDOS(レガシー由来)。サードパーティ製アプリへのDCLライブラリの組み込みによりクロスプラットフォームで利用可能。 |
| 典型的なファイルサイズ | ソースデータにより1 KBから数MB。辞書サイズが小さいため、現代のアルゴリズムと比較して圧縮率は制限されます。 |
| リリース日 | 1990s (PKWARE Data Compression Library, DCL) |
| 最新バージョン | PKWARE DCL (the 'implode'/'explode' algorithm; not separately versioned) |
| 仕様書 | www.pkware.com |
CMP の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。CMP ファイルについて最初の質問をしてみましょう。