flash的加密,只要adobe不提供官方的加密工具,就永远是一个无止尽的话题,各个加密软件和破解软件会无休止的升级、升级。这个领域太混乱了,百家争鸣!这里就来细细看看:
目前比较流行的加密软件有:swfEncrypt, secureSWF, tokaos.这三家的广告做得很到位——在google里搜索swf encrypt前面广告就是这三家,另外就是Eramsoft Flash Secure Optimizer, irrFuscator,再加上DoSWF。这里对各个加密软件做一个对比:
swfEncrypt:
老牌的加密软件。目前版本6.0。试用了下,然后用avs6打开一看:
竟然没多大变化?!类、包、方法名、方法实现该怎么样还是怎么样。有点怀疑,仔细检查后终于找到一些处理的痕迹了:有一些方法名显示为乱码,仅仅有一些而已。真个代码几乎是裸露。不过如果你的swf是as2的,我想swfEncrypt是一个理想的软件。
secureSWF:
这个加密软件还很不错,加密后看到的效果如下:
作者很高明,他把类名、包名以及方法属性名称都改为as3的关键字了。这样的话,会让破解者看得很头疼。能起到一定的保护作用。不过有个缺点就是,库资源没有保护起来。如果破解者需要只是你的ui,那你对代码再怎么加密都于事无补。另外一点,secureSWF的能设置的参数实在太多了,用户根本不知道怎么设置才好。
tokaos: 直接跳过,因为该软件不是正对编译好的swf进行操作,而是对fla、 mxml进行加密。
Eramsoft Flash Secure Optimizer:
先看效果:
效果非常好,在asv6能看到结构,但是很多方法会出现“Error while decompiling!”。而且该软件还有优化功能——我尝试去找处理痕迹,结果没发现什么。优化是一个难度相当相当的操作。同样一个缺点就是不能加密库资源。还有一个致命的缺点,混淆操作时会将我的一些特殊的字段也给混淆了。
irrFuscator:直接忽略。混淆不到位、而且会产生很多问题。
DoSWF:
加密后用avs6打开,直接卡死。只能换硕思:
很重要的一点,资源也被加密了。代码也被混淆了,点击类尝试去看类里面的代码,硕思直接卡死。降低加密级别后能看到混淆的效果:
缺点就是,对as2的swf文件支持不足,目前只支持as2swf的加密,不支持混淆等操作。
终于枚举完毕。总的而言,各个加密软件都有自己的特点。总的而言,在as3的保护上,选择DoSWF或Eramsoft Flash Secure Optimizer;而在as2的保护上,swfEncrypt还是霸主地位——只不过还是不能保护库资源。
精辟中肯的评析!刚好也是想做的评测,非常实在。
引用: 加密软件对比 | ヤ☆蚂蚁的幸福☆ヤ
缺点就是,对as2的swf文件支持不足,目前只支持as2swf的加密,不支持混淆等操作
修改一下吧。
用demo版测试是测不出效果的….
你付费买一套swfEncrypt用一下之后就知道和demo版的差别有多大了….
使用do_swf的试用版,测试一个loader程序,发现ExternalInterface模块与JS的交互好似挂掉了?是不是要在某个地方进行加密设置?
准备购买一个,不过听说asv2010可以破掉doswf,可有此事?
另外希望混淆再强大一点,支持自定义规则最好了(比如输入 0,o 则只根据这两个字符拼凑包、变量名,那么包和变量名就都变成 00oo0o0 .. 之类的)
毕竟混淆是最后的防线了,不可逆的毁容。
@匿名
混淆成啥字符都不能还原,所以没必要自定义了。很多用户希望的是一键式加密操作。