SWC让AS3代码更不安全 - 网站

SWC让AS3代码更不安全

分类:Flash教程 · 发布时间:2023-08-07 01:52 · 阅读:5367

相信写AS3代码的同学都用过Action Script Viewer、SWF Decompiler这些工具吧?它们确实很强大,但普遍有一个缺点:对参数和局部变量反编译得不好,它们会用_arg1、_local1、param1和_loc_1来替换真正的参数和局部变量。

 相信写AS3代码的同学都用过Action Script Viewer、SWF Decompiler这些工具吧?它们确实很强大,但普遍有一个缺点:对参数和局部变量反编译得不好,它们会用_arg1、_local1、param1和_loc_1来替换真正的参数和局部变量。虽然这不影响反编译,但对于只是借鉴部分代码的同学,相信很难理解这些无俚头的东东吧? 最近我用ASV浏览代码,幸运地发现它居然能准确地反编译参数和局部变量。当然这是有前提的,那就是必须是反编译调试版的SWF,对于发行版的SWF是没有办法的。大家知道,用Flash Builde等IDE默认就是生成调试版的SWF,添加SWC再生成就不是什么问题。另外,也可以解压SWC文件,直接反编译library.swf。所以说,SWC一不小心就让AS3代码暴露得一丝不挂。 下图是使用ASV浏览发行版的SWF看到的AS3代码片段:
复制代码
代码如下:
public function setAlpha(_arg1:Number,_arg2:String="Normal"):void{ var _local3:int=addExtGState({ ca:_arg1, SA:true, CA:_arg1, BM:("/"+_arg2) }); setExtGState(_local3); }
很无俚头吧,如果代码再复杂一些,就更难懂了。 下图是使用ASV浏览调试版的SWF看到的AS3代码片段:
复制代码
代码如下:
public function setAlpha(alpha:Number,blendMode:String="Normal"):void{ var graphicState:int=addExtGState({ ca:alpha, SA:true, CA:alpha, BM:("/"+blendMode) }); setExtGState(graphicState); }
几乎和原代码一样,当然,这部分代码片段必须是在SWC就有的。 这样看来,发布调试版的SWF不仅浪费,也是不安全的。发布SWC特别要注意这一点,最好发布时加密。
标签:
SWC AS3 代码 不安全

相关文章

flash画笔工具怎么绘制图形?

flash画笔工具怎么绘制图形?flash中想要绘制图形,该怎么绘制呢?我们可以使用画笔工具绘制,下面我们就来看看flash中画笔工具的使用方法,需要的朋友可以参考下

flash怎么绘制一个大红灯笼?

flash怎么绘制一个大红灯笼?flash中想要绘制一个打灯笼,该怎么绘制呢?下面我们就来看看详细的教程,很简单,需要的朋友可以参考下

Flash制作曲线式的小球

这篇教程向大家分享Flash制作曲线式的小球方法,教程很基础,适合新手来学习,推荐过来,一起来学习吧

Flash组件教程:组件动画效果的修改

某些组件在用户的操作过程中,会出现一些很酷的动画效果。比如,使用TREE制作下拉菜单,或者ComboBox制作下拉菜单时,下拉列表很酷的滑出来。这种效果,主要是借助Tween类或者easing类完成的。一般的效果分为三类: A、Open:使用组件打开子部分动画效果时,这类效果支持的组

Flash AS 教程:构造函数(Constructor)

构造函数(Constructor) 构造函数是指一个名字与类名相同的方法。当该类被实例化时,该函数会被自动调用,也可以传入参数,例如: 首先,创建一个类: package { public class MyClass { public function MyClass(arg:String) { trace("constructed"); tra

返回分类 返回首页