查看: 4659|回复: 0

[已关闭] wz文件字符加密的加密匙文件或加密匙数据

[复制链接]

新人上路

枫币
90
威望
0
贡献
6
在线时间
9 小时
注册时间
2017-11-30
发表于 2017-12-24 20:05:56 | 显示全部楼层 |阅读模式
本帖最后由 a451902 于 2017-12-24 20:06 编辑

最近接触单机版, 找到了原版的odinms代码,在频道服务器运行时原版对资源文件的字符串解密步骤有差异,正常来说是
  1. char ^ (0xAA + offset) ^ key[offset] // ASCII
  2. char ^ (0xAAAA + offset) ^ ((key[offset * 2 + 1] << 8) + key[offset * 2]) // Unicode
复制代码


原版并没有异或key数组, 之后找了几个国内其他改版源码, 发现它是一个“Cms.hex”密匙文件
  1. static {
  2.         File keyFile = new File("Cms.hex");
  3.         try {
  4.                 FileInputStream fis = new FileInputStream(keyFile);
  5.                 encKey = new byte[65535];
  6.                 fis.read(encKey);
  7.                 fis.close();
  8.         } catch (Exception ex) {
  9.                 log.error("文件所需要的加密匙丢失.");
  10.                 ex.printStackTrace();
  11.         }
  12. }
复制代码


我下的这几个改版源码里都没找到Cms.hex

我翻了翻WzComparerR2的源码, 里面的Wz_Crypto类有密匙(keys_bms,keys_kms,keys_gms)但却是运算出来的, 未直接给出,又因本机未安装VS和本人对CSharp不熟,无法直接跑出密匙,希望有人能把密匙运算出来发给我,或有Cms.hex文件也可以, 先行谢过。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|枫叶物语冒险岛单机 | 本站已运行:

枫叶物语可能会倒闭,但是绝对不会变质。

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖QQ客服返回顶部