RGB チャンネル選択 — どのビットを変更するか
RGB カラーチャンネルごとのデータ分配戦略を比較。均一埋め込み、単一チャンネル、青チャンネル優先、適応型アプローチのそれぞれの利点と検出回避性を解説します。
詳細な説明
データを隠すチャンネルの選び方
RGB 画像は1ピクセルあたり3つのカラーチャンネルを持ち、それぞれがデータの隠し場所として使えます。ペイロードをどのチャンネルにどう分配するかは、容量と検出可能性の両方に影響します。
戦略 1: 均一埋め込み(全チャンネル)
もっとも単純なアプローチ — 各ピクセルの R、G、B チャンネルに順番にビットを埋め込みます。
Pixel 0: R[bit0] G[bit1] B[bit2]
Pixel 1: R[bit3] G[bit4] B[bit5]
...
利点: 1ピクセルあたり3ビットの最大容量。実装が簡単。 欠点: 3チャンネルすべてが変更されるため、統計的分析で検出されやすい。
戦略 2: 単一チャンネル埋め込み
1つのカラーチャンネルにのみデータを埋め込み、残り2つはそのまま。
利点: 画像データの3分の2がまったく変更されないため、全チャンネル分析による検出が難しくなる。 欠点: 容量が1ピクセルあたり1ビットに減少。単一チャンネル分析では検出される可能性あり。
戦略 3: 青チャンネル優先
人間の視覚システムは青チャンネルの変化に最も鈍感です。これが青チャンネル優先埋め込みの根拠です:
優先: B チャンネル LSB(全ピクセル)
オーバーフロー: G チャンネル LSB(容量超過時)
最終手段: R チャンネル LSB(必要な場合のみ)
利点: 人間の知覚がもっとも弱い部分に変更を集中。高い埋め込み率でも視覚的に検出されにくい。 欠点: オーバーフローチャンネルを使わなければ容量が制限される。
チャンネル感度比較
| チャンネル | 人間の感度 | 隠蔽の優先度 |
|---|---|---|
| 赤(R) | 高い | 低い |
| 緑(G) | 最も高い | 最も低い |
| 青(B) | 最も低い | 最も高い |
この感度の順位は、人間の網膜における錐体細胞の分布に起因します — 青に感度を持つ錐体細胞は赤や緑に比べてはるかに少ないのです。
戦略 4: 適応型埋め込み
最も高度なアプローチ — 各ピクセルの周辺領域を分析し、既存のノイズに変更が紛れ込む「ビジー(高分散)」な領域に優先的に埋め込みます。
for each pixel:
variance = computeLocalVariance(pixel, neighbors)
if variance > threshold:
このピクセルに埋め込み // テクスチャで変更が隠される
else:
スキップ // 平坦な領域は検出されやすい
利点: 検出可能性を劇的に低減。HUGO、WOW、S-UNIWARD などの最新手法は研究分野のゴールドスタンダード。 欠点: 実装が複雑。平坦な領域をスキップするため実効容量が減少。
このツールの方式
このツールは最大容量と簡便さのために全3チャンネルへの均一埋め込みを使用しています。著作権の透かし、CTF チャレンジ、個人メッセージなどの大多数のユースケースでは十分な隠密性を提供します。
ユースケース
チャンネル埋め込み戦略のトレードオフを理解し、自分のセキュリティ要件に最適なアプローチを選びたい上級ユーザーや研究者向け。