DeepFreezer

DeepFreezer （ディープ・フリーザー）は、アーカイバ・ファイル圧縮アプリケーションソフトウェアであり、無償で配布されている。テキストファイルの圧縮に適する。 本項では DeepFreezer 固有の圧縮形式 yz1 についても述べる。 Windows アプリケーション「DeepFreezer」、および一対のコマンドライン プログラム（yzenc と yzdec）を一組として配布されており、コマンドラインプログラムには Windows 用に加え MS-DOS 用および Linux 用がある。 yzenc は一つ以上のファイルを圧縮・アーカイブ化するプログラム、 yzdec はアーカイブからファイルを復元（解凍）するプログラムであり、 DeepFreezer はそれら両方向の機能を含む。 LHA (LZH) や ZIP と同系統の独自圧縮方式 (yz1) により、同じくテキストファイルの圧縮に適するが、それらより圧縮率はやや高いとされる。ファイルの圧縮、および、解凍の速度はそれらと同等、あるいは、より高速という。その一方 bzip2, CAB や RAR 方式には、速度では勝るものの、圧縮率では劣る。 コマンドラインプログラム yzenc/yzdec (YAMAZAKI-Zip Encode/Decode) は独自形式 (yz1) 専用である。 Windows アプリケーション DeepFreezer はこれに加え、自己解凍ファイル (EXE) を作成可能であり、また LZH (LHA), ZIP, RAR, および CAB の各形式アーカイブを yz1 形式と同様に解凍することができる（yz1 以外の形式を解凍するには各々対応 DLL が必要）。 ソフトウェア名称は、 Deep と Freezer の間に空白を入れず DeepFreezer とキャメルケース表記されるほか、空白を入れて Deep Freezer とも表記される。 DeepFreezer および yzenc は圧縮（アーカイブ作成）の際、簡易な機密保護として、アーカイブにパスワードを付加することができる。パスワード保護されたアーカイブは、解凍時にパスワード入力を要し、正しいパスワードを入力しなければ解凍できない。 DeepFreezer は、通常のパスワードに加え、公開鍵パスワード機能を持つ。圧縮（アーカイブ作成）の際、他人に知らせない「秘密パスワード」を指定すれば、 DeepFreezer は他人に知らせてよい「公開パスワード」を算出して表示し、アーカイブに公開パスワードを付加する。解凍の際は正しい公開パスワードを入力しなければならない。これは簡易なデジタル署名のように機能する。 逆に、この公開パスワードを圧縮（アーカイブ作成）の際に指定すれば、解凍時には秘密パスワードが必要となる。これは簡易な公開鍵暗号のように機能する。 このパスワード機能および公開鍵パスワード機能は、パスワードを入力しなければ解凍できないようにするだけであって、共通鍵暗号や公開鍵暗号といった暗号技術によって暗号化しているわけではない。また、パスワードに対する総当たり攻撃や辞書攻撃も脅威となり得る。 PGP 等の暗号ツールと比べ、手間が少なく手軽に使用できる反面、各種の共通鍵暗号や公開鍵暗号のような安全性を目指した設計でないことには注意が必要である。 DeepFreezer は、作者が独自開発した圧縮形式 yz1 を採用している。これは ZIP 形式や LZH 形式と同様、 LZ77 系アルゴリズムとハフマン符号化の組み合わせであるが、辞書の作り方を工夫することで、圧縮・解凍速度および圧縮率に若干の改善がみられる。 作者よりソース利用の許諾を受けた有志数名が、この圧縮・解凍処理部分を DLL 化している。この DLL により、統合アーカイバ仕様 DLL 対応アーカイバの一部、具体的には Explzh, LhaForge, Meltice, Noah, 等々が yz1 形式に対応している。 作者自らの手により、性能向上を目指して yz1 圧縮形式の改良が試みられた。 IPA （情報処理推進機構、当時は情報処理振興事業協会）主催の平成12年度「未踏ソフトウェア創造事業」において、「次世代アーカイバソフト（圧縮形式名yz2）の開発」として採択された。約半年間の事業期間にて、ソースコードの公開に向けたリファクタリング、圧縮率向上、圧縮・解凍速度の向上が図られた。 yz1 で使用していたハフマン符号化を Range Coder に置き換えている。 引き続き平成13年度の同事業において「次世代アーカイバ (yz2) の拡布と市販ソフトへの適応」とテーマを変え、性能向上の試みに加え、アルゴリズム実装の DLL 化、サンプル GUI (DeepFreezer2) の開発、およびソフトハウスと共同で市販ゲームソフトへの組み込みが行われた。 ここまでの成果が DeepFreezer2 および圧縮形式 yz2 の alpha 6 バージョンとして公開されている。上記事業としての圧縮形式 yz2 開発は一応完了しているが、作者は完成度に納得せずアルファ版扱いのままであり、アーカイブファイルの拡張子は ".yz2a6" である。 [脚注の使い方] ^ a b やまざき@BinaryTechnology (1997-07-01 - 2000-12-03). “DeepFreezer”. 簡単/高速/高圧縮アーカイバ DeepFreezer. 2008年10月4日閲覧。 ^ a b YAMAZAKI@BinaryTechnology (1999-03-14 - 2000-09-25). “DeepFreezer” (英語). YAMAZAKI@BinaryTechnology WORK No.1 DeepFreezer. 2008年10月4日閲覧。 ^ a b c d バージョン 1.06 同梱ヘルプファイル ^ a b c やまざき@BinaryTechnology. “バージョン 1.06 オンライン HTML ヘルプ”. 2008年10月4日閲覧。 ^ a b c YAMAZAKI@BinaryTechnology. “バージョン 1.06 オンライン HTML ヘルプ” (英語). 2008年10月4日閲覧。 ^ a b c 株式会社ベクター. “DeepFreezer”. PickUp Windows. 2008年10月4日閲覧。 ^ a b c ひぐち たかし (1998年11月16日). “ファイル圧縮対決6番勝負！ 著名なファイル圧縮形式のうち一番小さくなる圧縮形式はどれだ？”. 窓の杜. インプレス. 2008年10月4日閲覧。 ^ Windows 用 yzenc.exe 1.05.2 は起動時に "YAMAZAKI-Zip Encode for Windows95/98/NT Console" と表示する。 yzdec.exe は "Encode" の代わりに "Decode" と表示する。 ^ a b c 統合アーカイバプロジェクト（#外部リンク参照）による「統合アーカイバ API 仕様」に基づく DLL であり、同プロジェクトのサイトを通じてダウンロード可能 ^ a b c やまざき@BinaryTechnology. “データ圧縮の基礎”. 2008年10月4日閲覧。 ^ Computer Knowledge, Jelsoft Enterprises Ltd.. “File Extension .YZ1 Details” (英語). FILExt - The File Extension Source. 2008年10月4日閲覧。 ^ Marco Pontello. “TrID file type / file extension definitions Y” (英語). TrID - File Identifier. 2008年10月4日閲覧。 ファイル形式をファイル内のシグネチャにより判別するフリーウェア TrID の公式サイト（スペイン語版、英語版）に掲載されている拡張子リスト。 ^ ウェブリオ株式会社. “拡張子辞典 .yz1”. IT用語辞典バイナリ. 2008年10月4日閲覧。 ^ Explzh （Windows 用の圧縮・解凍ソフト） 作者サイト、窓の杜、Vector ^ LhaForge（Windows 用の圧縮・解凍ソフト） 作者サイト、窓の杜、Vector ^ Meltice Family （Windows 用の解凍ソフト、圧縮ソフト、および関連ツール群） 作者サイト、Vector ^ Noah （Windows 用の圧縮・解凍ソフト） 作者サイト、Vector ^ IPA. “平成12年度「未踏ソフトウェア創造事業」開発成果”. 2008年10月4日閲覧。 ^ a b IPA. “平成13年度未踏ソフトウェア創造事業 採択案件評価書 12-22”. 2008年10月4日閲覧。 ^ やまざき@BinaryTechnology. “圧縮形式yz2”. 2008年10月4日閲覧。 統合アーカイバプロジェクト: csdinc.co.jp および madobe.net で同一内容をミラー公開