RGB チャンネル選択 — どのビットを変更するか

RGB カラーチャンネルごとのデータ分配戦略を比較。均一埋め込み、単一チャンネル、青チャンネル優先、適応型アプローチのそれぞれの利点と検出回避性を解説します。

Techniques

詳細な説明

データを隠すチャンネルの選び方

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 チャレンジ、個人メッセージなどの大多数のユースケースでは十分な隠密性を提供します。

ユースケース

チャンネル埋め込み戦略のトレードオフを理解し、自分のセキュリティ要件に最適なアプローチを選びたい上級ユーザーや研究者向け。

試してみる — Invisible Watermark

フルツールを開く