传奇私服脚本解密器的研究

现在大家常见的传奇私服商业服务端都大多都使用了《晋升传奇脚本加密器》加过密,加密后的代码类似于:

 

JSENCYPTSCRIPTFLAG
BEC352419136C2BB69C2599B8242F604
752A42BA440E8362
A3A9874FF3E8FF75DC12FF3DF05DBD72A2DCE0E0D536E53B5C8750D9211E19DF799BE978813AF3709CBD95448B15B750
6C4D747D7624B118690C45B9E6FC1F16FB08D5A0AC3FF36632C5C7D4EE7308426776666B01EAB47CD6CE078B54380CC8831B759C142865A9
2FAF9B3341D1BC6E7E8A2E45D5D1DE6DC46CC438DE45BA81A020C6A16F594B28EA99484E3B515C0733560612BF1F16BF
F897AD913C275ACF9AF6C0A0159A4C188CA69FA58795F4B5ED03B29BC4C905683DA3BC82900961FED04393B5D054F15C58CFD463C8CA658AE84F6C1B66A63622C30CA318DBB119ADB47B593FC6B297BA
BE49AD8574AAC7465F994D4DC6868164999E1E123C90F2F69D68C0FB9DBA3360FCDADC6A1DD866C1
C71988B2B9F64224023C8B5D8A64F6A5F59DAAA90EF6EA30
BA785964055B4C89DAA3CA4139D53A16
F24630F9D237F617234B3815D3364B20D3425C4E9A87F7DA
......

 

经过三天对它的研究,总算对它的编码及解码规则有了粗略的了解。以下是本人对编码及解码的一点分析

 

首先,第一行“JSENCYPTSCRIPTFLAG”,是一个标记,用这个标记说明了文件是否是加过密的,在实际的分析中却发现它其实是一个KEY,然后第二行就是加密的密码了,因为是MD5后的数据,所以马上拿到http://www.cmd5.com/Default.aspx去试试,如果运气足够好的话,你就已经得到了这个脚本加密所使用的密码。我的运气总是不好,在cmd5上也找不到BEC352419136C2BB69C2599B8242F604对应的密码。只好搬出SoftICE了,先看看《晋升脚本加解密工具》是如何加密和解密的。在456E1E处下断点,发现在进行解密时还用到了另一个字符串,马上在内存中查找,几经周折,才明白了它解密的原理:
先是将你输入的密码MD5后得到一个字符串,然后用这个MD5串与“JSENCYPTSCRIPTFLAG”进行运算得到一个KEY,再把这个KEY与密码密文进行运算就得到了密码明文。也就是说在解密时所要用到的信息就是加密密码与密码密文,密文第二行保存的MD5直就没有使用,试了一下,果然,我用这个工具时进行解密前,把密文第二行删除后也能正确的解码密文。其实密码密文的第二行是在M2服务器加载时直接计算的,所以也就是说不需要密码也可以把密文解密出来。跟据这个特点,终于在SoftICE的帮助下写出来晋升脚本解密工具,使用这个工具将不再需要密码,直接解出脚本明文。

 

传奇私服脚本解密器的研究_第1张图片

 

第一次写文章,文采也不好,谁叫咱是搞程序的呢,有需要解密的朋友加QQ:82330276 验证:私服交流

 

你可能感兴趣的:(游戏)