1
0
Fork
You've already forked qq-dump
0
forked from lanticy/qq-dump
极速的 Android 端 NTQQ 数据库密钥提取、解密及聊天记录导出工具。遵循 KISS 原则与 Unix 哲学, 针对移动端闪存优化 I/O 策略, 最小化读写磨损。An ultra-fast NTQQ database key extraction, decryption, and chat history export tool for Android. Follows the KISS principle and Unix philosophy. Features I/O strategies optimized for mobile flash storage to minimize read/write wear.
  • Python 86.4%
  • Shell 9%
  • HTML 4.6%
2026年01月19日 04:30:30 +01:00
chat_export initial commit 2026年01月19日 04:16:36 +01:00
lib initial commit 2026年01月19日 04:13:37 +01:00
.gitignore initial commit 2026年01月19日 04:13:14 +01:00
db_list.txt initial commit 2026年01月19日 04:12:29 +01:00
dumpchat initial commit 2026年01月19日 04:12:29 +01:00
dumpdb initial commit 2026年01月19日 04:12:29 +01:00
dumpkey initial commit 2026年01月19日 04:12:29 +01:00
LICENSE initial commit 2026年01月19日 04:12:29 +01:00
mock initial commit 2026年01月19日 04:12:07 +01:00
qq-dump initial commit 2026年01月19日 04:12:07 +01:00
README.md initial commit 2026年01月19日 04:30:30 +01:00
README_en.US.md initial commit 2026年01月19日 04:12:07 +01:00
update initial commit 2026年01月19日 04:12:07 +01:00

【镜像/备份版本 - Mirror/Archive】

这是原专案 qq-dump 的公开镜像/备份,仅为了防止原仓库因外部原因(如 DMCA)被删除或无法访问而建立未对任何源码进行修改,仅更新 README 以添加备份说明。

如果原仓库有更新,请优先使用官方版本

强烈谴责腾讯等公司利用 DMCA 机制大规模删除用户数据相关开源工具的流氓行为!

(以下为原专案内容,未经任何改动)


QQ DUMP

极速的 Android 端 NTQQ 数据库密钥提取、解密及聊天记录导出工具。遵循 KISS 原则与 Unix 哲学, 针对移动端闪存优化 I/O 策略, 最小化读写磨损。

English | 简体中文

License: GPL v3 Shell Check

依赖

  • Root 权限
  • sqlcipher 二进制文件
  • python

qq-dump 会使用 termux 的二进制文件, 进入 Termux 使用以下命令补全依赖

pkg install -y sqlcipher git coreutils python

安装

你需要一款终端模拟器, 例如 termux/termux-app

git clone https://github.com/miniyu157/qq-dump.git ~/.local/bin/qq-dump-main
ln -s ~/.local/bin/qq-dump-main/qq-dump ~/.local/bin/qq-dump

如果指定了其它软链接名称, 则下文用法中替换为你的自定义名称

Note

确保 ~/.local/bin 位于 PATH 环境变量中

Tip

qq-dump 会尝试自动更新, 若想要禁用更新, 新建一个 .dev 空文件在 qq-dump 根目录即可

用法

快速开始

qq-dump chat /sdcard

dumpkey: 获取账号信息与密钥

qq-dump key [--raw]

--raw: 获取机器可读的原始数据, 通常用于管道操作


dumpdb: 解密数据库, 依赖 ./dumpkey 获取密钥

qq-dump db [--raw] [--use-disk] [path=db_output/]

--raw: 简化输出, 通常用于管道操作

--use-disk: 改为使用磁盘读写临时文件, 默认使用 /tmp (tmpfs)

PATH: 指定一个新的输出路径, 需要确保那个文件夹存在。默认为 db_output/

Tip

如果你追求更快的速度, 可以直接指定输出目录为 /tmp

Note

如果脚本所在文件夹的 ./db_list.txt 存在且非空, 则仅解密列表中指定的数据库, 默认有 nt_msg.db 和 profile_info.db, 每行一个文件名


dumpchat: 导出人类可读的聊天记录文本, 依赖 ./dumpdbchat_export 中的 Python 脚本

qq-dump chat <OUTDIR>

这个命令内部调用了 ./dumpdb --raw /tmp, 中间文件 100% 存在于内存中, 速度极快

QQ DUMP 内嵌了 miniyu157/QQRootFastDecrypt 中的 python 脚本。我修改了部分参数解析, 还未做更多的优化和适配

虽然 QQRootFastDecrypt 仓库已经归档, 但是其中的 export_chats.py 完成度非常高, 它是 100% 由 LLM 完成的, 所以难以维护

我正在写最新的功能, 查看 提交记录 以了解详情, 例如从 4f38eae 开始

chat_export/LICENSE 中的署名 "KlxPiao", 就是我的另一个笔名


别名

  • db = database
  • key = k

开发与调试

启动 ./mock 即可模拟 Android 的文件系统环境, 前提是安装了 prootmksh。 它会将一些 Android 文件夹映射到 ./.mock_env 中, 例如:

  • /data/user/0/com.tencent.mobileqq/...
  • /sdcard
  • /tmp

以及你安装的 mksh, 它让 qq-dump 以为 /system/bin/sh 存在, 实际上指向 /usr/bin/mksh 之类的位置, 如果没有安装 mksh, 则回退到 bash, 但这可能导致兼容性问题

致谢

解密算法思路源自 QQBackup/QQDecrypt

许可证

本项目采用 GNU General Public License v3.0 (GPLv3) 进行授权。 详见 LICENSE 文件。

Copyright (C) 2025 Yumeka miniyu157@163.com