音乐解密终极指南:Unlock Music 如何3步解锁QQ音乐、网易云等加密音频文件
【免费下载链接】unlock-music在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.com/unlock-music/unlock-music ;2. https://git.unlock-music.dev/um/web项目地址: https://gitcode.com/gh_mirrors/un/unlock-music
你花十几块钱买下的数字音乐,为什么在换一台设备后就打不开了?答案是加密。Unlock Music 是一个完全在浏览器本地运行的免费开源工具,专门用于解锁 QQ音乐、网易云、酷狗、酷我等平台的加密音频文件,解密过程无损、不联网上传,让你重新拿回对自己音乐文件的完整控制权。
先看清困境:不是你的播放器太旧,而是文件本身被"锁"了
很多人遇到过这样的场景:在音乐 App 里下载了会员歌曲,拷到车载 U 盘或智能音箱后,设备直接提示"格式不支持"。试着把后缀从.qmcflac改成.flac,播放器依然报错——因为问题根本不在后缀名,而在文件内部。
这些平台为了保护版权,会在音频数据写入时做两件事:
- 替换或混淆音频流:用密钥对音频字节流做异或、映射或 RC4 流加密,直接播放时解码器读到的是一堆"噪音";
- 剥离或加密元数据:歌曲名、歌手、专辑封面等信息被打包加密,普通播放器无从读取。
也就是说,你拿到的其实是一个"被改装过的音频容器",容器里躺着标准音频,但外面套了层层外壳。Unlock Music 的价值,就是把这层外壳精准拆掉,还原出播放器能直接识别的 MP3、FLAC、OGG 等标准格式。
为什么"转码工具"救不了你:解密和转码是两码事
市面上不少"格式转换器"会把这类文件当作损坏文件处理,或者强行转码成低音质的通用格式。Unlock Music 与它们的本质区别可以概括为三句话:
| 对比维度 | 普通转码工具 | Unlock Music |
|---|---|---|
| 处理方式 | 解码→重编码,有损 | 直接还原加密层,无损 |
| 音质结果 | 可能降采样、压缩 | 与原始文件完全一致 |
| 隐私安全 | 往往需要上传云端 | 全部运算在本地浏览器完成 |
| 元数据 | 通常丢失或乱码 | 自动恢复标题、歌手、专辑、封面 |
解密(decrypt)是"找回原本就有东西",转码(transcode)是"再造一份新东西"。Unlock Music 走的是前一条路:它只移除加密,不做任何压缩和重采样,这也是它敢把"保持原始音质"作为核心承诺的原因。
Unlock Music 到底能解哪些格式:一张表看清能力边界
项目的官方 README 和src/decrypt/index.ts中的格式路由表,给出了非常明确的答案:
| 平台 | 支持格式 | 说明 |
|---|---|---|
| QQ 音乐 | .qmc0/.qmc2/.qmc3/.qmcflac/.qmcogg/.tkm | 经典加密格式 |
| QQ 音乐(新版) | .mflac/.mgg/.mflac0/.mgg1/.mggl及 Weiyun 十六进制后缀格式 | 需 WASM 加速 |
| QQ 音乐 iOS | .tm0/.tm2/.tm3/.tm6 | 独立处理模块 |
| QQ 音乐海外版 | .ofl_en(JOOX) | 独立处理模块 |
| Moo 音乐 | .bkcmp3/.bkcflac/.bkcwav等 | 与 QMC 共用解码 |
| 网易云音乐 | .ncm,以及.uc缓存文件 | 支持元数据恢复 |
| 酷狗音乐 | .kgm/.vpr/.kgma | 支持高音质版本 |
| 酷我音乐 | .kwm | 独立处理模块 |
| 虾米音乐 | .xm,以及裸.wav/.mp3/.flac/.m4a | 保留专辑封面 |
| 喜马拉雅 | .x2m/.x3m | Android 有声书文件 |
| 咪咕音乐 | .mg3d | 独立处理模块 |
一个值得注意的细节:.qmc0这类后缀并不直接决定内部算法,代码里甚至有"同一个后缀可能是 v2 加密"的注释。这意味着单靠改后缀名的"土办法"永远不可能成功——必须像 Unlock Music 这样真正去识别和解析文件内部的加密结构。
深入一点:解密过程是如何自动"分级降级"的
翻看源码会看到一套非常聪明的容错设计。以 QQ 音乐新格式为例(src/decrypt/qmc.ts),解密流程是这样的:
- 程序先尝试用WebAssembly 解码器(
src/QmcWasm/,C++ 编译而来)处理 v2 加密,速度最快; - 如果 WASM 检测失败,自动降级到纯 JavaScript 解码器,通过
QmcDecoder解析文件尾部的密钥段(QTag/STag标记)来重建流密码; - 根据密钥长度自动选择解密算法——密钥超过 300 字节走 RC4 流加密,否则走查表映射加密;
- 最后通过
SniffAudioExt嗅探音频实际格式,再调用extractQQMusicMeta恢复元数据。
酷狗格式(src/decrypt/kgm.ts)也有同样思路:先用VprHeader/KgmHeader魔数校验文件合法性,再优先走 WASM,失败则退回 JavaScript 逐字节解密。这种"WASM 加速 + JS 兜底"的双保险设计,正是这个工具在不同浏览器环境下依然稳定的原因。
多线程解密:一次拖 100 个文件也不卡顿的秘诀
批量解锁是 Unlock Music 的招牌能力。在src/component/FileSelector.vue中可以看到它的并行调度逻辑:
- 在 HTTPS 环境下部署时,程序会启用Web Worker 线程池(依赖
threads库),线程数按navigator.hardwareConcurrency自适应,充分利用多核 CPU; - 在
file://协议或开发环境下,则自动退化为单线程队列逐条处理; - 页面顶部会实时显示进度条,格式为"已完成数 / 总数"。
实际体验是:把几十个文件一起拖进窗口,进度条匀速推进,浏览器不会卡死。这就是"在浏览器里跑批量解密"和"一个个手动处理"之间体验差距的根源。
三种使用方式怎么选:从零开始的完整操作路径
Unlock Music 有三种形态,新手和老手各有最优解。
方式一:网页版(零门槛,推荐先试)
打开网页,把加密文件拖进虚线框,等待解密完成后点"下载全部"即可。所有运算都在本地完成,文件不会上传,理论上不消耗额外流量。适合偶尔处理几个文件。
方式二:本地部署(批量、离线、可自定义)
如果你需要长期处理大量文件,或想在无外网环境使用,可以自己构建:
git clone https://gitcode.com/gh_mirrors/un/unlock-music cd unlock-music npm ci npm run servenpm ci安装依赖(注意会通过patch-package自动应用补丁);npm run build生成生产版本,产物在dist目录,可直接部署到任意静态服务器;npm run make-extension额外构建浏览器扩展版。
项目要求 Node.js 16.x。构建完成后,推荐将dist目录部署到 HTTPS 环境——这样能同时启用 Web Worker 多线程和 PWA 离线能力。
方式三:浏览器扩展(与下载流程无缝衔接)
执行npm run make-extension后,把生成的扩展目录加载到浏览器即可。扩展版与网页版共享同一套解密核心,适合希望"下载完顺手解锁"的流程。
解锁之后还能做什么:三个容易被忽略的实用细节
1. 命名策略可定制。在src/view/Home.vue中,你可以选择按"歌手 - 标题"或"标题"等策略命名输出文件,批量整理时非常省心。
2. "立即保存"模式防内存溢出。解锁结果默认暂存在浏览器内存中,方便你预览和试听;但如果一次处理上百个文件,建议勾选"立即保存",每个文件解完直接写入磁盘,避免浏览器内存告急。
3. 元数据与封面可编辑。项目提供编辑对话框(src/component/EditDialog.vue),解锁后可以手动修改标题、歌手、专辑、流派,甚至替换封面图。MP3 和 FLAC 格式都支持写回,使用的是browser-id3-writer和metaflac-js这类成熟的本地标签库。
解密失败时按这个顺序排查
如果某个文件报错,90% 的情况跑不出以下四种:
- 文件本身不完整:下载中断导致尾部密钥段缺失,最常见;
- 平台已更新算法:检查是否使用了最新版本(社区会在新算法出现后跟进);
- 浏览器太旧:WASM 解码需要现代浏览器支持;
- 格式超出支持列表:对照上文的格式表格确认。
顺带一提,个别新格式(如mflach)在网页版会明确提示"请使用 CLI 版本",这是作者有意为之——某些格式出于性能考虑只在高吞吐的 CLI 中支持,遇到时按提示走即可。
从今天就能开始的行动清单
如果你手头正好有打不开的音乐文件,按这个顺序走:
- 先打开网页版,拖一个文件进去,亲眼确认解密流程和音质表现;
- 若批量需求大,再按上文命令本地部署,并部署到 HTTPS 以启用多线程;
- 解锁后利用元数据编辑功能整理你的音乐库;
- 遇到新格式或新问题,查看项目 README 与
src/decrypt/源码,了解最新支持情况。
最后说一句:这个工具的价值在于帮你管理自己拥有合法使用权的音乐文件,请勿用于传播或牟利。尊重创作者的劳动,音乐自由才有意义。
打开浏览器,把第一首歌拖进去——你会发现,被"锁住"的音乐其实一直都在,只是等一个懂行的钥匙。
【免费下载链接】unlock-music在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.com/unlock-music/unlock-music ;2. https://git.unlock-music.dev/um/web项目地址: https://gitcode.com/gh_mirrors/un/unlock-music
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考