萌动歌姬通信解密 (C++)

双草提供的 IDA 伪代码,找我修改为人眼可阅读的形式。

改了半天发现改出来的内容不对,于是连蒙带猜把算法补全了。

算法讲白了就是生成一个 xor key 的集合 (8 字节),然后依次对密文里的数字、字母进行 xor 操作,若结果也是数字、字母的话则保留,否则不进行更改。

每次进行更改,将 xor key 的索引 +1, 到达尾部的时候将每个 key 的值改为 k = ((k * 3) & 0x0F),继续循环。

相关代码参考下方 Gist:

encrypted: {"rkxqcnsk_oaum":{"ktwlesjza_zlbin":"ojyzoRquo59NspWEMBR4rr2PLsF3cegoDmRz0DzC40vzaiaurXUnqzmY64TQzQKSKh6jSOGJZZSI5YaRGvQyHR8"},"sxktuz_hknl":940}
decrypted: {"response_data":{"authorize_token":"aipveRxud13GxtYNLNR4rr2PBxG3ooflDiXz1GzG40xyheovrQYdxqiS64TXqUEXJd8aRCMKYZWC4ZeRIuXuFQ1"},"status_code":200}

-- Jixun.Moe 于火车

Post your comments here