PhotoSteg
写真に任意データファイルをさり気なく埋め込む(忍ばせる)。

- 任意のデータファイルを写真の中に隠すことができます。お宝の地図や自分のサインを写真に隠し入れるのに最適です。
- データファイルの形式に制限はありません。ZIP,EXE,JPG,PDF,XLSX,DOCXなど任意のファイルを埋め込むことができます。
- データファイルを埋め込んだ写真は32bitのPNG画像として保存します。
- 写真の画素数(幅 x 高さ)が[N]の場合、概ね[Nx2]バイトのデータファイルを埋め込むことができます。
- 透過用アルファチャンネルおよびRGBの下位ビットにデータファイルを埋め込みます。
- データファイルを埋め込むことで画質が劣化しますが、元写真と比べなければ気づかない程度です。
- 写真に隠したデータファイルはパスワードが一致しないと取り出すことができません。
- パスワードに基づいて生成した独自のルール(鍵)でビット列の転置を行いデータを符号化します。
- 鍵は256万通りあるためパスワードを知らない他人が復号(解読)することは簡単ではありません。
- GUIアプリ(画面付きアプリ)とCUIコマンド(画面無しアプリ)があります。
- GUIアプリ[PhotoSteg]
- 写真にデータファイルを埋め込み、写真からデータファイルを取り出すことができる
- CUIコマンド[pnggets]
- 写真からデータファイルを取り出すことができる
- ファイル構成
. │ PhotoSteg.exe │ plib.dll │ pnggets.exe │ PUtils.dll │ ├─ cfg/ │ stegParam.xml │ └─ ja-JP/ PhotoSteg.resources.dll
設定値ファイル(xmlファイル)が生成されるが未使用。設定値は一切保存されません。
使い方
写真にデータファイルを埋め込む
- PhotoSteg.exeを起動する。
- データファイルを画面上部のデータファイル名表示エリアにドロップする。
- 圧縮したデータサイズが画面下部に表示される。
- 写真の後でデータファイルをドロップしても良い。
- 写真(画像ファイル)を画面中央の画像表示エリアにドロップする。
- 右クリックメニュー
からクリップボードの画像を取り込むことができる。
- 写真がデータ埋め込みに適した画質であるかを検査し、その結果が写真画質[〇][△][✕]として表示される。 のっぺりした写真だと[X]になる可能性が高くなる。
- 写真画質が[✕]だった場合は別の写真をドロップし直す必要がある。
- データファイルに対して写真が小さ過ぎると注意された場合は別の写真をドロップし直す必要がある。
- ドロップする画像ファイルはJPEG画像以外にPNG画像やBMP画像でも良い。
- 右クリックメニュー
- パスワードを確認、または必要に応じて独自のパスワードを指定する。
- 常にデフォルトのパスワード[P65defaultPW]が初期設定されている。
- 独自のパスワードを指定する機能は備えてあるが、安易にパスワードを指定して、 そのパスワードを忘れてしまうと写真に埋め込んだデータファイルを二度と取り出せなくなるため、 所定の手順に従わないとパスワードを指定できない仕組みにしている。 一連の操作に慣れるまではデフォルトのパスワードでの利用をお勧めする。
- パスワードは8文字以上必要で、10~12文字を推奨する。 またパスワードに使用できる文字は半角英数字と下線記号(_)とマイナス記号(-)。
- ご要望があれば独自のパスワードを簡単に指定できるように改造することも可能(ご相談ください)。
- [埋め込み]を選択し、データファイルを埋め込んだ写真の保存場所とファイル名を指定して[保存]する。
- 同名のファイルがある場合は上書き保存するかを尋ねられる。
- 画面にはデータファイルを埋め込んだ写真が表示されるが、元の写真との差異を見分けるのは難しいでしょう。
写真(PNG画像ファイル)からデータファイルを取り出す
- PhotoSteg.exeを起動する。すでに起動していれば起動し直す必要はない。
- データファイルを埋め込んだ写真(PNG画像ファイル)を画面中央の画像表示エリアにドロップする。
- パスワードを確認、または必要に応じて独自のパスワードを指定する。
- 常にデフォルトのパスワード[P65defaultPW]が初期設定されている。
- パスワードを記憶する仕組みを設けていないため、独自のパスワードを指定する場合は毎回入力する必要がある。
- [取り出し]を選択、取り出したデータファイルがドロップした写真と同じ場所に保存される。
- 同名のファイルがある場合はエラーが表示され、データファイルの保存に失敗する。
コマンド[pnggets]を使用して、写真からデータファイルを取り出す
- コンソール(コマンドプロンプト、DOS窓)を起動する。
- コマンド[pnggets]を入力するとUsage(使い方)が表示される。
- データ取り出しコマンド[pnggets.exe]は単独で実行可能。
- Usageにしたがって、写真ファイル名とパスワードを指定してコマンドを入力すると、
データファイルが格納された圧縮ファイル[_gets_data.zip]が生成される。
- 圧縮ファイルを解凍してデータファイルを取り出す。