电脑版的是 electron 应用,所以还是挺好懂的。
只有文件的第一个 chunk 被加密了,之后的都是明文
第一个 chunk 的解密方法为:
- 读取 id3 的 tag 值,需要获取
encodingTechnology,encodedby,tracknumber - 用
encodedby作为 iv ,然后用 aes256cbc 来解密,获得一个 b64 字符串 - 把解密后的数据和
tracknumber一起丢到xmDecrypt里,再返回一个 b64 字符串 - 再用 b64 解密(
encodingTechnology+上一步拿到的字符串)
把解密后的数据和后面的 chunk 放到一起就行。