建议:macOS 教程更新,以及使用 sqlite vfs 读取数据库
## macOS 教程更新
参考当前仓库的[教程 - NTQQ (macOS)](https://github.com/QQBackup/qq-win-db-key/blob/master/%E6%95%99%E7%A8%8B%20-%20NTQQ%20(macOS).md),遇到两个问题。
第一个问题:
我使用 Hopper Disassembler 5.19.6 版本,不能拿到 `nt_sqlite3_key_v2` 的引用地址。
但是通过 objdump 是可以的。
<img width="1354" height="609" alt="Image" src="https://github.com/user-attachments/assets/99d3731d-4b0c-44f8-8ebc-144435615d1e" />
第二个问题:
教程使用的是 macOS M 系列芯片,在寄存器部分的操作不大一样,建议说明。
<img width="1161" height="353" alt="Image" src="https://github.com/user-attachments/assets/a82eee45-0aa3-4514-bcdc-9fc7a6b6de44" />
## 使用 sqlite vfs 读取数据库
在 [基础教程 - NTQQ 解密数据库.md](https://github.com/QQBackup/qq-win-db-key/blob/master/%E5%9F%BA%E7%A1%80%E6%95%99%E7%A8%8B%20-%20NTQQ%20%E8%A7%A3%E5%AF%86%E6%95%B0%E6%8D%AE%E5%BA%93.md) 中,有这样的代码 :
```bash
cat ./profile_info.db| tail -c +1025 > profile_info_clean.db
sqlcipher ./profile_info_clean.db
```
这样会有多余的 IO 写操作,通过通过 sqlite vfs 忽略前 1024 字节数据库,更加高效。
demo 案例:
[zqhong/sqlite_header_vfs](https://github.com/zqhong/sqlite_header_vfs)
在 macOS X86 环境下测试是可以的。
关闭于 2026-01-18 9 条评论