JJams_King: 擾亂器就是把 bytecode 中的類名,方法名,變量名等變成無意義的符號。 例如,以下源程序: package temp; public class HelloWorld { String helloWorld = "Hello World"; String byeWorld = "Bye World"; public static void main(String[] args) { new HelloWorld(true); new HelloWorld(false); } HelloWorld(boolean isHappy) { if (isHappy) { System.out.PRintln(helloWorld); } else { System.out.println(byeWorld); } } } 加擾后,再反編譯出來是: package a; import java.io.PrintStream; public class a { String a; String b; a(boolean flag) { a = "Hello World"; b = "Bye World"; if (flag) System.out.println(a); else System.out.println(b); } public static void main(String astring[]) { new a(true); new a(false); } }
而更高級的擾亂器,還能加密字符常量和擾亂程序流。加擾后,再反編譯后變成這樣: package a; import java.io.PrintStream; public class a { String a; String b; public static boolean c; a(boolean flag) { a = a("q