今日は、Java に関するいくつかの逆コンパイル ツールを紹介します。逆コンパイルというと、非常に高度な専門用語のように聞こえます。逆コンパイルは、ターゲットの実行可能プログラムを逆に分析して元のコードを取得するプロセスです。特に、仮想マシン上で動作する.NETやJavaなどのプログラミング言語は、逆コンパイルしてソースコードを取得するのが簡単です。もちろん、プログラムを難読化して暗号化する商用ソフトウェアもあり、ツールを使用して逆コンパイルすることが困難になっています。
1. Java逆コンパイルプラグイン-Jadclipse
JadClipse は Jad の Eclipse プラグインで、非常に実用的で便利な Java 逆コンパイル プラグインです。ダウンロードしたプラグイン パッケージを Eclipse の plugins ディレクトリにコピーし、[ウィンドウ] -> [設定] -> で変更するだけです。 Java -> JadClipse 逆コンパイラへのパス(C:/pin/jadnt158/jad.exe など)、最終的に Windows -> Perference -> General -> Editors -> File関連付けでは、「*.class」のデフォルトの関連付けられたエディタを「JadClipse Class File Viewer」に変更するだけです。
公式ウェブサイト: http://sourceforge.net/projects/jadclipse/
2. Java逆コンパイルツールjad
jad は非常に広く使用されている Java 逆コンパイル ツールです。上記の Jadclipse は、jad に基づく逆コンパイル プラグインです。JAD ファイルには、アプリケーションを開発した会社、アプリケーション名、サイズなどの MIDlet スイートのヘッダー情報が含まれています。
公式ウェブサイト:http://varanekas.com/jad/
3. Java逆コンパイラJD-GUI
JD-GUI は、Pavel Kouznetsov によって開発され、C++ で開発された Java 逆コンパイル ツールです。Windows、Linux、Apple Mac OS の 3 つのプラットフォームをサポートしています。また、Eclipse プラットフォームでプラグイン JD-Eclipse を提供します。 JD-GUIはインストールの必要がなく、クリックするだけでjarファイルやクラスファイルを逆コンパイルできます。
公式ウェブサイト:http://jd.benow.ca/
4. Java デコンパイラ jdec
jdec は Java デコンパイラです。 .class ファイルに含まれるバイトコードを Java ソース コードに復元でき、逆コンパイルされた結果は元の Java ファイルとほぼ同じになります。また、swing を使用して開発されたユーザー インターフェイスも付属しています。
公式ウェブサイト: http://jdec.sourceforge.net/
5.uuDeJava
uuDeJava は、Java クラス ファイルの逆コンパイル ツールです。逆コンパイルされたJavaソースプログラムはClassと同じディレクトリに出力されます。内部的にはjad.exeを使用します。クラス ファイルを逆コンパイルする場合、(関連付け後) クラス ファイルを直接クリックするか、ショートカットを選択してファイルまたはディレクトリを uuDeJava に送信できます。ファイルまたはディレクトリを uuDeJava のメイン ウィンドウにドラッグすることもできます。
公式ウェブサイト: http://www.uuware.com/uudejava_cn.htm
6. JavaリバースエンジニアリングソフトウェアMinjava
Minjava は、一部の既存の Java ソフトウェアのアーキテクチャと動作を理解するのに役立つ Java リバース エンジニアリング ソフトウェアです。
公式サイト:https://code.google.com/p/minjava/
7. Java デコンパイラ
この逆コンパイラは「Java Decompiler」と呼ばれ、Pavel Kouznetsov によって開発されました。最新バージョンは C++ で開発されており、Windows、Linux、Apple Mac OS 用の実行可能プログラムとして正式にダウンロードできます。
公式ウェブサイト:http://jd.benow.ca/