- ベストアンサー
html5でソースを非表示にできますでしょうか?
html5で例えばオンラインゲームを作成しようと考えた場合に、 ブラウザ上から容易にソースの表示が行えると セキュリティ上サーバへの不正なアクセスなどが行いやすくなると 思っております。 firefoxのアドオン等でサーバから送られたhtmlをリアルタイムに変更 して、サーバへ不正な返信を再度行う事も容易に出来てしまう気が しております。 ソース表示以外でもなにかご助言頂けるとうれしいです。 よろしくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ゲームの形式によりますが、 ・入力チェックとデータの処理はサーバー側 ・表示とコントロールの送信のみクライアント側 にすることで、ソースコードが見えたとしても不正な操作はできないのではないかと思われます。
その他の回答 (2)
- chochobizo
- ベストアンサー率42% (30/70)
ソースを解析し難い用にすることは可能です。 scriptが含まれてる場合などでやり方は異なってきますが、 以下のURLに色々と出てますので参考にしてみて下さい。 http://www.broadband-xp.com/hidesource/
お礼
ご回答ありがとうございます。 お教え頂いた。サイトを全て読んでみました。 webアプリ初心者の私にとっては、とても勉強になりました。 クライアントの難読性を実現するにはバイナリ形式にするのが、 良いと結論されてしまうと感じました。 chromeブラウザに特化するなら、NaCl+O3Dというのが有望そう なのですが、ブラウザを限定してしまう事に抵抗を若干感じております。 flashで良いのではと怒られてしまいそうですが、もう少しだけ 模索してみようと思います。 迅速なご回答にとても感謝しております。 ありがとうございました。
- MOMON12345
- ベストアンサー率32% (1125/3490)
ソースを見にくくすることは出来ますが、見えないようにすることは出来ません。 見えないようにしたらブラウザが困ってしまいますからね。 そもそもSourceを見られたらセキュリティレベルが低下するようなものは作るべきではありません。
お礼
ご回答ありがとうございます。 最近少し話題になっているhtml5ではゲームも作れる可能性があると 思っておりましたので少し期待し過ぎてしまいました。 個人で楽しむゲームではソースを見られる事は問題にならないのですが、 ランキングやその他の全体で共有するデータが生じると、クライアント の動きを知られてしまう事がセキュリティホールになってしまうと 思っております。 MOMON12345様のおっしゃられる事が答えと感じておりますが、 もう少しだけあがいてみようと思っております。 迅速なご回答とても感謝致します。 ありがとうございました。
お礼
ご回答ありがとうございます。 ゲーム形式が知恵のみが勝負のターン制(例えば将棋)であれば、 間違いなくjunkUser様のおっしゃられる事で完全実現できますね。 ご助言とても感謝致します。 クライアント側のコントロールがアナログ要素を含む場合(例えばテトリス対戦)には、 常に正確な動作をするBOTを作成可能にしてしまいますけど。 この場合でも常に人間では考えられない程の正確な答えを サーバに返信してくればある程度判定可能ですね。 クライアント側に全てゲーム処理を行わせ、結果だけをサーバに送って ランキング付けするような物には向いていないかもと思いますけど。 この場合でも定期的にサーバに結果を送れば、サーバ側で入力チェック を時系列の関係を見て行えばある程度判定可能に思えてきました。 ご助言のおかげで考えがかなり進展致しました。 とても参考になりました。 ありがとうございます。