私はJavaでアプリケーションを作成し、.exe
JARファイルは簡単に抽出および逆コンパイルできることがわかっているため、抽出を防ぐためにアプリケーションjarファイルを使用するソフトウェアに変換しました。
.jarファイルをに変換し.exe
てもクライアントに配布するのに十分安全かどうか教えてください。
私はJavaでアプリケーションを作成し、.exe
JARファイルは簡単に抽出および逆コンパイルできることがわかっているため、抽出を防ぐためにアプリケーションjarファイルを使用するソフトウェアに変換しました。
.jarファイルをに変換し.exe
てもクライアントに配布するのに十分安全かどうか教えてください。
100%安全なものはありません。jar を exe に変換すると、非常に重要な Java 機能であるクロスプラットフォームが無効になります。Exe ファイルはもはやクロスプラットフォームではありません。これは、特定のプラットフォーム (MS Windows など) 用に作成されています。
コードのリバース エンジニアリングを防止したい場合は、難読化を使用します。これは、おそらく逆コンパイルできるようにバイト コードを変更するプロセスですが、逆コンパイル後に理解するのは非常に困難です。セキュリティを強化したい場合は、実行時にコードの一部をダウンロードして実行できます。ダウンロードはSSLで行うことができるので、セキュリティ面でも安心です。カスタム クラス ローダーを作成し、パスワードで保護された zip ファイルに対して実行することもできます。
したがって、コードを保護する方法はたくさんありますが、exe ファイルを作成する方法は最も脆弱です。
.jarファイルを.exeに変換しても、クライアントに配布するのに十分安全かどうか教えてもらえますか?
いいえ、そうではありません。難読化はそれを少し難しくすることができます。
2 種類の EXE ジェネレーターがあります。
どちらもその純粋な JAR ファイルを逆コンパイルするのは難しいですが、2 番目のものはより安全です。
私の知る限り、ネイティブ コンパイラはすべて商用であるため、無料のコンバータが必要な場合は、最初のオプションしかありません。その場合、最初に (非フロー) 難読化ツール (yGuard など) を使用してから、難読化された JAR ファイルを EXE に変換することをお勧めします。