2FASync 標誌

2FASync

TOTP 是依時間產生的動態密碼

沒有收到簡訊,驗證器卻會固定倒數並顯示新代碼,原因是驗證器和服務網站使用事先共享的設定資料。

運算可以在裝置端完成

設定時,網站以 QR Code 或文字金鑰交給驗證器一份秘密。TOTP 會結合該資料與目前時間區間運算,網站則以相符的參數檢查登入時輸入的數字。

大多數使用者熟悉約 30 秒換一次的六位數,但並非所有服務都固定使用相同位數、週期或雜湊演算法。

設定用金鑰比一組短碼更敏感

正在顯示的驗證碼會失效;如果有人取得原始共享金鑰,卻可能自行計算後續的驗證碼。設定 QR Code 不應隨意拍照放到社群、相簿共用資料夾或客服工單。

多一道認證仍要防釣魚

假網站可以試著騙使用者輸入當下有效的 TOTP,因此看到要求提供驗證碼的連結仍應查核網址與登入情境。

若服務提供合適的通行金鑰或硬體安全金鑰,可依風險需求考慮採用;TOTP 本身並非所有攻擊都能阻擋。

為什麼手機沒有網路仍能顯示數字

只要原本已取得共享設定金鑰、時鐘正確,而且應用程式能執行計算,TOTP 產碼本身不需要每次上網詢問原服務。這與簡訊 OTP 等待系統傳送數字的方式不同。

但「離線可以算」不代表能離線完成網站登入,因為提交密碼、驗證碼以及服務端檢查通常仍需要連線。這兩個步驟要分開思考。

如果時鐘不同步,兩部裝置可能落在不同時間區段而顯示不同數字。原網站也可能採用較特別的位數或週期,應以原始註冊設定為準。

手機沒有行動網路,TOTP 還會動嗎?

裝置已保存設定金鑰且時間準確時,可以離線計算代碼;將代碼提交到登入網站仍可能需要連線。