Smokescreen Introduction

Products page
Revision history
User Guide
Installation Guide
Obfuscation notes
Directives file
Incremental obfuscation
Build tool integration
License and Download
Purchase
Faqs/Known issues

Smokescreen is a Java obfuscator. Aside from being able to change symbolic names, it can also modify the bytecode instructions in methods thereby obfuscating control flow. This makes the resulting obfuscated classes much more difficult to decompile.
Smokescreen works on class files in directories as well as zip or jar archives. It allows for selective obfuscation of the symbolic names depending on the access level of the class, method or field. Removal of unused methods and fields can also be done by Smokescreen. Smokescreen also performs control flow obfuscation by modifying the bytecode instructions in the class methods. The program features an easy to use graphic user interface as well as a command line option.

THE CURRENT RELEASE IS REV 3.61

Main features

  • Can be launched with or without a GUI.
  • Performs name obfuscation for classes, methods and fields.
  • Allows name exclusions for specified classes, methods and fields.
  • Removal of unused methods, fields and constant pool entries.
  • Obfuscation of flow control.
  • String encryption.
  • Can be integrated into a build process.
  • Allows incremental obfuscation.




Smokescreen is written entirely in Java, and can be used on platforms that have the JVM installed.
Use the email link on the left to send questions or feedback. If you are reporting unexpected or unusual behaviour then please include a copy of the log file which is generated by Smokescreen.