🌐 Language: English | 简体中文
[!IMPORTANT] 🔒 安全与隐私
- ✅ 全程本地处理:脚本完全离线运行,所有密钥只在本机处理,不会上传到任何服务器或第三方服务。
⚠️ 迁移完成后请立即清理本地敏感文件:删除out/目录(uris.txt与二维码 PNG 包含全部密钥);.2fas备份请妥善保管或删除。
将 2FAS(Two Factor Authenticator)导出的 .2fas 备份批量转换为 Google Authenticator 可导入的 otpauth-migration:// 二维码,扫码即可一次导入多个账号。
- 支持加密导出:
.2fas设置了导出密码时,运行中提示输入,本地解密(PBKDF2-HMAC-SHA256 ×10000 + AES-256-GCM,与 2FAS 官方格式一致) - 批量迁移:全部账号打包进一个或多个迁移二维码
- 自动拆批:二维码版本控制在 ≤ 15(
--max-version可调),确保手机轻松可扫 - 中英双语界面:自动跟随系统语言(中文环境显示中文,其他默认英文),可用
--lang zh|en切换 - 全程本地离线:密钥不经过任何第三方服务
pip install qrcode pillow cryptography
python 2fas_to_ga.py 你的导出.2fas
python 2fas_to_ga.py export.2fas --lang en # 强制英文
python 2fas_to_ga.py export.2fas --lang zh # 强制中文- 输入:2FAS 导出的
.2fas文件(UTF-8 JSON),也兼容 zip / tokens.json - 输出:
out/migration_XX.png(迁移二维码)+out/uris.txt(迁移 URI,与 PNG 一一对应)
迁移二维码必须通过「转移账号」入口导入,不要用主界面右下角的
+号(那是普通添加账号),否则会提示 "Please migrate your codes from the menu"。
- 打开 Google Authenticator
- 点右上角 菜单(⋮)→ 转移账号 → 导入账号
- 点 「扫描二维码」,逐个扫描
out/下的 PNG
导入后收到确认即完成,全部账号应出现在列表中。
- Steam 令牌无法迁移(Google Authenticator 不支持 Steam 算法),脚本会跳过并列出
- HOTP 计数器会随迁移保留
- 迁移 URI 内含全部密钥,导入完成后请删除
out/目录 - 有密码导出时需安装
cryptography库
© FantasyMax · MIT