banner
小忧忧

Hi,小忧忧

比起昨天还要高,比起前天连升八度!
github
tg_channel

將 Steam 2FA 添加到 Bitwarden 中

Steam 的令牌本質是個 2FA(多因素驗證),使用的 TOTP 算法,所以可以將手機端 TOTP 提取到 Bitwarden 食用

Note

提取手機端 Steam TOTP 需要手機 ROOT 並安裝 LSP

然後安裝 SteamGuardExtractor 或者 SteamGuardDump LSP 模塊並應用到 Steam 後,進入 Steam 會自動複製令牌,如下方所示

{
    "accounts": {
        "xxxxxxxxxxxxxxxx": {
            "shared_secret": "xxxxx+testxxxxxxxxxxxxxx=",
            "identity_secret": "/xxxxxxxxxxxxxxxxxxxxx=",
            "secret_1": "xxxxxxxxxxxxxxxxxxx=",
            "serial_number": "xxxxxxxxxxxxxxxxxx",
            "revocation_code": "xxxxxx",
            "account_name": "xxxxx",
            "token_gid": "xxxxxxxxxxxx",
            "steamguard_scheme": 2,
            "steamid": "xxxxxxxxxxxxxxxxxx"
        }
    }
}

根據 SteamTools #2276 說明和提供的 Python 腳本,我們需要將 shared_secretBase64 轉換為 Base32
也就是將 YOUR_SHARED_SECRET 替換為我上方提取出來的令牌示例中 shared_secret 的值

import base64
shared_secret = 'xxxxx+testxxxxxxxxxxxxxx='
print("Secret:", base64.b32encode(base64.b64decode(shared_secret)).decode())

運行這個 python 文件,如果你的電腦沒有安裝 Python,可以使用菜鳥工具的 Python3 在線工具 運行

運行後,終端輸出 Y4OHDR7LL2ZNY4OHDRY4OHDRY4OHC===
那麼我的 Steam TOTP 就是 Base32 格式的 shared_secret 前面添加 steam://

steam://Y4OHDR7LL2ZNY4OHDRY4OHDRY4OHC===

將這個 TOTP 添加到 Bitwarden 的 驗證器密鑰 (TOTP) 中,並確認下生成的 5 位校驗碼與手機端是否同步,如果同步即正確


* 如果你的手機沒有 Root 權限,可以參考下方的教程獲取 shared_secret

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。