Home About Forum Imprint Terms and Conditions Contact
Ambiera logo irrFuscator logo

Can I use irrFuscator with Flash as well?

irrFuscator is a tool originally created for Flex developers. But it can also be used with the flash development environment where you have a .fla file and several .as files. irrFuscator will only obfuscate the .as files then of course. Simply use the obfuscation exceptions (ignore symbols) to specify the symbols which are defined in your .fla file.

How does irrFuscator work?

irrFuscator reads in a directory of .as and .mxml files, processes them and puts them out into a target directory. Simply recompile the directory with the obfuscated files and your .swf files are a lot safer.
irrFuscator parses .mxml and .as files and replaces symbols found in them with new, randomly generated texts. It is not a compiler but not a simple string replacement tool either, rather a mixture of both. This makes it possible that it can be used with actionscript code which won't compile at all like needed in some environments where additional code transformations need to be applied after obfuscation and before compilation.

Can I use irrFuscator together with a preprocessor?

Yes, you can make irrFuscator run even before preprocessing the code because irrFuscator doesn't require the code it obfuscates to be compilable. See How does irrFuscator work?.

I obfuscated some code and it doesn't compile any more, what can I do?

This is usually caused by a symbol which wasn't obfuscated correctly. Take a look at the place in the source which caused the problem and put the errornous symbol name into the ignore list, this usually helps.

I obfuscated some code and it doesn't run correctly any more, what can I do?

Actionscript 3 still is a dynamic language altough it has a lot of static typed features now. When a dynamic symbol was obfuscated, it may cause the program not to work correctly anymore. The usual way to make the program work again is putting all dynamic symbols into the ignore list.
Example: The URLVariables object or the attributes in XMLNodes are dynamic. When accessing an XML attribute in this way for example:

var node:XMLNode = // some node..;
node.attributes.FooBar
then 'FooBar' is dynamic and should not be obfuscated. To let irrFuscator know that it should not obfuscate any symbol with the name 'FooBar', put FooBar into the sybmol ignore list.