ステガノグラフィ
投稿日: | |
---|---|
タグ: |
目次
最近NUMB3RSを見返してて,s2-8『隠された写真』に出てきたステガノグラフィが気になったので,少し調べてみた.
デジタル・ステガノグラフィ(digital steganography)
デジタル・ステガノグラフィとはデータ隠蔽技術の一つで,あるデータに対して別のデータを埋め込むことである(以降,単にステガノグラフィとだけ呼ぶ).ステガノグラフィでは,隠すために使用された元のファイルをカバーファイル,作成されたデータをステゴファイルという.
例えば,ある画像ファイルにテキストファイルを埋め込むことで,テキストの存在を秘匿できる.この時,ステゴファイルは,以前の画像と比べて変化しているが,その変化を人間が検知することは困難である.以下に実際のステゴファイルとカバーファイル,隠蔽した画像ファイルを示す.
カバーファイル
隠蔽したファイル
ステゴファイル
user% steghide extract -sf ./img3.jpg
抽出に必要なパスワードは『hogehoge』である.コマンドのオプションについては,後述のsteghideで示す.
ステガノグラフィの利用方法には,秘密情報の存在秘匿やメディアデータへのメタ情報の追加,サブリミナル広告などがある.
コマンド
outguess
画像ファイルにデータファイルを隠蔽するプログラム.サポートするファイルは以下の通りである.
- PPM
- PNM
- JPEG
user% outguess 引数 [入力ファイル [出力ファイル]]
以下に使用例を示す.
- 埋め込み
-
埋め込みには-dオプションで指定する.
user% outguess -d secret.txt cover.jpg stego.jpg
パスワードを設定したい場合,-kオプションで指定する.user% outguess -k hogehoge -d secret.txt cover.jpg stego.jpg
- 抽出
-
抽出には-rオプションで指定する.
user% outguess -k hogehoge -r stego.jpg secret.txt
steghide
画像や音楽ファイルにデータファイルを隠蔽するためのプログラム.サポートするファイルは以下の通りである.
- 画像
- JPEG
- BMP
- 音楽
- WAV
- AU
user% steghide コマンド 引数
- -cf
- カバーファイル
- -ef
- 組み込むファイル
- -sf
- ステゴファイル
steghideのコマンド例
- embed
-
ファイルを組み込む.
user% steghide embed -cf cover.jpg -ef secret.jpg -sf stego.jpg Enter passphrase: Re-Enter passphrase: embedding "secret.jpg" in "cover.jpg"... done writing stego file "stego.jpg"... done
- extract
-
隠蔽ファイルを抽出.
- -xf
- 抽出ファイル名.指定しない場合,embedの-efで指定したファイル名になる.
user% steghide extract -xf secret.jpg -sf stego.jpg wrote extracted data to "secret.jpg". - info
- ファイル情報を表示
user% steghide info img3.jpg "img3.jpg": format: jpeg capacity: 2.1 KB Try to get information about embedded data ? (y/n) y Enter passphrase: embedded file "img2.jpg": size: 1.7 KB encrypted: rijndael-128, cbc compressed: yes