If I encrypt. Class files and use a custom ClassLoader to load and decrypt on the go, this is not decompilation?
The problem is not Java-bytes code decompilation is almost as old as language itself. Despite a series of terror, the instruments available in the market, novice Java programmers to continue to think of new and clever ways to protect intellectual property. In this Java Q & A installment, I will dispel some myths about the idea frequently rehashed in discussion forums.
The last facility in Java. Java class files can be restored to the original sources closely resemble much of the design goals and compromises with the Java code bytes. Among other Java bytes code designed for a joint, a platform-independent, network mobility and facilitate the analysis of the bytes code interpreters and JIT (just-in-time) / HotSpot dynamic compilers. Namely, they are compiled. Family Files express intention of the programmer, much easier to analyze than the source code.
When several persons have to be done, not against him but of a difficult if it is not at all I do. For, as you the steps of the writing of the Post-it can be complicated. Kind of data bytes to the code harder to read with or decompiled, or more difficult to decompile it into Java code (or). Technology, making the method name overloading works well in the past, and change the flow control is not possible to create a governance structure to represent the Java syntax works well with the latter. More successful using a mixture of commercial obfuscators and the arts.
Unfortunately, such approaches actually change the code, the JVM is running, and many users are afraid (rightly) that the conversion of new bugs in their applications. In addition, the method and field renaming a device called an end. Change the actual class and package names that violate a number of other Java APIS (JNDI (Java Name and Directory soft), URL providers, etc.). In addition to a change of name, the link between the bytes of code offsets and line number of the changes can recover the original Stack traces an exception was made difficult.
So who is to obscure the original Java source code. But basically this is causing a similar set of problems.
Encrypt, not hard to understand?
Perhaps we have done for you, "Well, if I encrypt all the classes for manipulating bytecode after compilation and decrypt on the fly within the JVM (which can be accomplished with a custom ClassLoader) when the JVM is running bytecode my original, however, is not to decompile or reverse engineer, right? "
You evil, and you'd think of you this thing to be the first to act and works. And, therefore, encryption does not belong to the force of reason.
No comments:
Post a Comment