Download Perl-Obfus
from WinXP to Win10
Mac OS
from 10.4 to current version
Any popular distro for x86 or x86_64
Unique features of Perl-Obfus
Protected code is still Perl code

Protected code is still Perl code. Not a byte-code with some loader, so it runs on any version of Perl and on any device that can run Perl code.

Keep third party modules in source form

Unlike products that either mangle or bundle 3rd party and even standard modules used by your code, this is not the case with Perl-Obfus. So other modules can be shipped in original source form and can be updated.

Perl code can also be encoded

Obfuscated code can be protected even more by encoding it, to hide code structure. No special loader is required for additional code.

Code is protected on your computer, not in cloud

Your code is protected locally on your computer. No internet connection is required for protecting your code by Perl-Obfus.

Make your code expiring

Bind your code to certain domain or server name, allow it to run until certain date or even only on Fridays. Implement your own licensing condition checks and actions if they are violated.

Watermark your code

Make different versions of your code and ship each of them to different customer. This will allow you to find out which customer distributed your code without your permission.

  • Evaluation use only
  • Expires in 3 monthes
  • Instead of mangling, ReplacementFor_ gets prepended to symbols
Single developer
  • Can be used by only 1 developer
  • Does not expire
  • All features are available.
Single developer Lite
  • Can be used by only 1 developer
  • Does not expire
  • No support for encoding.
Contact us
  • All developers can use it
  • Does not expire
  • All features are available.
Features of GUI for Perl-Obfus
Can extract module's API

Includes a tool to list symbols from external (or standard) modules used by your code. Just instruct Perl-Obfus not to modify names of those symbols, and you will be able to ship those external modules in unchanged form.

Has GUI and command line versions

Stunnix Perl-Obfus has powerfull GUI shell called Project Manager. It can generate command line scripts to build/rebuild/clean entire or part of your project. Also low-level command line interface is available.

Supports Windows, Mac and Linux

GUI and commandline versions of Perl-Obfus can be run on Windows, Mac and Linux.

Debugging mode included

Among dozens presets, there are 3 presets for debugging your code. They help preparing your code for protection by applying the protection gradually, that makes testing your code easier.

Extremely configurable

A lot of options to tightly control obfuscation and checks for licensing conditions are available - each function has a lot of options. For example, there are 5 ways to mangle symbols (names of functions and variables).

String inspector available

You can generate a list of strings found in your project that look like containing Perl code. If they really contain it, you will have to wrap those strings into calls of special functions, so symbols in those strings also become mangled.

Screenshots of Project Manager tool

Below are screenshots of Stunnix Perl-Obfus Project Manager GUI. There is a LIVE ONSITE demo of it too!

  • Project menu
  • Settings menu
  • Meta options - locations of directories, project title
  • Browsing file processing modes
  • Editing settings for one of file processing modes
  • Assigning modes to files
  • Configuring how to handle files, not registered in the project
  • Switching code mangling options
  • Configuring how code is encoded
  • Menu items for Build menu
  • Menu items for Tools menu
  • Screen letting to extract symbols from all files in certain directory
  • Extracting names of symbols from ActiveX components
  • Building command line for command line version of obfuscator
  • Menu items for Symbols menu
  • Configuring how to treat header files included by source code of the project
  • Inspecting list of strings encountered in the code
  • Editing case-insensitive list of user exceptions
  • Editing user-specified exceptions
  • Editing user-specified antiexceptions
  • Editing list of suffixes to keep in symbols
  • Editing user-specified symbol mapping
  • Viewing resultant symbol mapping
  • Viewing list of autoextracted exceptions
  • Menu items for Help menu

The obfuscation of Perl code means

Click on the small button "more info" below each item to expand details.

Replacing symbol names with non-meaningfull ones, e.g. replacing list_of_customers with zcadaa4fc81
Replacing numeric constants with expressions, e.g. replacing 232 with (0x14b6+2119-0x1c15)
Replacing characters in strings with their hex escapes, e.g. turning string "cust" into "\x63\x75\x73\x74"
Adding extra parenthesis around expressions
Replacing strings with interpolated variables with concatenation of the appropriate components
Removing or obfuscation of comments
Removing spaces and tabs in the lines of code
Joining all lines in your code
Encoding the result of previous stages

The features summary of Perl-Obfus

Click on the small button "more info" below each item to expand details.

Perl Obfuscator is cross-platform product, it can be easily installed and used on Windows, Mac OS X, Linux, Solaris or any other Unix OS.
By default encoding of Perl code is applied to the result of obfuscation performed by Perl Obfuscator
Perl Obfuscator has support for Perl expiration, binding to server and user-implemented licensing checks with standard or user-specified actions (such as showing alerts)
Perl Obfuscator includes Obfuscation Project Manager - an advanced intuitive cross-platform (Windows, MacOS X, Linux and Unix) graphical user interface for protecting any size project created with Perl with mixed types of code , complete with with IDE-like functionality (supporting Build, Rebuild Changed, Clean)
Perl Obfuscator has special debugging mode and unique tools to generate a list of symbols that can't be changed, saving development time.
Perl Obfuscator supports several advanced ways to generate obfuscated names including using shortest possible name.
Full support for projects consisting of several Perl files and use of eval
Many options to tightly control the obfuscation and encoding of Perl Obfuscator
Ability to watermark Perl and to make the study of changes between versions of the same file more difficult
Used by a lot of companies

Please introduce your self

Why we are asking this?