Dotfuscator

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

Dotfuscator is a post-development recompilation system for .NET applications developed by PreEmptive Solutions. It analyzes applications and supposedly makes them smaller, faster and harder to reverse-engineer. The obfuscation techniques used by Dotfuscator include renaming (replacing meaningful identifiers with short meaningless names), "overload induction" (renaming many methods to the same name, relying on overload resolution to choose the right meaning[1]); changing control flow, and encryption of string literals. Dotfuscator also provides pruning, linking, and watermarking features.

Dotfuscator's method of "overload induction" was patented[2] and is also used in PreEmptive's Java-language obfuscator, DashO.[3]

As with other obfuscators, Dotfuscator makes decompilation difficult, but not impossible.

History

Dotfuscator was developed and released in 2003 by PreEmptive Solutions in response to Microsoft's need[citation needed] for obfuscation of .NET framework assemblies.

Since 2003, the Community Edition has been included with Microsoft Visual Studio.[4]

In 2012, the Community Edition was expanded to offer exception analytics.[5] For the first time, a repository and rules engine that aggregates and analyzes incoming exception alerts was included with Team Foundation Server 2012.

References

  1. Overload-Induction Method Naming, MSDN
  2. US Patent 6102966: "Method for renaming identifiers of a computer program". Paul M. Tyma, PreEmptive Solutions, Inc. Filed March 20, 1998. Issued August 15, 2000. Expired October 7, 2008.
  3. "DashO Java Obfuscator". Reviewed by Tapasya Patki, University of Arizona. September 10, 2008.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.

External links