デスクトップ Java アプリケーションを公開したいのですが、リバース エンジニアリングやソース コードの盗用からアプリケーションを保護する方法がわかりません。
アプリケーションをexeファイルに変換することはできますか? もしそうなら、それはそれを保護するのに十分ではないでしょうか?
デスクトップ Java アプリケーションを公開したいのですが、リバース エンジニアリングやソース コードの盗用からアプリケーションを保護する方法がわかりません。
アプリケーションをexeファイルに変換することはできますか? もしそうなら、それはそれを保護するのに十分ではないでしょうか?
誰かがバイナリからソースをリバース エンジニアリングする価値があるなら、彼らはそうするでしょう。少し難しくすることはできるかもしれませんが、決して不可能ではありません。
ProGuardなどの Java 難読化ツールを使用できます。
ProGuard は、無料の Java クラス ファイル縮小、最適化、難読化、および事前検証です。未使用のクラス、フィールド、メソッド、および属性を検出して削除します。バイトコードを最適化し、未使用の命令を削除します。意味のない短い名前を使用して、残りのクラス、フィールド、およびメソッドの名前を変更します。最後に、Java 6 または Java Micro Edition 用に処理されたコードを事前検証します。
Java 実行可能ファイルとネイティブ実行可能ファイルはどちらも、(オプションの注釈などを含む) 単なるマシン コードの集まりです。したがって、リバース エンジニアリングの容易さに関しては本質的に違いはありません。
javac でコンパイルしている場合は、-g:none
フラグを使用して、すべてのデバッグ情報が実行可能ファイルにコンパイルされないようにすることができます。