Windowsアイコン (.ico)

Microsoft 標準

Windows Icon Resource(ICO)はMicrosoftのマルチ解像度アイコンコンテナー形式で、ウェブサイトのファビコンやWindowsアイコンによく使われます。

ICO を PNG に変換

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

調査とメタデータ

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

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

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

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

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

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

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

00 00 01 00

ASCII表現: ....

標準化: Microsoft Windowsアイコンリソース仕様

技術仕様

コンテナアーキテクチャ6バイトのICONDIRヘッダーには、2バイトの予約フィールド(0)、2バイトの種別フィールド(アイコンの場合は1)、2バイトの画像数フィールドが含まれます。これらは個別のフィールドであり、固定シグネチャではありません。続いて16バイトのICONDIRENTRYレコードとDIBまたはPNGの画像データが続きます。
圧縮非圧縮DIB、またはPNG圧縮ストリーム(256x256アイコン用)
バイトエンディアンリトルエンディアン(Intel x86)
色空間デバイスRGB, sRGB
チャンネルと構造1ビットモノクロ、4/8ビットパレット、24ビットRGB、またはアルファ付き32ビットRGBA
最大寸法256 x 256ピクセル(複数解像度を格納可能:16x16、32x32、48x48、64x64、128x128、256x256)
透過性XOR/AND二値透明マスク、または完全な8ビット滑らかアルファチャンネル
ストリーミングとプログレッシブアイコンディレクトリコンテナのため、ストリーミング不可

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

技術属性ICO (現在)PNGSVGCUR
マルチ解像度ストレージ1 つのファイルに複数のサイズが埋め込まれている単一の画像サイズのみ無限のベクターのスケーリング複数のカーソルサイズ
ファビコンのサポートブラウザーで広くサポートされていますが、詳細はバージョンによって異なります最新ブラウザでサポート最新ブラウザでサポートなし (マウスポインタのみ)
リソースタイプ ID0x0001 (アイコン)標準画像ファイルW3C XML ベクター0x0002 (ホットスポット付きカーソル)
最大寸法256 x 256 ピクセル実質的に無制限無限 (ベクター)256 x 256 ピクセル

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

ブラウザタブにカスタムのウェブサイトアイコンの代わりに空白のデフォルトドキュメントページが表示されます。

根本原因: ファビコンに標準の 16x16 または 32x32 の解像度エントリが欠落しているか、破損した DIB ヘッダーが含まれていることが原因です。

復旧: File2File.app ファビコンジェネレーターを使用して、マルチ解像度 ICO ファイルを再生成してください。

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

ICO ファイルには、バッファオーバーフローの脆弱性を防止するために検証する必要があるデータオフセットを指定するディレクトリテーブルが含まれています。

既知の攻撃ベクター

  • 画像ディレクトリ数の整数オーバーフローにより、小さなメモリ割り当てとヒープバッファオーバーフローを引き起こす。
  • マップされたファイルメモリの外側への読み取りを指示する、破損した画像バイトオフセットポインタ。
  • 256x256 アイコンエントリ内に埋め込まれた PNG 展開ボム。

防御的ベストプラクティス: すべてのディレクトリのエントリオフセットが、ICOファイルの物理的な境界内に厳格に収まるようにします。

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

2006Windows Vista で、ICO フォーマット内に埋め込まれた PNG 圧縮 256x256 アイコンのサポートが導入されました。
1999Internet Explorer 5によってウェブサイトのアイコン用の「favicon.ico」が広く知られるようになりました。ファビコンには他の画像形式も使われています。
1985Windows 1.0 がデスクトップショートカットグラフィックス用のネイティブ .ICO フォーマットと共にリリースされました。

主なメリット

  • 1つのファイルに複数の画像解像度(例: 16x16、32x32、48x48、256x256)を格納し、あらゆる DPI スケールで鮮明に表示できます。
  • 多くのブラウザーやデスクトップアプリでサポートされていますが、動作はプラットフォームやバージョンによって異なります。
  • 古典的なコンテナ内で最新の 256x256 高解像度 PNG 圧縮をサポートします。

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

  • 最新のウェブブラウザは、レガシーなマルチリソース ICO コンテナよりも、標準の SVG および PNG ファビコンを好みます。
  • 古いソフトウェアにおけるレガシーな 1-bit XOR 透明マスクは、ギザギザのピクセル化されたエッジを生み出します。
  • 固定された解像度の制限 (アイコンフレームあたり最大 256x256 ピクセル)。

興味深い技術トリビア

  • 初期の Windows バージョンでは、アイコンは 16 色の 32x32 ピクセルに制限されていました。
  • Internet Explorer 5 がファビコンを導入した際、ウェブサイトはサーバーログ内の「/favicon.ico」のリクエスト数を数えることで、何人のユーザーがページをブックマークしたかを把握していました。
  • ICO ファイル内の 256x256 アイコンエントリには、8 バイトの PNG シグネチャで始まる完全で有効な PNG ファイルがそのまま含まれています。

よくある技術的な質問

なぜウェブサイトにfavicon.icoが必要なのですか?

HTMLでPNGファビコンを指定している場合でも、ウェブブラウザや検索エンジンのクローラーは、タブやブックマークのアイコンを表示するためにデフォルトで「/favicon.ico」を要求するためです。

ICOファイルにはどのような解像度を含めるべきですか?

プロ仕様のICOファイルには、すべてのモニターのスケールやタスクバーでシャープに表示させるために、16x16、32x32、48x48、256x256ピクセルのバージョンを含める必要があります。

PNGをICOファイルに変換するにはどうすればよいですか?

PNG画像をFile2File.appにアップロードすると、最適化されたマルチ解像度のICOファイルをウェブブラウザ内で即座に生成できます。