リバース エンジニアリングできない形式で Java プログラムをデプロイする方法はありますか?
アプリケーションを実行可能な JAR ファイルに変換する方法は知っていますが、コードをリバース エンジニアリングできないようにしたい、または少なくとも簡単にできないようにしたいと考えています。
ソースコードの難読化はカウントされません...コードの理解が難しくなりますが、それを隠すわけではありません。
関連する質問は、逆コンパイルを防ぐためにコンパイル済みの Java クラスをロックする方法です。
プログラムを完成させた後も元のソースにアクセスできるので、アプリケーションの維持は問題になりません。アプリケーションが配布されている場合、ユーザーがアプリケーションを逆コンパイルできないようにしたくありません。難読化はこれを実現しません。ユーザーはコードを逆コンパイルすることができ、アクション フローに従うのは困難ですが、コードを見ることはでき、コードから情報を取り出すことができる可能性があります。
私が懸念しているのは、コードにリモート アクセスに関する情報があるかどうかです。ユーザーが提供するユーザー ID とパスワードを使用してアプリケーションが接続するホストがあります。そのアドレスがソースコード内にある場合、ホストのアドレスをユーザーから隠す方法はありますか?