• 中文
    • English
  • 注册
  • 更多话题
    • 查看作者
    • 弹弹岛2客户端加解密工具的核心逻辑

      核心加解密逻辑

      密钥: pifnwkjdhn

      加密流程 (Encrypt)

      1. 读取原始文件数据

      2. 随机生成一个字节 num2(1~255),作为 XOR 的额外密钥

      3. 对每个字节执行:array[i] = data[i] ^ num2 ^ secretKey[(num2 + i) % 10]

      4. 在文件末尾追加 13 字节的尾部标记:

        • 第 1 字节:随机生成的 num2(解密密钥)

        • 后 12 字节:固定值 {123, 91, 89, 68, 11, 12, 11, 87, 89, 68, 93, 125}

      解密流程 (Decrypt)

      1. 读取 加密文件数据

      2. 从倒数第 13 字节取出 num2(加密时写入的随机密钥)

      3. 对前 length-13 个字节执行:array[i] = data[i] ^ num2 ^ secretKey[(num2 + i) % 10]

      4. 输出去掉尾部 13 字节的解密数据

      关键公式

      加密: encrypted[i] = plain[i] ^ num2 ^ key[(num2 + i) % 10]

      encrypted[i]=plain[i]num2key[(num2+i)encrypted[i]=plain[i]num2key[(num2+i)

      解密: plain[i] = encrypted[i] ^ num2 ^ key[(num2 + i) % 10]

      plain[i]=encrypted[i]num2key[(num2+i)plain[i]=encrypted[i]num2key[(num2+i)

      XOR 是对称的。

      尾部标识(用于判断文件是否已加密)

      加密后的文件末尾 12 字节固定为:

      {0x7B, 0x5B, 0x59, 0x44, 0x0B, 0x0C, 0x0B, 0x57, 0x59, 0x44, 0x5D, 0x7D}

      弹弹岛2客户端加解密工具的核心逻辑

    • 0
    • 0
    • 0
    • 5
    • 请登录之后再进行评论

      登录
    • 做任务
    • 返回顶部