Presents your JAVA E-NEWSLETTER for April 3, 2003 <-------------------------------------------> PROTECT YOUR CODE WITH AN OBFUSCATOR One advantage of Java's public class file format is that you can retrieve lost source code without too much effort. A major disadvantage is that others can generate that same source code for your class files. In your internal network, this is not much of an issue, but if you distribute Java libraries to third parties such as customers or vendors, then you may want to take steps to protect your investment. One measure you can take to protect your code is to use an obfuscator, which is a program that reads your Java class files and modifies them so that decompiling them doesn't produce valid or even beneficial source code. You can find obfuscators in both the open source and commercial worlds. Current generation commercial obfuscators integrate nicely into standard build processes and are not as intrusive as some of their predecessors. Some obfuscators obfuscate your class files by creating invalid bytecode, which is the Java Virtual Machine's native language. While your code will be able to run under specific implementations of the Java Virtual Machine, you might have to make changes when newer versions are released. Also, before you invest time or money, ensure that the obfuscator you're considering actually protects you against the most popular decompilers, such as JAD. Taking steps to protect your code can be a smart move, but the path to follow is not always well laid out. If you choose obfuscation as part of your protection, do plenty of homework before committing. ----------------------------------------