プロが教える店舗&オフィスのセキュリティ対策術

ゲームを作っているのですが、それに使う画像ファイルを暗号化したいです。
むき出しのままだと、所謂ネタバレ的なCGも簡単に見れてしまうので……。

自分の知識では、せいぜい拡張子を変えて誤魔化すぐらいしか出来ません。
ただ、それでは流石にみすぼらしいというか……。
分かる人なら簡単に解けてしまうようなもので構いませんので
教えて頂ければ幸いです。

ちなみに、JPEGとPNGファイルの暗号・復号化です。

A 回答 (2件)

以前ゲーム開発で使っていた手法を



目的のPINGなりJPEGなりを暗号化する独立したツールを作ります。
例えば全部のバイトに1を足すとか、ビットを反転させるとか。
最後の1ビットを反転させただけでも、もう解読不能です。

暗号化したものはバイナリファイルとして出力します。
この辺のルールを決めておけばデコードルーチンは反対の処理をすればいいので楽です。

必要枚数分のCGのバイナリファイルができます。
それをマージして1つの巨大なデータファイルにします。
1つにまとめると余計に正体が分かりにくくなります。

このデータファイルをゲーム開始時にロードさせるなり、
途中でロードさせるなり、ゲーム内に埋め込むのはそちらで決めて下さい。

市販のゲームはたいていこの方式を用いています。
    • good
    • 0
この回答へのお礼

回答有難うございます。
早速試してみたいと思います。

お礼日時:2009/11/05 00:05

JPEG なり PNG なり、元画像のバイナリ先頭に独自ヘッダ


(例えば16バイト程度)をくっつけ、さらに拡張子も変える。
面倒なら、ファイルシグニチャを1バイト書き換えるだけでもいい。

多くの画像ビューアは、画像のバイナリ先頭で画像フォーマットを
特定するから、ここを書き換えただけで読み込めなくなります。

実際、ファイルシグニチャを1バイト書き換えただけで
「Windows 画像と FAX ビューア」では表示できなくなりました。

読み込む際には17バイト目から読み込むとか・・あと略。

思いつきです。

でも、某有名ネットゲームですら「拡張子を変えただけ」って場合
が多いですよ。
    • good
    • 0
この回答へのお礼

回答有難うございます。
早速試してみたいと思います。

ちなみに書き忘れましたが、.NETです。

お礼日時:2009/11/01 11:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!