NOTE
因为
rust
的id3
库没有python
的mutegan
那么强大和准确,对于有些mp3
编码的文件解密会出错,我也不知道如何修复,并且这个程序并不会保留艺术家
,曲目
和专辑
等元信息,但python
脚本(只是依赖安装稍微有点麻烦,因为好像python
的wasmer
在有些(我的)Windows系统下无法运行,但是用wsl
就可以解决这个问题了。。。)会保留,也不会出错。所以我决定放弃这个程序的修改,转而用python
脚本来解密。
喜马拉雅下载xm文件解密工具
实现逻辑参考 https://www.aynakeya.com/articles/ctf/xi-ma-la-ya-xm-wen-jian-jie-mi-ni-xiang-fen-xi/
由于xm使用的id3 tag语言位占用2位,不是标准的3位,所以集成了修改的rust-id3代码
由于对python不熟,在windows python 3.11环境下搞了很久没用起来,决定用rust按照原项目逻辑重写一下
编译一个单独的exe文件供朋友们直接使用
xm_decryptor xm文件或目录
- 输出文件名的本名与源文件名一样,便于检查是不是全部解密成功。
- 增加
--dry-run
参数。 - 变通修正了某些mp3文件程序解码
id3
tag的时候encoding_technology
解错(有两个\0
)导致文件无法解密。