Flex/Air混淆

Sha*_*awn 21 apache-flex air obfuscation actionscript-3

我在Flex中写了(大部分)应用程序,我担心保护源代码.我启动了一个Trillix swf反编译器的演示,并打开了安装到我的Program Files目录的swf文件.我看到我写的所有动作包都在那里.即使有大量代码,我也不太关心软件包,因为如果没有mxml文件,它似乎仍然无法使用.我认为它们会被转换为动作脚本,或者至少我希望如此.但是,我仍然想探讨混淆.

有没有人对Flash/Actionscript 3/Flex混淆器有任何经验?你能推荐一款好产品吗?

Bor*_*ard 20

maclema建议的过程不会真正阻止任何攻击者获取源 - "包装器应用程序"将需要未加密,因此攻击者将能够发现您使用AES(或任何其他算法)并且他将获得以类似的方式解密密钥(因为它需要在某处的明文中).一旦他有了这个,他将能够轻松解密您的SWF文件.

唯一可靠的解决方案(好吧......)是某种混淆器 - 我们使用最新版本适用于Flex的Amayeta - 请参阅http://www.amayeta.com/software/swfencrypt/.


Mat*_*ean 13

这就是我要做的.

  • 将您的应用程序编译为SWF文件.然后使用AES加密SWF.

  • 创建一个"包装器"应用程序,使用URLLoader将加密的SWF加载到ByteArray中

  • 使用as3crypto库在运行时解密swf.

  • 解密后,使用Loader.loadBytes将解密的swf加载到包装器应用程序中.

这将使得获取代码变得更加困难.并非不可能,但更难.

对于AIR应用程序,您可以在将应用程序交付给最终用户时对SWF进行加密.然后,您可以提供包含用于解密SWF的密钥的注册密钥.

此外,这是一个指向AS3混淆器的链接.我不确定它的效果如何. http://www.ambiera.com/irrfuscator/index.html