Is there a way to write java applications so they are not decompilable with programs like DJ Java Decompiler?
Printable View
Is there a way to write java applications so they are not decompilable with programs like DJ Java Decompiler?
mad_fox9007,
There is no way to write Java code that isn't easy to compile. When you call javac.exe(or hit compile in your IDE), a .class file is created which contains byte code. This byte code is universal for Java, which is the reason it's so popular. Every computer with the same version of Java installed runs the code, the developer doesn't have to worry about porting code.
What you are looking for is an obfuscator. Google is your friend here. Obsfucators and decompilers is like an arms race, there are tons of options, commercial and open source.
Never heard of decompiling java. Have you done this before or is this something you've heard of? What files are needed to do so?
warriorfan808,
Java is very easy to decompile. There are numerous programs to do it, DJ Java Decompiler, Mocha,Cavaj, to name a few. Just do a quick google for "Java Decompiler" and you get 1.7 million hits. The only thing you need is the decompiler and the .class file that you want to view. My personal favorite is Jad.
Thanks for the info. I can honestly say that I have never heard of such a thing, but i googled it and there it was. Can any one recomen a good one that's free?
Sorry about that wyred, I must have misunderstood your first reply.
<i>There is no way to write Java code that isn't easy to compile. </i>
probably meant decompile.
If the security of your program depends on not having the source (or not being able to get it somehow) then there's something seriously wrong with your program..
Obfuscators and the like.. They're just anoying and do NOT stop anyone from looking at the source if they really want to..
You must spread your AntiPoints around before giving it to SirDice again.
Can't stress that enough !!Quote:
If the security of your program depends on not having the source (or not being able to get it somehow) then there's something seriously wrong with your program..
You can always decompile it. The question is weather decompiling will lead to usefull source. Good obfuscator (the one that obfuscates system level classes) along with your applet or application, will make it dificult to understad source code. It will remove symbolic information, like variable and function names, including the system class names and methods.