4月9号许承志朋友发的象棋名手1.56_2U加强版(原帖子
http://www.qz777.com/read-htm-tid-12708.html),我借此机会介绍一下引擎附加数据的问题。关于名手1.56_2U的引擎之前海风月影朋友已经发过了(原帖子
http://www.qz777.com/read-htm-tid-11311.html)。
先把这两个引擎的md5、sha1值分别列出来:
许朋友的引擎:md5:fe99eb16ece1a1784351de2577ed3d80
sha1:84321a3b96bb6ac1a4c29647b17b1b5fecba1f15
海朋友的引擎:md5:8c7d2eb89714c1ccf8ecb0217ec69af6
sha1:2954b64a761a1774fd502afdb3c10f248684f167
为了方便说明,我把这两个引擎的名字分别改成:许引擎.exe、海引擎.exe,都放在桌面的“附加数据介绍”目录下。
我很自然要拿许朋友的引擎和海风月影朋友的引擎作比较,初一看许的引擎3.17m,海的引擎1.58m,大小相差近似2倍,我就在想,会不会有人把2个1.58m的引擎捆绑在一起了呢。事实上确实是捆绑的,把其中一个引擎作为附加数据捆绑在另一个引擎上。请听我慢慢说来。
一、怎样查看引擎是否含有附加数据。
方法也不唯一,通常使用查壳工具来查看,这里主要介绍File Format Identifier软件。每次拿到一个新引擎就习惯性查查有没有加壳,File Format Identifier软件除了可以查部分壳,还可以查看部分附加数据。
1、运行File Format Identifier软件,把 许引擎.exe 拖放到软件界面上,看下图画红圈的位置,如果引擎查出引擎有附加数据,那按钮“移除附加数据”和“保存附加数据”是激活状态可以点击的,如果没有附加数据,那两个按钮就是灰色的。从图上可以看出 许引擎.exe 是包含附加数据的。
2、这时可以选择移或者保存附加数据,通常直接点“移除附加数据”就可以给引擎减肥了,这里我为了证实猜想是不是两个相同的引擎捆绑在一起的,所以我先点击了“保存附加数据”,目的是把多余的数据另存出来,看看到底是什么。
3、点击保存后选择一个路径、取一个名字就可以保存了,我把名字取作“备份”,注意此时的完整文件名是: 备份.over 。请注意看这个附加数据 备份.over 大小也是1.58m ,那么巧啊,我把后缀名改成 exe ,再运行这个有附加文件改后缀名变成的程序:备份.exe,看到什么了,这就是引擎啊。再用Hash Calculator软件来比较: 备份.exe 和 海引擎.exe 发现md5、sha1值完全一样。
4、保存出来的附加数据就是名手引擎,也可以说就是 海引擎.exe ,现在再点击“移除附加数据”把多余部分移除,看看剩下的部分又是什么。移除后可以发现 许引擎.exe 减肥了,从原来的 3.17m 变成 1.58m ,再比较md5、sha1值,发现减肥后的 许引擎.exe 、备份.exe、海引擎.exe 三个文件的md5、sha1值一样,这说明减肥后的 许引擎.exe 就是 海引擎.exe,同时也说明原来 3.17m 的 许引擎.exe 就是两个 海引擎.exe 捆绑在一起。所谓的“加强版”就是把两个一模一样的引擎捆绑在一起就算是“加强”了?天知道!很滑稽。
二、用什么方法可以往一个引擎(程序)上添加附加数据。
1、通常在制作一个改版引擎是有两个途径:一是用16进制软件修改字符串,二是用特定的软件往引擎里面添加附加数据。这里介“Overlay附加数据处理软件”。
2、要往一个引擎上附加的数据可以是任何文档,就是说你可以不像上面说的“加强版”许引擎那样把同样的引擎准备两份来捆绑,只要你高兴,你可以把一个图片附加在引擎上,或者把一篇文章附加在引擎上。
3、这里我新建一个记事本文件(txt文件),在里面写上“不要造假!”,把这个txt文件取名为 “打假” ,全名就是 打假.txt。比如现在要把 打假.txt 附加到上文说的 海引擎.exe 上。因为 Overlay附加数据处理软件 只能读取后缀名为.ovr 的附加文件,所以先把 打假.txt 的后缀名改成 .ovr 。
4、 运行Overlay附加数据处理软件。如图所示,点击“目标文件”选择你准备的附加文件,这里我选择 打假.ovr ,再点击“源文件”选择你准备好的引擎,这里我选择 海引擎.exe ,接着点“复制附加数据”等弹出确认窗口后再点“确定”,这时候的 海引擎.exe 就不是原来的 海引擎.exe 了,它是 原来的 海引擎.exe 和 打假.ovr 两个文件的结合体。可以再用 File Format Identifier软件 来查看新的 海引擎.exe已经存在附加数据了。同时新的 海引擎.exe 的大小 ,md5、sha1值都变化了。
说到这里就介绍完了关于引擎附加数据的由来,这样的捆绑方式不局限于引擎,其他exe程序也能用这个方法来附加数据。通过这样的捆绑数据,一个个改版引擎就诞生了,比如某些“加强版”、“超强版”、“最强版”、“绝杀版”引擎你觉得似曾相识,但偏偏大小不一样,你不妨先看看引擎有没有被附加数据。戏法千变万化,有的附加数据不是那样简单的,移除后可能会导致程序不能运行。
那个所谓的名手“加强版”其实只是个玩笑,你也可以制造出“旗舰版”、“航母版”。
当然我也只懂得皮毛,让高手见笑了。(偷懒,懒得上多图了,如果觉得难看明白再补图。)