查看: 2922|回复: 0

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

  • TA的每日心情
    擦汗
    2017-12-23 00:57
  • 签到天数: 2 天

    [LV.1]初来乍到

    新人上路

    枫币
    88
    威望
    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文件也可以, 先行谢过。

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

    本版积分规则

    枫叶物语即使倒闭也绝对不会变质
    Copyright © 2001-2013 Discuz Team. Powered by Discuz! X3.5 |网站地图 | 本站已运行: