Project1

标题: 如何把素材加密? [打印本页]

作者: 天使喝可乐    时间: 2009-3-21 15:57
标题: 如何把素材加密?
看到有的游戏素材也被屏蔽了,请问怎么弄的?谢谢..
是要用什么软件加密吗? [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: yuxuan    时间: 2009-3-21 20:21
提示: 作者被禁止或删除 内容自动屏蔽
作者: tommay    时间: 2009-3-21 20:31
文件—压缩游戏数据—确定(勾选生成加密档案文件)
作者: 凌辰    时间: 2009-3-21 20:39
本帖最后由 凌辰 于 2009-7-31 11:14 编辑
以下引用tommay于2009-3-21 12:31:36的发言:
文件—压缩游戏数据—确定(勾选生成加密档案文件)

说实话RM的加密很脆弱……

·方案一:使用自己的加密算法
第一种加密方案是修改RGSS102J.dll中的解密算法,然后自己把素材打包成RGSSAD格式。
此方案要求使用者对程序设计以及二进制文件的修改有一定的基础。
由于我现在还没有试过外挂dll这种技术,所以这里介绍一个相对简单的方法——修改MagicKey的初始值。RMXP是使用0xDEADCAFE作为MagicKey的初始值,那么我们把RGSS102J.dll中的DEADCAFE修改掉,然后自己打包就可以防范那些一般的解包工具。
当然,如果你觉得有必要的话,还可以给这个修改过的dll文件加一个强壳,然后随游戏发布。
虽然安全系数不高,但足以应对全自动的提取工具。我写了一个程序来自动修改MagicKey,并打包资源文件,我给它起名叫"纸老虎"。下载网页http://www.uushare.com/user/lingchen/file/1333250
难度指数:★★
安全指数:★☆

·方案二:混淆文件名
第二种加密思路是混淆文件名。在Windows操作系统下,有 \/:*?"<>| 这9个字符是不能用作文件名的。除去\/表示文件目录,我们还有7个特殊字符可用。如果在原有文件名中加入这几个本来不能用的字符,那么解包程序就会因为不能正常创建文件而提取失败。
注:此方法需要自己打包资源文件,以及修改rxdata文件,工作量比较大。
混淆不能绝对保证自己的游戏不被盗用,它的主要目的是打击盗用者的信心,让他在还没有导出全部素材的时候就已经垂头丧气,精疲力尽了。
难度指数:★★★★
安全指数:★★☆

·方案三 将整个游戏打包成一个可执行程序
这个方法很多人都在用,而且可用的工具比较多,与MoleBox类似的工具都可以做到。
难度指数:★★
安全指数:★★★

·方案四 给游戏加一个特殊的"壳"
此方法与方案三类似,并且与传统概念上给程序加壳有所不同。这里所说的"壳"更类似用一个定做的程序给游戏当作中介,它通过HookApi或者别的什么方法接管游戏读写文件的操作。因为是完全接管,所以资源使用什么格式完全是由使用者决定的。此方法需要比较深的编程功底。
难度指数:★★★★
安全指数:★★★☆

·方案五 自制RGSS解释器
这是所有方案中最有效的方案,但是如果真的要自制一个RGSS解释器有两个主要的障碍,
1、RMXP使用的文件格式
2、编写RGSS脚本的解释器
很显然,障碍一要比障碍二简单的多,但同样是一个庞大的工程。(如果有RMXP的源代码的话另当别论)
难度指数:★★★★★
安全指数:★★★★★

对于游戏而言,无论什么样的加密方案都只是增加破解者的工作强度,而不能真正保护自己的素材不被提取,因为素材终归是要在游戏中使用的。
[LINE]1,#dddddd[/LINE]系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
作者: 木葬枫    时间: 2009-3-21 22:01
「我写了一个叫“纸老虎”」判定为复制―v―
作者: 凌辰    时间: 2009-3-21 22:03
以下引用木葬枫于2009-3-21 14:01:16的发言:
「我写了一个叫“纸老虎”」判定为复制―v―

的确是复制……
而且下载连接不是原连接,为了不让人找到原地址。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1