Projects / JavaGuard

JavaGuard

JavaGuard is a general purpose bytecode obfuscator, designed to fit effortlessly into your regular build and testing process, providing peace of mind that your valuable Java code is more secure against decompilation and other forms of reverse engineering.

Tags
Licenses
Operating Systems
Implementation

Recent releases

  •  04 Jun 2002 12:19

    Release Notes: Previous releases had a bug in which classes that were matched by a ".obfuscate" entry in the script file were not assigned obfuscated output names when their parent package/class are matched by a ".ignore" entry. However, their contents were still obfuscated. Another bug caused methods that were defined in an interface A but used inside function calls to methods of an interface B that extended A to throw a NoSuchMethodException. JavaGuard can now obfuscate several Jar files at once, and it can now use and obfuscate files from local directories.

    •  12 May 2002 20:31

      Release Notes: This release has a minor bugfix to prevent a possible problem when classes are matched both by a ".obfuscate" and a ".ignore" entry in the script file. The manifest file parser has been rewritten. It now changes the "Main-Class" entry when the main class is obfuscated, and doesn't truncate long lines anymore. There is support for classes that were compiled by javac with the "-target 1.2" (or higher) command line option (default setting on JDK 1.4). A command line option that allows you to dump the parsed class files before they are obfuscated has been added. There are slight speed improvements when building the class tree.

      •  24 Apr 2002 10:35

        Release Notes: This release contains several bugfixes and lots of improvements, and all current users are encouraged to upgrade. It is now possible to let JavaGuard obfuscate classes even if they are matched by other exception patterns. The script file parser now supports priorities. An element that is matched by script entry will be ignored if it was matched by an earlier expression, and some script file directives were renamed for a better understanding.

        •  10 Apr 2002 19:38

          No changes have been submitted for this release.

          Recent comments

          11 Feb 2003 15:46 jjenner

          Getting errors
          Things seemed to go well when I executed the JavaGuard to obfuscate a jar file I had, but then I got this. I am sure, it's something wrong I am doing. Please help!

          JavaGuard v1.0beta4 Bytecode Obfuscator
          Building the file containers...
          Building the class tree...
          Generating the mapping table for the whole class tree...

          Unrecoverable error during obfuscation:
          duplicate entry: META-INF/MANIFEST.MF
          java.util.zip.ZipException: duplicate entry: META-INF/MANIFEST.MF
          at java.util.zip.ZipOutputStream.putNextEntry(ZipOutputStream.java:163)
          at java.util.jar.JarOutputStream.putNextEntry(JarOutputStream.java:90)
          at net.sf.javaguard.GuardDB.startObfuscate(GuardDB.java:297)
          at net.sf.javaguard.GuardDB.obfuscate(GuardDB.java:243)
          at JavaGuard.obfuscate(JavaGuard.java:322)
          at JavaGuard.start(JavaGuard.java:179)
          at JavaGuard.main(JavaGuard.java:146)

          06 Jun 2002 07:38 paolino

          Re: paradox

          > We've been using RetroGuard to
          > protect our code, but it lacked some
          > features we urgently needed so I
          > implemented them.
          >
          > RetroGuard is an open-source software
          > tool so we have to give the changed
          > sources back to the public so that
          > everyone can profit :-)


          Well, then I'm sorry.. it seems that actually the guys from RetroGuard were the ones i should have commented to.. :)
          thx for the reply, and of course no flame intended..

          cheers
          paolino

          04 Jun 2002 07:40 glurk

          Re: paradox

          > It is interesting that a tool to
          > actually reduce the liberty of the users
          > as this one is under the GPL... Maybe
          > the Author wants to improve Open Source,
          > helping to avoid reversing... :)
          >
          > cheers
          > paolino


          Sorry, I haven't seen your post earlier...

          The reason why I begun working on that is that the company I'm working for doesn't offer the sources of their products. We've been using RetroGuard to protect our code, but it lacked some features we urgently needed so I implemented them.

          RetroGuard is an open-source software tool so we have to give the changed sources back to the public so that everyone can profit :-)

          12 May 2002 17:52 paolino

          paradox
          It is interesting that a tool to actually reduce the liberty of the users as this one is under the GPL... Maybe the Author wants to improve Open Source, helping to avoid reversing... :)

          cheers
          paolino

          Screenshot

          Project Spotlight

          OpenStack4j

          A Fluent OpenStack client API for Java.

          Screenshot

          Project Spotlight

          TurnKey TWiki Appliance

          A TWiki appliance that is easy to use and lightweight.