DashO is a Java application obfuscator, optimizer, and packager. It performs a dependency analysis on the application, removing unused methods and fields. Classes and members can be renamed using the patented Overload-induction renaming algorithm. Byte code optimization, control flow obfuscation, and string encryption can also be selectively applied. Special features include analytics for Java/Android/RIM/J2ME including exception reporting, Android obfuscation and tamper protection, and JAR watermarking.
|Tags||Security Software Development Build Tools Software Distribution Tools Android|
|Operating Systems||OS Independent|
Release Notes: A problem where the --nosplash command line option caused a NullPointerException was fixed. This also affected the Eclipse plug-in. Dates sent in Runtime Intelligence messages are now normalized to the Gregorian calendar. DashO registration no longer fails when used with a proxy.
Release Notes: String encryption was enhanced. Up to ten string decrypter methods can be added to the application. The level of obfuscation is adjustable from 1 (simple/fast) to 10 (complex/slow). TamperCheck is now supported on Android applications. Installation and registration was improved on Mac OS X and Linux. Bugs were fixed.
Release Notes: The New Project Wizard has be updated to work with version 7 and up of the Android SDK. The wizard now requires this version or higher of the SDK. New system properties were added for controlling Runtime Intellegence features- ris.support.offline and ris.full.data. The Removal report displays the actual entry point used by the entry point rules. Bugs were fixed.
Release Notes: New features have been added to instrumentation to support the capture and reporting of exceptions at the global and method level. At the method level, caught, uncaught, and thrown exceptions may be intercepted and information sent to the Runtime Intelligence portal for reporting. Global and thread uncaught exception handlers can be installed that allow the application user to enter additional information before sending the exception information.
Release Notes: Tamper checking and response was implemented to check at runtime that the classes have been signed and verified with a given certificate. The response can be immediate or separated from the check. Responses include sending Runtime Intelligence messages, exiting the application, hanging the application thread, or throwing errors or exceptions. Responses can be configured to use a probability of occurrence to provide unpredictable behavior to attackers.