谷歌驗證 Google Authenticator 的實現原理是什麼?

時間 2021-05-12 05:00:13

1樓:靳禹

How does Google Authenticator work? 先翻牆,然後可以搜尋 how otp works

2樓:不爐齋

原理可以參考這篇文章(SEETEE Google賬戶兩步驗證的工作原理)

客戶端和伺服器事先協商好乙個金鑰K,用於一次性密碼的生成過程,此金鑰不被任何第三方所知道。此外,客戶端和伺服器各有乙個計數器C,並且事先將計數值同步。

進行驗證時,客戶端對金鑰和計數器的組合(K,C)使用HMAC(Hash-based Message Authentication Code)演算法計算一次性密碼,公式如下:

HOTP(K,C) = Truncate(HMAC-SHA-1(K,C))

上面採用了HMAC-SHA-1,當然也可以使用HMAC-MD5等。HMAC演算法得出的值位數比較多,不方便使用者輸入,因此需要截斷(Truncate)成為一組不太長十進位制數(例如6位)。計算完成之後客戶端計數器C計數值加1。

使用者將這一組十進位制數輸入並且提交之後,伺服器端同樣的計算,並且與使用者提交的數值比較,如果相同,則驗證通過,伺服器端將計數值C增加1。如果不相同,則驗證失敗。

谷歌賬戶的兩步驗證(2 step verification)有多安全?

同意樓上的說法。理論上TOTP是服務端和客戶端各持有乙個初始密碼,登入時兩邊基於乙個相同的時間 每30秒或60秒 進行類似雜湊值的計算,只要是同乙個初始密碼,同一時間就可以算出同乙個兩步驗證用的6位密碼。這種方式理論上可以很安全,但實際卻很骨感,我構思了以下幾個場景,有可能會搞出事情來 兩端都是基於...

谷歌賬戶開了兩步驗證,手機號換了沒法登入怎麼破?

今時今日我才翻到這篇攻略,綜合樓上所有郵箱大師相關的方案均失敗,額外測試了安卓QQ郵箱,ios郵箱大師,windows下正常更改統統失敗。直觀感受是幫助內容變了。按照樓上諸位截圖的步驟,走到最後幾步內容是不一樣的,藍字 輔助號碼頁面.那個鏈結沒了。但是.經過2 3小時的冒險,我最後成功移除了不能使用...

谷歌為何會放棄平板業務?相比 iPad ,谷歌 Slate 系列平板有哪些欠缺和不足?

早為 還以為是谷歌放棄安卓平板的業務 仔細一看,原來谷歌連自家的chromeOS平板都放棄了才一年啊大哥,乙個新系列就直接掐了,真不愧是谷歌你啊 安卓平板掐了可以理解,畢竟現在的chromeOS基本相當於安卓 chrome瀏覽器。在iPad強勢,而andrid系統市場足夠壟斷的情況下,谷歌沒有必要像...