質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

1175閲覧

JavaScriptのモジュールとチート対策について

lily_7431

総合スコア1

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

1クリップ

投稿2020/05/20 16:07

JavaScriptのモジュールとチート対策について

初めてwebpackを用いて、WEBアプリ(ゲーム)開発をしているものです。
下記サイトにあるように、モジュール化を行えばグローバル汚染が回避できるようです。
そこで、この技術を用いれば(html),JavaScript製のゲームでコンソールから変数を書き換える等のチートはなされないということで大丈夫ですか?

https://developer.mozilla.org/ja/docs/Web/JavaScript/Guide/Modules

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2020/05/20 22:58

ブラウザのデベロッパツールから幾らでもいじれます。
lily_7431

2020/05/21 16:17

デベロッパツールのコンソールから変数等を参照する方法はありますか?
lily_7431

2020/05/21 16:29

すみません、理解できました。勉強不足でした。
guest

回答1

0

ベストアンサー

チートはなされないということで大丈夫ですか?

セーブデータやHTTP通信で受信したデータなど、ゲームデータを解析する手段はいくらでもあります。
そうしたデータの暗号化もしないと、モジュール化だけでは大丈夫とは言えません。

投稿2020/05/20 16:15

AkitoshiManabe

総合スコア5432

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

lily_7431

2020/05/20 16:18

少なくとも、コンソールからのチートについては対策できてますか?
AkitoshiManabe

2020/05/20 20:47

出来ていません。ブラウザの場合、window.console を意図的に汚染するくらいしか、ユーザの介入を封じる手段はないです。
lily_7431

2020/05/21 05:50

実際どのようにコンソールからチートが行われるか教えて頂けませんか?
AkitoshiManabe

2020/05/21 07:42 編集

1. 情報収集(準備) 1.1. 画面に表示される内容(HTML/画像) 1.2. ゲームロジックの把握(JavaScript)とゲームデータの把握(XHR/キャッシュ/サイトデータ) 2. 改変試行(チートの実際) 2.1. データ改変の試行 2.2. JavaScriptオブジェクトの実装変更 てな具合じゃないでしょうか。JavaScript はプロトタイプベースである以上、改変が容易です(インスタンスから、[[Prototype]]を変更して実装を書き換えることも可能)。 なので、上記 1. の段階で諦めてもらえるような対応が必要。 ※モジュール化だけでは不十分であり、コードの難読化だけでなくデータの暗号化を絡める必要があります。一度、掌握されてしまうと、ブックマークレットみたいな簡単な方法でチートを実現されてしまうため、掌握しづらいWebSocket を用いてサーバーデータを活用するなどの対策も考えられます。
lily_7431

2020/05/21 16:31

回答ありがとうございました。自分の勉強不足でした。sourcesをそのまま改変できる事を見落としていました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問