首頁

TOTP 測試向量和示範 Token

本指南把公開的 RFC 6238 TOTP 測試向量和簡單示範 secret 放在一起,方便你在使用真實帳號設定金鑰前,測試 Authenticator 應用程式、本機 2FA 產生器或 TOTP 程式庫。它可以幫助排查 algorithm、digits、period、裝置時間和 otpauth 參數不一致的問題。

標準 RFC 6238 測試向量

本頁表格列出 RFC 6238 Appendix B 公開的固定 Unix 時間戳 8 位 TOTP 預期輸出。你可以不用真實 2FA 帳號,就檢查 SHA-1、SHA-256 和 SHA-512 實作是否正確。

如何使用測試向量表

把你的 TOTP 實作設定為對應 hash 演算法的 RFC 測試 secret、8 位驗證碼和 30 秒週期,然後在每個列出的 Unix 時間戳比較產生值和預期輸出。

公開示範設定金鑰

用於非敏感測試時,可以使用公開 Base32 設定金鑰 JBSWY3DPEHPK3PXP,並設定 SHA-1、6 位驗證碼和 30 秒週期。這個金鑰只用於測試行為,不能用於保護真實帳號。

otpauth 測試 URI

對應的 otpauth URI 是 otpauth://totp/2FA%20Test:test-token?secret=JBSWY3DPEHPK3PXP&issuer=2FA%20Test&algorithm=SHA1&digits=6&period=30。裝置時間一致時,相容應用程式應產生相同的目前驗證碼。

如何對比產生的驗證碼

把示範金鑰貼到本站本機產生器,再把同一個金鑰作為手動設定金鑰加入你的 Authenticator 應用程式。在同一個 30 秒窗口內對比目前 6 位驗證碼。

如果測試驗證碼不同

檢查裝置時間、時區、algorithm、digits、period,以及應用程式中保存的 Base32 secret 是否完全相同。多數不一致來自時間漂移,或複製時漏掉、改錯了某個字元。

安全測試邊界

不要公開或分享真實 2FA 設定金鑰。測試真實帳號時,優先使用 #secret= fragment 快捷方式,因為 fragment 留在瀏覽器中,不會隨 HTTP 請求傳送。

這個測試不能驗證什麼

本機 token 測試可以確認 TOTP 計算是否相容,但不能證明某個帳號一定接受該驗證碼,不能恢復遺失的 2FA,也不能批准推送登入、產生簡訊、電子郵件、Passkey 或恢復碼。

RFC 6238 TOTP 測試向量

這些公開的 RFC 6238 Appendix B 測試向量使用 8 位 TOTP 值,涵蓋 SHA-1、SHA-256 和 SHA-512,可用於檢查 TOTP 產生器、Authenticator 應用程式或程式庫是否符合標準演算法。

Unix 時間UTC 時間SHA-1 預期 TOTPSHA-256 預期 TOTPSHA-512 預期 TOTP
591970-01-01 00:00:59 UTC942870824611924690693936
11111111092005-03-18 01:58:29 UTC070818046808477425091201
11111111112005-03-18 01:58:31 UTC140504716706267499943326
12345678902009-02-13 23:31:30 UTC890059249181942493441116
20000000002033-05-18 03:33:20 UTC692790379069882538618901
200000000002603-10-11 11:33:20 UTC653531307773770647863826

RFC 6238 TOTP 測試向量 (JSON)

標準與參考資料

常見問題

什麼是 TOTP 測試向量?

TOTP 測試向量是一組已知輸入和預期輸出,用於驗證實作是否正確。RFC 6238 測試向量固定了時間戳、hash 演算法、位數和 secret,方便其他實作精確對比。

可以把示範 TOTP secret 用在真實帳號上嗎?

不可以。示範 secret 是公開的,絕不能用於保護真實帳號。它只適合檢查兩個 TOTP 產生器是否能算出相同驗證碼。

為什麼兩個測試 token 顯示不同驗證碼?

最常見原因是裝置時間偏差、period 不同、digits 不同、algorithm 不同,或複製後的 secret 與原始設定金鑰不完全一致。

這個頁面能掃描 QR code 嗎?

不能。這個工具專注於貼上 Base32 設定金鑰和 otpauth://totp/ 連結。如果帳號只顯示 QR code,請優先查找該服務是否提供手動設定金鑰。

測試驗證碼是在本機產生的嗎?

是。TOTP 驗證碼計算在瀏覽器本機執行。真實 secret 請避免放在 path 和 query URL 中,建議使用 #secret=YOUR_BASE32_SECRET 這種 fragment 快捷方式。