Resources

Documentation

ClassEncrypt is a program that can encrypt a developer's class files to prevent malicious users from stealing the source code. The program uses a modular design to allow the developer to create different encryption modules for the program to use. This software does not prevent the developer's software from being pirated.

The software comes with a default module that encrypts and decrypts using the Blowfish algorithm that was created by Bruce Schneier. This software is meant to be a barrier of protection for Java developers who want to market their software. It is not at all foolproof since the software enables the encrypted class files to still run using the regular JVM. It does, however, slow down any reverse engineering that someone may try on the developer's software.

NOTE: This program is NOT GUARANTEED to be foolproof. A persistent person may find a way around the encryption. The goal is to make it sufficiently hard so the malicious user gives up in trying to reverse engineer the developer's software.
The product features include:

  • An easy to use interface
  • Dynamic module loading
  • Dynamic code creation
  • The ability to use other encryption schemes
  • Software is deployed to an executable jar file
  • Protection from decompilation

The latest version takes advantage of the Retroguard bytecode obfuscator to obfuscate the class files that are not able to be encrypted (any class that has to be valid for the JVM to load the software). These classes are precompiled and already obfuscated so the end-user (the developer) will not notice the difference. The only time the developer may notice the difference is if the ClassEncrypt program is built from source instead of using the distributed class files.

Distributed Computing

SourceForge Logo