What is PreEmptive Solutions patented Overload InductionTM ?
As expected of any good obfuscator, Dotfuscator .NET Obfuscator renames all program identifiers to small, meaningless names. With our DashO Java Obfuscator, we experimented with creating clever renames (unprintables, etc.) but decided to rename using small, alphabetic letters. Instead of clever names, we invented and patented an algorithm called “overload induction” that has been in use in DashO since its inception. Overload induction works by identifying colliding sets of methods across inheritance hierarchies and renaming such sets according to some enumeration (e.g. the alphabet). Because separate colliding sets are identified and the enumeration starts at the beginning each time, method overloading is induced on a grand scale. The OI algorithm determines all opportunities for name reuse and takes advantage of them. Many of our customers have reported a full 33% of ALL methods were renamed to a single character (such as “a”). Typically, 10% more are renamed to “b”, etc. This effect