LSB Steganography とは — ピクセルにデータを隠す仕組み

LSB steganography の基本概念を解説。画像のピクセル値の最下位ビットを書き換えてデータを隠す仕組み、用語、肉眼では判別不可能な理由を詳しく説明します。

Basics

詳細な説明

LSB Steganography の基礎

Steganography(ステガノグラフィー) とは、通常のメディアの中に情報を隠す技術です。暗号化がデータを「読めなくする」のに対し、steganography はデータの存在そのものを「見えなくする」点が異なります。

LSB(Least Significant Bit=最下位ビット)steganography は、デジタル画像を対象としたもっとも一般的な steganography 手法です。画像のピクセルデータの各バイトにおける最下位ビットを、秘密のメッセージの1ビットで置き換えます。

なぜ最下位ビットなのか?

24ビット RGB 画像では、各ピクセルは赤・緑・青の3バイトで表されます。各バイトは 0〜255 の値を持ちますが、最下位ビットが寄与する値はわずか 1 です。つまり、このビットを変更しても色チャンネルの変化は 256 段階中たった 1 であり、人間の目にはまったく区別がつきません。

赤チャンネルの値が 11010100(10進数で 212)のピクセルを例に考えてみましょう:

元のビット 変更後のビット 10進数の変化
11010100 (212) 11010101 (213) +1

この ±1 の変化は人間の知覚閾値をはるかに下回ります。

処理フロー

秘密メッセージ → バイナリ変換 → 各ビットをピクセルの LSB に埋め込み → Stego 画像を出力

重要な用語

  • カバー画像(Cover image): データを埋め込む前の元画像。
  • Stego 画像(Stego image): 秘密データが埋め込まれた後の画像。
  • ペイロード(Payload): 隠される秘密データ。
  • 埋め込み率(Embedding rate): 利用可能ビットに対する隠しビットの比率。ビット毎ピクセル(bpp)で表されます。

ユースケース

情報隠蔽の基本を理解してからツールを使いたい開発者向け。LSB ベースの steganography ツールを操作するために必要な語彙と概念モデルを提供します。

試してみる — Invisible Watermark

フルツールを開く