- 締切済み
自分しか開けないファイルってどうやってつくるんですか?
ゲームを作っているのですが絵などがみえてしまうなぁ~とおもってのですが会社独自で作ったファイルなどは自分で作ることはできないのでしょうか? 教えてください。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- anmochi
- ベストアンサー率65% (1332/2045)
それは自分で考えろ。 と言い切ってしまったが、別に突き放している訳ではない。例えばWindowsビットマップ形式だと、プログラムから使う分には楽だがもちろんペイントで開く事もできる。 では、プログラムから開け、ペイントでは開けないようにするには、画像にちょっと細工をしなければならない。これは当然分かるな? それをどのようにするかは自分で決める事だ。これにもランクがあるだろうな。それぞれランクを考えてみた。参考にして欲しい。 1.拡張子を変える(例えばbackground.grphというファイル名にしておいて、実体は単なるビットマップ、など)。これは、とっても楽だがファイルの中身を見られたら一発で見破られる。 2.圧縮する。これも拡張子はlzhやzipなどから変えておいた方が良い。がこれも見る人が中を見ればすぐわかる。 3.独自形式の圧縮を行う。最悪の場合無圧縮でも、画像に対して独自のビット変換を行って逆変換を行わないと画像として見られないようにする。 4.暗号化する。実際はこれも3.とあまり変わらないのだが、逆変換に何らかのパスワードのようなものを付与しなければならないようにするのがミソだ。例えば、ファイル名を与えて逆変換を行い、ユーザがファイル名を変更していれば正しく逆変換できないようにしておく、など。 実際、ここまでの大掛かりな仕掛けを作るのならば独自の画像処理ミドルウェアのような部品を作らないといけないだろうな。 とりあえず一番簡単なビット変換による画像隠しから試していけば良いのではないかな。一番最初に自分で考えろと言ったのは、どのくらいのレベルで見えなくするのか、そのための開発工数はいくらか、というのが色々絡んでくるために最終的には自分で決定しないといけないからだな。まさか圧縮ルーチンやアルゴリズムまでこっちがアドバイスするわけにもいかんし。