jadなどのプログラムを使用してソースコードを簡単に取得できる場合に、Javaプログラムをどのようにクローズすることができますか?どのようにしてJavaプログラムをクローズソースにすることができますか?
たとえば、jarファイルを解凍してクラスファイルを取得し、これらを逆コンパイル、読み取り、編集、コンパイルすることができます。 どうですか?
独自のライセンスでコードを非表示にしないためです。
jadなどのプログラムを使用してソースコードを簡単に取得できる場合に、Javaプログラムをどのようにクローズすることができますか?どのようにしてJavaプログラムをクローズソースにすることができますか?
たとえば、jarファイルを解凍してクラスファイルを取得し、これらを逆コンパイル、読み取り、編集、コンパイルすることができます。 どうですか?
独自のライセンスでコードを非表示にしないためです。
公開する前にコードを難読化することをお勧めします。
基本的な考え方は、すべての「読み取り可能な」名前(「fetchTaxRate」など)を可能な限り短い名前(たとえば「a」)で置き換えることです。あなたのソースに指示がある場合 "taxManager.fetchTaxRate(customerClass、countryID);"それは "aB.e(zY、Q)"に終わるかもしれません。バイナリを逆コンパイルしようとする人は、前者ではなく後者を見ることになります。難読化の
良い記事は、記事はまた、難読化ツールのリストを持っていると私は私の満足度(ProGuardの)に個人的に使用するものがリストの中にあるhttps://www.excelsior-usa.com/articles/java-obfuscators.html
です。
私が提案することができる最も良いことは、Web開発者が行うことです。これはアルゴリズムの読み込みを不可能にすることです。コードからすべてのスペースやタブを削除してから(もちろんアルゴリズムで)、var名を混乱させるようにすることができます。
スペースを削除しても、コンパイルされていないJavaソースコードに影響はありません。 – khelwood
しかし、それを読むことができないようにするためにあなたができることはまだあります。 –
しかし、これはちょうど推測です。私はまだデコンパイルされたjavaを読んでいない。 –
"クローズドソース"とは、ソースコードが公開されていないことを意味し、コードの表現が得られないことを意味しません。
難読化されたコードは、逆コンパイルすると非常に読みにくくなることがありますが、時間、ツール、および決定によって、すべてのコードの秘密が失われます。
私はクローズドソースライセンスについて知っていますが、それらを使用してコードをニードグライドします –
クローズソースとは、ソースコードを一般に利用できないということです。誰でもあなたのソースの任意のバージョンを保持することは不可能ではありません。 – khelwood