Steam TOTP - Pro 版独有的定制算法
为什么 Steam 特殊
Steam 的双因子认证(Steam Guard Mobile Authenticator)使用了非标准 TOTP 算法:
- 标准 TOTP 用 SHA-1 + 30 秒周期 + 6 位数字
- Steam 用自定义哈希 + 时间周期 + 字母数字混合(字母 O/I 被排除)
- 输出不是 0-9 的纯数字,而是 23456789BCDFGHJKMNPQRTVWXY(排除了易混淆字符)
官方只在 Steam 手机 App 里内置了这个算法,开放 2FA 应用(Google Authenticator、Authy 等)都不支持——因为 Steam 没公开算法细节。

KeePassDX 的支持
KeePassDX Pro 版实现了 Steam 的定制算法(逆向工程得到)。这是 KeePassDX 独有的功能——大多数开源密码管理器都不支持 Steam TOTP。
配置步骤
- 编辑条目 → 添加 OTP
- 把类型切到 "Steam"
- 输入密钥:从 Steam Guard 导出你的共享密钥(不是通常的 otpauth:// 链接,Steam 的链接格式不同)
- KeePassDX 会自动显示 Steam 风格的字母数字码(5 位,字母数字混合)
- 保存
如何拿到 Steam 密钥
从 Steam 手机 App 获取:
- 打开 Steam App → 设置 → Steam Guard
- 选择"添加验证器"(或重置)
- 手机会显示一个
otpauth://...?secret=xxx&issuer=Steam格式的二维码 - 扫码后提取 Secret Key 部分
- 把密钥输入 KeePassDX 的 Steam OTP 配置里
密钥文件方式(更安全)
Steam 也可以导出一个 maFile.sda 格式的 JSON 文件。某些版本的 KeePassDX 可以直接导入这个文件,自动填充所有参数。
免费版怎么办
如果你不想买 Pro 版,替代方案:
- 继续用 Steam 手机 App——双轨并行,KeePassDX 存密码,Steam App 存验证码
- 在 KeePassXC(桌面端)里配置——KeePassXC 也支持 Steam TOTP
- 在 KeePass2Android 里配置——另一个支持 Steam 算法的开源 Android 密码管理器
验证 Pro 解锁
Steam TOTP 功能是 KeePassDX Pro 的主要卖点之一。解锁 Pro 后:
- Steam 算法配置界面解锁
- 实时预览 Steam 风格字母数字码
- Magikeyboard 自动显示/填充 Steam 验证码
- 成本约 4 美元一次性买断(Google Play 内购)