クローキングBitmapの作り方
まず、JDA Ver2.87以降を起動してからメニューの「ツール」-「クローキングBMPツール」を選択して下さい。すると次のようなウィンドウが表示されたはずです。
次に、@の右端にあるボタンを押して、何でもいいですから24bit色(フルカラー)のBitmapファイル(*.bmp)を選択して下さい。JPEGファイルをBMPに変換すると良いと思います。 すると次のように、埋め込む事が出来るファイルの最大サイズが表示されますので、そのサイズ以下のファイルをAで指定して「開始」ボタンを押すと、もうクローキングBitmapの作成完了です。
※クローキングBMPの作成は、けっこう時間がかかります。「開始」ボタンを押してから数十秒間もかかる場合もありますが、ハングアップしているわけじゃないのでご注意下さいね。 |
クローキングBitmapから埋め込まれたファイルを取り出す方法
@の右端にあるボタンを押して、クローキングBitmapを指定して下さい。すると次のようにファイルが埋め込まれている旨が表示されます。ここでは上で作成したクローキングBitmapを開いています。
あとはAの右端にあるボタンを押して、適当な名前を入れて開始ボタンを押せば、埋め込まれたファイルを取り出してその名前で保存します。
※インプラントJPEGと違って、元のファイル名を保持しませんのでご注意下さい。 |
少しだけ詳細な解説
クローキングBitmapがどういうものかはこちらを見ていただくとして、ここでは少しだけ詳細に解説いたします。 クローキングBitmapは、ファイルを埋め込んでもそのファイルサイズが変わらないという魔法のような技術ですが、この仕組みはとてもロジカルかつシンプルです。
Bimtapファイルのフォーマットは、いわゆるベタファイルというもので すべての画素を単純に数値化しているだけのものなので、各画素に論理演算を直接的に施す事が出来ます。 そこで、各画素のRGB値にビットレベルでの演算を施して 外的に意味を持ったビットを含ませます。もちろん、その外的に意味を持ったビットというのは、埋め込むファイルを分解したストリーム(非ブロック)というわけです。 このような仕組みなので、クローキングBitmapはバイナリエディタなどで見ても全く普通のBitmapと変わりませんし、ファイルサイズも変化しません。 埋め込むファイルの最大サイズは、以下の式によって計算されます。 ((Bitmap画像の幅 × Bitmap画像の高さ) ÷ 2) − 8 bytes
たとえば、640X480ピクセルのBitmapファイルには、 なお、埋め込まれるBMPの各画素値に規則性が無い場合、クローキングBMPは配列暗号そのものと言って良いかもしれません。 |