Authenticator App 兩步驗證會不會形成亞馬遜帳號關聯?

今天聽人說,由於用Authenticator App作亞馬遜兩步驗證形成了賬號關聯……算法

我給你們解釋一下Authenticator的實現原理,做爲計算機專業科班出身的我,這次從各方面瞭解並通過本身親測。已證明:用Authenticator App作亞馬遜兩步驗證形成關聯的說法確實不成立!數據庫

在說Authenticator原理以前,我先科普下亞馬遜的關聯原則:除了帳戶信息資料(身份證實、信用卡、收款賬號、電話號碼、地址等)和 產品信息內容等關聯因素以外,登陸賬號的設備的IP地址、網卡MAC地址、瀏覽器Cookie等也會被亞馬遜識別。瀏覽器

另外關聯又分爲強關聯和弱關聯,單純的由於IP或其餘某一個點相同通常不會即刻把你的店鋪關閉,不少時候賬號被凍結都是日積月累的問題形成的。因此,當你的帳戶被告知關聯的時候多是你以前的一些操做行爲形成的。服務器

通俗地講,Authenticator的實現原理就跟咱們熟悉的網銀的實體動態口令牌的原理差很少。簡單來講,Authenticator的實現原理是基於服務器端(Amazon)隨機生成的密鑰,客戶端(Authentictor)使用服務器端的密鑰和時間戳經過算法生成動態驗證碼。該驗證碼的生成只跟密鑰和時間戳有關,客戶端在飛行模式下都是能夠運行的,跟網絡等無關,因此就不用擔憂這個關聯問題了。網絡

 

 
 

那麼,我再說一下複雜的口令原理:3d

1、用戶須要開啓Amazon Authenticator服務時,orm

1.服務器隨機生成一個相似於『DPI45HKISEXU6HG7』的密鑰,而且把這個密鑰保存在數據庫中。產品

2.在頁面上顯示一個二維碼,內容是一個URI地址(otpauth://totp/帳號?secret=密鑰)io

3.客戶端掃描二維碼,把密鑰『DPI45HKISEXU6HG7』保存在客戶端。form

2、用戶須要登錄時

1.客戶端每30秒使用密鑰『DPI45HKISEXU6HG7』和時間戳經過一種『算法』生成一個6位數字的一次性密碼,如『401651』。

 

 
 

2.用戶登錄時輸入一次性密碼『401651』。

3.服務器端使用保存在數據庫中的密鑰『DPI45HKISEXU6HG7』和時間戳經過同一種『算法』生成一個6位數字的一次性密碼。你們都懂控制變量法,若是算法相同、密鑰相同,又是同一個時間(時間戳相同),那麼客戶端和服務器計算出的一次性密碼是同樣的。服務器驗證時若是同樣,就登陸成功了。

原理就是這麼簡單,這種驗證方式,比手機方便多了,特別是帳號多的狀況下。

做者:夏_COCO 連接:https://www.jianshu.com/p/d4d9a815a3d1 來源:簡書 簡書著做權歸做者全部,任何形式的轉載都請聯繫做者得到受權並註明出處。
相關文章
相關標籤/搜索