首页 > 其他 > 详细

避免SWF被内存提取工具提取的方法

时间:2014-08-28 19:36:06      阅读:198      评论:0      收藏:0      [点我收藏+]

内存工具从内存中抓取SWF一般是依靠寻找SWF的前7个字节(3个SWF文件必有的标示字节“FWS”或“CWS”或“ZWS”+4个记录该SWF文件长度的字节),所以避免被提取我们只要在加载SWF到内存后,修改这头7个字节即可(SWF加载后修改这几个字节不影响SWF的运行)。

 

那么SWF在内存中的字节在哪儿呢?

1.对于文档类来说就是:

1 this.loaderInfo.bytes;

2.对于加载的SWF来说是:

1 loader.contentLoaderInfo.bytes;

 

所以我们只要修改这个字节数组即可,给前7个字节设定为随机的字节:

1 public function hideSWF(bytes:ByteArray):void
2 {
3     for(var i:int = 0; i < 7; i++)
4     {
5         bytes[i] = int(0xFF * Math.random());
6     }
7 }

 

例:

1 hideSWF(this.loaderInfo.bytes);
2 hideSWF(loader.contentLoaderInfo.bytes);

 

避免SWF被内存提取工具提取的方法

原文:http://www.cnblogs.com/hammerc/p/3942235.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!