怎么防止SWF文件被反编译?(二)

如何防止SWF文件被反编译?(二)

 
[1b]非显示字符和混淆器[/1b]
 
除了阻碍反编译器的技术之外,我们还可以使反编译的结果不容易读。你可以浏览关于混淆器的网站。
基本上,它是对变量和函数的名字进行重命名。
function -3(-4){trace(-4);}function -1(0,-2){if(0}
肯定的是,偷窃者不能仅仅是拷贝、粘贴就能使用这些代码。编译器不允许你对一个函数进行这样的命名。
混淆器的局限是改变函数的名字可能给下面的脚本代码带来麻烦。
function myFun(){trace("myFun");}a="my";b="Fun";this[a+b]();
另一个技术是使函数的名字不可显示。比如,用汉字作为函数名,反编译器可能就会不能很好的显示它。然后,我们便会看到:
function ?(){?,?){?.?=?;}
ASV 4使用unicode编码显示不可显示字符,所以,结果是易读的,只不过增加了点轻微的难度。
 
 
 
[1b]自我保护[/1b]
 
如果你找到一个很好的方法来保护自己的SWF不备反编译,不要与别人分享这个方法,至少不要再因特网上公开它。当然,它不能过100%的防反编译,至少对我来说是这样。但是,不是所有的人都对SWF的格式了如指掌。许多,偷窃者仅仅只会借助软件来反编译SWF。因此,如果你的目的是尽可能少的偷窃者能够偷窃你的SWF,那么请保护好你的(白虎SWF的)秘密方法。
本文转自:http://www.5uflash.com/flashjiaocheng/Flashyingyongkaifa/827.html