2FA Generator
首頁
TOTP AUTHENTICATOR

無法掃描 2FA QR code

2FA QR code 無法掃描時,使用手動金鑰、otpauth URI 或 QR 圖片

無法掃描 2FA QR code 時怎麼辦

當帳號安全頁面顯示 2FA QR code,但 Authenticator 應用程式無法掃描時,可以使用這個頁面。最穩妥的備用方案是手動設定金鑰。如果你有清晰的 QR code 截圖,且瀏覽器支援本機條碼辨識,頁面也可以在本機讀取 otpauth 資料。

Authenticator 應用程式相容性

這個產生器適用於 Google Authenticator、Microsoft Authenticator、1Password、Bitwarden、2FAS、FreeOTP,以及許多 2FA/MFA 登入流程使用的標準 TOTP 設定金鑰。只要服務提供手動設定金鑰、Base32 secret 或 otpauth URI,就可以用來產生驗證碼。

TOTP 參數與排錯

大多數帳號使用 SHA-1、6 位驗證碼和 30 秒週期。如果驗證碼不被接受,優先檢查複製的金鑰、裝置時間,以及服務是否要求 8 位驗證碼、SHA-256、SHA-512 或其他週期。

QR code 圖片辨識

如果服務只顯示 Authenticator QR code,可以儲存或截圖 QR code 圖片,再點擊辨識 QR 圖片。支援的瀏覽器會用內建 BarcodeDetector API 在本機讀取 otpauth URI;不支援時仍可使用手動設定金鑰或貼上 otpauth 文字。

尋找手動設定金鑰

大多數 2FA 設定頁面會提供「無法掃描」「輸入設定金鑰」「手動金鑰」或「secret key」之類的入口。這個 Base32 金鑰通常就是 QR code 裡編碼的同一個共享 secret。

只在合適時使用 QR code 截圖

當瀏覽器支援本機 QR 圖片辨識,且截圖足夠清晰時,QR code 截圖可以被讀取。頁面不會請求攝影機權限,也不會把圖片上傳到後端服務。

送出前檢查參數

如果服務顯示 algorithm、digits 或 period,請在使用驗證碼前匹配這些參數。大多數 Authenticator 設定使用 SHA-1、6 位和 30 秒週期。

產生器支援矩陣

用這個矩陣快速確認本機 TOTP/2FA 產生器支援哪些輸入,以及複製驗證碼前應檢查哪些設定。

需求輸入或設定需要檢查結果
手動 2FA 設定金鑰可帶空格、橫線或 padding 的 Base32 secret從帳號安全頁面複製完整金鑰輸入框按原樣顯示貼上內容,計算時在本機規範化
otpauth 設定連結來自 Authenticator QR code 或設定頁的 otpauth://totp/ URIURI 包含 secret 參數,以及可選 issuer、digits、period、algorithm工具讀取支援的 TOTP 參數並更新產生器選項
Authenticator QR 圖片QR 截圖或儲存的圖片瀏覽器支援本機 BarcodeDetector APIQR 在瀏覽器內讀取,不需要上傳
多個帳號每個 secret 使用一個獨立產生器只有需要另一個帳號或 MFA token 時才新增產生器每個產生器都有自己的名稱、金鑰、倒數和複製按鈕
進階 TOTP 設定SHA-1、SHA-256、SHA-512;6 或 8 位;10 到 120 秒週期如果不是常見 6 位 30 秒預設值,就按服務設定頁匹配驗證碼與 RFC 6238 相容的 Authenticator 應用一致
URL secret 快捷方式#secret= fragment、路徑 secret 或 ?secret= 查詢優先使用 fragment,因為 # 後面的 secret 不會隨 HTTP 請求送出路徑和查詢參數 secret 頁面會以 noindex/no-store 回傳

支援的 2FA 格式與參數

輸入格式

支援 Base32 設定金鑰、帶空格/連字號/padding 的格式化金鑰、完整 otpauth://totp/ 設定連結,以及瀏覽器支援時本機辨識 Authenticator QR code 圖片。

Authenticator 相容性

支援 Google Authenticator 相容 TOTP、Microsoft Authenticator 相容 TOTP、1Password、Bitwarden、2FAS、FreeOTP、Authy 風格設定金鑰以及類似 MFA 應用程式。

TOTP 參數

支援 SHA-1、SHA-256、SHA-512 演算法,6 位或 8 位驗證碼,10 到 120 秒週期,以及常見的 30 秒 Authenticator 倒數。

URL 快速填入

推薦使用 #secret=,因為 URL fragment 不會隨 HTTP 請求送出。路徑和 ?secret= 查詢參數也可用,並會標記 noindex。

QR code 無法掃描時如何設定 2FA

1

尋找無法掃描選項

在帳號設定頁面點擊「無法掃描」「輸入設定金鑰」「手動金鑰」等類似選項,顯示 Base32 設定 secret。

