腾讯旗下的《QQ 音乐》新版本所使用的加密,姑且称之为 QMCv2。

QMC v1 相关的内容可以在 QMCv1 解密 找到。

命令行工具使用

如果需要批量解密,需要自行编写脚本调用编译的可执行程序。

你可以参考项目百科:批量转换

./QMC2-decoder "<seed>" "<mix_key_1>" "<mix_key_2>" "encrypted_file.mflac" "decrypted.flac"

其中,seedmix_key 需要你自行逆向 PC 客户端获取。

若是只需要解密旧版本客户端的文件,mix_key 传入空字符串即可。

命令行使用截图

网页版工具使用

网页版使用的解密代码与原生实现为同一份,使用 emscripten (C++) 将代码转义至 WebAssembly。

使用方法也很简单,按下按钮后选择文件,或将文件拖放到网页即可。每次处理一个文件。

WebAssembly 网页版截图

致谢

更新记录

  • 2022.11.06 - v1.0.0-R1 修正错误报告解密失败为解密成功的错误。
  • 2022.11.06 - v0.0.9-R1 清理仓库内置的密钥。现在需要传入密钥来解密。
  • 2022.10.09 - v0.0.8-R1 对不支援的文件提供更友好的错误信息。
  • 2022.10.02 - v0.0.7-R1 支持 PC 端最新的 QMC2-EncV2 加密。
  • 2021.12.25 - v0.0.6-R1 输出 SongID 信息 (如果有)、检测第二参数能否写出。
  • 2021.12.14 - v0.0.4 添加 CI 自动构建。
  • 2021.12.13 - v0.0.3 小修正 - 支援安卓端 QTag 结尾的文件。
  • 2021.12.12 - v0.0.2 小修正 - 支援 PC 端加密的文件。
  • 2021.12.12 - v0.0.1 勉强能用。