0

ゲームクライアントの逆コンパイルを防ぎたい。クライアント(アプレットを介してクライアントをロードするブラウジングユーザー)がファイルを取得して逆コンパイルできないように、.htaccessまたはその他の方法で.jarファイルを保護する方法はありますか?

私はいつもこれに対する解決策があるかどうか疑問に思いました、ありますか?おそらく暗号化コードを作成し、サーバーがクライアントjarを取得しようとすると、GETを介して暗号化コードを送信します。暗号化コードが一致する場合は、そのページからクライアントをロードします。解決策 ?

ありがとう!

4

3 に答える 3

1

ブラウザがアプレットを実行するには、アプレットコードを含むjarファイルをダウンロードする必要があります。ダウンロードすると、逆コンパイルが可能になります。これから保護するために、バイトコードをわかりにくくするか、アプレットをまったく使用せずに、コードがサーバー側にあり、クライアントにHTMLコードとJavaScriptコードのみが表示される従来のWebアプリケーションを使用することができます。

于 2013-03-24T12:42:26.753 に答える
0

いいえ。ブラウザによるファイルの取得を停止することはできますが、実行できなくなります。

おそらく暗号化コードを作成し、サーバーがクライアントjarを取得しようとすると、GETを介して暗号化コードを送信します。暗号化コードが一致する場合は、そのページからクライアントをロードします。

ユーザーはコードを確認してもファイルを取得できます。

于 2013-03-24T12:40:24.130 に答える
0

ユーザーが暗号化されていないバイトコードを入手するのを防ぐためにできることは何もありません。

なし。

ユーザーのマシンは、アプレットを実行するために、暗号化されていない形式のアプレットのバイトコードを必要とします。ユーザー(十分な知識を持っている)は自分のマシンの動作を完全に制御できるため、制御は、復号化されたある時点でバイトコードを傍受できるようになると想定できます。

また、ユーザーがアプレットのバイトコードを傍受できる場合は、ユーザーがそれらを変更して、コードに入れた巧妙なものをすべて無効にすることができます。これには、バイトコードの変更を変更して、バイトコードの変更を検出するために使用するメジャーを無効にすることも含まれます。

「ブラウザで使用する必要があるように作成してから、URLからアクセスしているかどうかを確認してください」それでうまくいくでしょうか。

いいえ。ユーザーはアプレットを変更して、そのチェックを削除できます。

「phpにハッシュを含むセッション変数を作成させ、そのハッシュが存在し、ハッシュアルゴリズムと一致するかどうかを確認することもできます」

いいえ。ユーザーはアプレットを変更して、そのチェックを削除することもできます。

わかりません、解決策があるはずですか?

残念ながら、サーバー側で保護が必要なすべてのものを実行する以外に、実用的な解決策はありません。

ちなみに、この問題はJavaに限ったことではありません。技術的な知識と動機を持っている人は、Javascriptや、ユーザーにインストールしてもらうネイティブコードプラグイン(彼が十分に愚かである場合)の改ざん防止対策を打ち負かすことができます。

于 2013-03-24T12:53:03.763 に答える