ステガノグラフィー(ファイル埋め込み編)

以前の記事で
ステガノグラフィーを利用して、
画像に文字列を埋め込んでみましたが。

今回は、以前のものを、さらに進めて、
文字列ではなく、
ファイルを丸々埋め込めるようにしたものも、作成しました。
ので、紹介させていただきます。

ひとまず。今回は、取り急ぎ

全部ループしてデータのバイナリを埋め込んでみる
Visual Basic 2015にて、以下のコードを作成しました。

また、以下のコードをコンパイルしたexeも、
こちらに上げさせていただきます

https://box.yahoo.co.jp/guest/viewer?sid=box-l-whyh2ir4gsdpaezhglawq7fiyu-1001&uniqid=dd7cf03a-3b21-4c92-bbf0-60a460cfe36d&viewtype=detail


以下のコードは、
直接、「新規Windowsフォームアプリケーション」でのFormに、
そのまま、貼り付け。
snapshot008925406.jpg


そうすれば、
動作が始まるようにしてあります。

尚、ファイルの出力はすべてデスクトップに出力される仕様です。

あと、いろいろ端折った。ながったるいコードですみません。











以降は動作結果です。
埋め込む前の画像。
241 - コピー

埋め込んだ後の画像。
画像埋め込み済

上の画像に埋め込んだ情報は、
壁紙
こちらの画像のバイナリとなっております。
つまり、画像の中に画像の情報を入れ子として入れることができました。


もちろん、画像のほかに、
exe、pdfなど、
そのままメールで送ると、セキュリティで引っかかってしまうようなファイルも、
埋め込み可能で、

その埋め込んだ画像をメールに添付して、送ることができました。

ちなみに、
今回、最下位の1ビットを埋め込みに使用した場合、対象の画像で、
だいたい50kBのデータを埋め込めます。

大きな画像なら、画像に、短い音楽を入れられたりもします・・・。


例えば。
3ビット深度で。音声データを埋め込んだ画像は、こちら。
3ビット深度・音声埋め込み
160kB程度のデータが内包されています。


5ビット深度で。今年の私の年賀状画像をうめこんだ画像は、こちら。
5ビット深度
250kB程度のデータが内包されています。


7ビット深度で。今回のVB2015ソースコードをまるまるzipして埋め込んだ画像が、こちら。
7ビット深度(ソースコード入り)
370kB程度のデータが内包されています。

埋め込む深度が増えるほど、
入れられるデータの容量が増える反面
画像も荒くなるのがわかると思います。

よかったら、実際に何が画像に埋め込まれているのか・・・。上の画像をダウンロードしてみて、
当記事の公開ソフトで、復号・確認なされてみるのも一手だと思います。
しかし、あつかましいですが、責任は自己責任でお願いします。



今後の課題として、
単純にバイナリを入れていくのではなく、

パスワード付zipに圧縮して入れたり。
バイナリを暗号化して入れたりすれば、
埋め込んだファイルの隠ぺいの強度は、より上がると思います。

また、今はビット深度は、単純なループするだけの埋め込みコードですが、
今後は、各ビットの埋め込み処理を同時進行し、高速化をしてみたいです。

今後そういったコードも追加したいです。


以上
お粗末様でございました。
スポンサーサイト

テーマ : プログラミング - ジャンル : コンピュータ

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック


この記事にトラックバックする(FC2ブログユーザー) URL

プロフィール





最新記事
最新コメント
最新トラックバック



月別アーカイブ
カテゴリ