2

使用手動金鑰或 QR code 截圖

把手動金鑰貼到產生器。如果你有清晰的 QR code 截圖,且瀏覽器支援本機 QR code 讀取,也可以選擇該圖片。

3

匹配設定參數

檢查服務是否要求 SHA-256、SHA-512、8 位驗證碼或自訂週期。如果沒有說明,使用常見的 SHA-1、6 位、30 秒預設值。

4

保存 2FA 前先驗證

在帳號設定頁面提交產生的驗證碼,通過後保存恢復碼,再關閉設定頁面。

常見問題

什麼是 TOTP?

TOTP 是基於時間的一次性密碼。Authenticator 應用程式和網站服務共享同一個 Base32 金鑰,再根據目前時間產生通常每 30 秒變更一次的驗證碼。

這個 2FA 工具是在本機運作嗎?

驗證碼計算會在瀏覽器中透過 Web Crypto 完成,不需要登入帳號,也不需要把金鑰提交到後端介面產生驗證碼。使用 URL 快速填入時,建議優先使用 #secret= fragment 形式。

如何使用多個產生器?

預設頁面只有一個產生器。點擊新增產生器後,可以替每個產生器填寫名稱,再分別貼上不同帳號的 2FA 或 MFA secret。

可以在 URL 裡帶 2FA 設定代碼嗎?

可以。建議格式是 https://2fa.chatgpt.org.uk/#secret=YOUR_BASE32_SECRET,也支援 /YOUR_BASE32_SECRET 和 ?secret=YOUR_BASE32_SECRET。

支援哪些 TOTP 參數?

產生器支援 SHA-1、SHA-256、SHA-512,支援 6 位或 8 位驗證碼,並支援 10 到 120 秒週期。otpauth 連結裡的 algorithm、digits、period 參數會自動讀取。

這個工具會建立新的 2FA secret 嗎?

不會。它是把已有的 Authenticator 設定金鑰轉換為目前 TOTP 驗證碼。2FA secret 是由你啟用雙重驗證的網站或應用程式建立的。

我應該保存 2FA 設定金鑰嗎?

應該。重要設定金鑰建議保存在可信的 Authenticator 應用程式或密碼管理器裡。如果沒有設定金鑰或恢復碼,本工具無法幫你恢復帳號存取。

為什麼 2FA 驗證碼無法通過?

常見原因是 Base32 金鑰複製錯誤、裝置時間不準,或者 TOTP 參數不一致。請確認提供 2FA 設定金鑰的網站要求的演算法、位數和週期。

這個工具能讀取 Authenticator QR code 圖片嗎?

支援的瀏覽器可以。選擇 QR code 截圖或圖片後,頁面會在瀏覽器本機讀取 otpauth URI,不會把圖片上傳到伺服器。

為什麼 Authenticator 應用程式掃不了 QR code?

常見原因包括截圖模糊、螢幕亮度低、瀏覽器縮放、深色模式對比度、QR code 損壞,或者 QR code 並不是標準 TOTP otpauth 格式。

可以用手動設定金鑰代替 QR code 嗎?

可以。標準 TOTP 2FA 中,手動設定金鑰通常就是 QR code 裡的 Base32 secret。把它貼上到產生器,並匹配頁面顯示的 TOTP 參數即可。

這個頁面會開啟攝影機掃描嗎?

不會。它只在支援的瀏覽器中讀取你選擇的 QR 圖片檔。站點權限策略已經停用攝影機存取。

功能說明

  • 金鑰輸入框會依照貼上的原始內容顯示,產生驗證碼時再於內部相容空格、連字號和 padding。
  • 每個產生器都會獨立計算 30 秒動態驗證碼,支援自訂名稱、貼上、清除、刪除和點擊驗證碼複製。
  • 預設只顯示一個產生器;需要管理多個帳號、多個 2FA secret 或多個 MFA token 時,再點擊新增產生器。
  • 支援 otpauth:// URI、Base32 secret、URL fragment、path 和 query 參數,方便從書籤或內部工具快速開啟。

URL 快速填入 2FA secret

建議使用 fragment 形式,因為 # 後面的內容不會隨 HTTP 請求傳送到伺服器。path 和 query 形式也支援,但頁面會自動加上 noindex,避免帶有金鑰的 URL 被搜尋引擎收錄。

https://2fa.chatgpt.org.uk/#secret=YOUR_BASE32_SECREThttps://2fa.chatgpt.org.uk/#YOUR_BASE32_SECREThttps://2fa.chatgpt.org.uk/YOUR_BASE32_SECREThttps://2fa.chatgpt.org.uk/?secret=YOUR_BASE32_SECRET

不要把真實 2FA secret 分享給別人;如果只是臨時使用,優先選擇 #secret= 這種 fragment URL。