佚名 向大家分享了flash 加密解密的相关知识说明,其中包含flash相关知识,flash动画相关书籍,flash相关书籍,flash相关软件,flash相关论文等知识点,遇到此问题的同学们可以参考下
希望大家了解一些解密方面的东西,对自己的心血好好保护。最好的方法就是完全不给,一旦作品发布,必须做好被人破解的准备。另外,无论何时,不是技术相当人之间的交流性质的话,不要发论坛短消息或邮件和我讨论这一话题。
Q1:为什么要破解flash文件
我认为目前有五种性质:
一 是通过破解别人的文件,了解别人的编程思路,进行模仿或学习
二 汉化优秀flash软件,游戏,让大家分享。或因为游戏设置不平衡,改部分参数,如xxxx百倍经验值版等等。
三 一些小公司,仅仅通过将别人的作品,改头换脸,把自己的标望上面一打。
四 一些个人,行为同上。
五 通过flash破解,来了解flash加密技术。
而为什么加密,基本上原因就只一种,保护自己的心血。
Q2:怎么才算是破解了
由Q1,我们也可以这么分
一 反编译出大部分代码,尤其是核心代码
二 需要得到所有的字符串,参数的修改
三 这是最无耻的,什么都破解的了。因为不需要完整破解,很多加个读取的壳可能就能加水印了。
四 同上
五 此类基本同一
Q3:加密的总被破解了,再没什么加密是安全的了吧?
Swf的文件格式,现在已经是透明的了,很多人,人云亦云的说,因为flash文件格式的透明,flash加密总是会被解开的。此说法完全没道理。不过flash是脚本语言,它不能自己运行,必须要flashplayer或类似的东西进行解释,所以不管怎么加密,你必须保证flashplayer仍然认识它。
由Q2,如有些方式的加密,反编译后可以生成伪码,而且伪码也能运行,但是人看不懂,不能修改。这也能算加密成功。但是只要让flash变成既可以运行,但是又不是人可以看懂的代码,太难。目前见过几个混淆可以达到这种效果,方式不详。
有些方式的加密,用软件完全反编译不能。手动也非常辛苦,最后得不尝失,即使破解了,也不方便修改。即使破解了一个,也不一定能破解同样方式的第二个。这也算成功了。Doswf基本做到了这一点。不过doswf太能损坏文件了,且试用版水印+弹窗,我并不建议大家使用。
基本上,目前主要就用swfEncrypt直接加密了,要么自己想办法,自己写。最好的加密是把文件格式变成exe,用别的软件给它加壳。Exe加解密技术成熟得多。但是缺点是,大家都是要的网络上能流通的swf啊。
Q4:怎么加密?
Flash,现在主要就分动画和程序。
Swf是tag标签格式的文件,支持的标签也并不多。而flash中的库,是暴露在最外面的,自身完全无法加密。要保护动画,必须要加loader的壳。而action部分,支持很多指令。Opcode其实和汇编码没多大区别。(另外这里插一句,有些人断章取意的认为alchemy能让flash执行效率高N倍,也没道理,如果看过官方的详细说明,外加avm2的说明的话,就应该知道,大多abc只是转换成了flash本身支持的opcode,极少数为avm2额外的专门的解释器,alchemy的出现,最多是为了方便别的平台的程序员而已,不久以后可能我这观点也行不通了)。因此,action部分能做很多文章,而市面上的加密软件也多是在这部分上动脑筋。你也可以写个loader,配合改一些动画swf的数据。然后加密as部分的loader来达到加密动画的目的。
不过现在,商业气息太浓,产品没测试好就拿出来卖了。真没想到5个小时不到就能把swfEncrypt6.04完全搞定。即使因为没读完avm2的tag及一些debugtag而不能完全还原成源码,也能轻松的注入自己的指令到加密后的文件中,能修改,也能删除。
Q5:解密需要些什么?
Q1:为什么要破解flash文件
我认为目前有五种性质:
一 是通过破解别人的文件,了解别人的编程思路,进行模仿或学习
二 汉化优秀flash软件,游戏,让大家分享。或因为游戏设置不平衡,改部分参数,如xxxx百倍经验值版等等。
三 一些小公司,仅仅通过将别人的作品,改头换脸,把自己的标望上面一打。
四 一些个人,行为同上。
五 通过flash破解,来了解flash加密技术。
而为什么加密,基本上原因就只一种,保护自己的心血。
Q2:怎么才算是破解了
由Q1,我们也可以这么分
一 反编译出大部分代码,尤其是核心代码
二 需要得到所有的字符串,参数的修改
三 这是最无耻的,什么都破解的了。因为不需要完整破解,很多加个读取的壳可能就能加水印了。
四 同上
五 此类基本同一
Q3:加密的总被破解了,再没什么加密是安全的了吧?
Swf的文件格式,现在已经是透明的了,很多人,人云亦云的说,因为flash文件格式的透明,flash加密总是会被解开的。此说法完全没道理。不过flash是脚本语言,它不能自己运行,必须要flashplayer或类似的东西进行解释,所以不管怎么加密,你必须保证flashplayer仍然认识它。
由Q2,如有些方式的加密,反编译后可以生成伪码,而且伪码也能运行,但是人看不懂,不能修改。这也能算加密成功。但是只要让flash变成既可以运行,但是又不是人可以看懂的代码,太难。目前见过几个混淆可以达到这种效果,方式不详。
有些方式的加密,用软件完全反编译不能。手动也非常辛苦,最后得不尝失,即使破解了,也不方便修改。即使破解了一个,也不一定能破解同样方式的第二个。这也算成功了。Doswf基本做到了这一点。不过doswf太能损坏文件了,且试用版水印+弹窗,我并不建议大家使用。
基本上,目前主要就用swfEncrypt直接加密了,要么自己想办法,自己写。最好的加密是把文件格式变成exe,用别的软件给它加壳。Exe加解密技术成熟得多。但是缺点是,大家都是要的网络上能流通的swf啊。
Q4:怎么加密?
Flash,现在主要就分动画和程序。
Swf是tag标签格式的文件,支持的标签也并不多。而flash中的库,是暴露在最外面的,自身完全无法加密。要保护动画,必须要加loader的壳。而action部分,支持很多指令。Opcode其实和汇编码没多大区别。(另外这里插一句,有些人断章取意的认为alchemy能让flash执行效率高N倍,也没道理,如果看过官方的详细说明,外加avm2的说明的话,就应该知道,大多abc只是转换成了flash本身支持的opcode,极少数为avm2额外的专门的解释器,alchemy的出现,最多是为了方便别的平台的程序员而已,不久以后可能我这观点也行不通了)。因此,action部分能做很多文章,而市面上的加密软件也多是在这部分上动脑筋。你也可以写个loader,配合改一些动画swf的数据。然后加密as部分的loader来达到加密动画的目的。
不过现在,商业气息太浓,产品没测试好就拿出来卖了。真没想到5个小时不到就能把swfEncrypt6.04完全搞定。即使因为没读完avm2的tag及一些debugtag而不能完全还原成源码,也能轻松的注入自己的指令到加密后的文件中,能修改,也能删除。
Q5:解密需要些什么?