應用文檔
超級狗身份認證使用指南
更新時間:2018-11-16 15:12:12 點擊量:
產(chǎn)品簡介
工作原理
超級狗雙因素身份認證可以使網(wǎng)絡訪問者經(jīng)過雙重認證才能獲得網(wǎng)絡訪問授權(quán)。授權(quán)的訪問者必須持有超級狗并且知道其口令。訪問者需要把超級狗插入 USB 接口中,并且輸入正確的口令,以證實自己的身份。如果身份認證服務器不能識別訪問者的身份,網(wǎng)絡訪問將被拒絕。
超級狗雙因素身份認證向用戶提供了比傳統(tǒng)用戶名口令方式更安全的網(wǎng)絡身份認證機制。
工作原理
超級狗利用內(nèi)置算法采用查詢響應的方式對訪問者身份進行驗證和確認。
當身份認證服務器發(fā)給超級狗查詢值時,超級狗使用內(nèi)置算法計算出匹配的響應值,并通過網(wǎng)絡發(fā)送給服務器。查詢值是隨機的,因此攔截超級狗與服務器的通訊數(shù)據(jù)并不能幫助破解。此方式與輸入口令驗證方式相比更安全,更難于破解, 因為口令并沒有在網(wǎng)絡上傳輸。
超級狗采用單向不可逆哈希算法計算響應值。超級狗內(nèi)置了智能卡芯片,能夠有效地防止硬件復制或偽造。超強的硬件保護,使算法不可被非法讀取,從而保障了安全性。
不同開發(fā)商購買的超級狗內(nèi)置的算法因子不同,可以有效防止其他人購買超級狗偽裝成合法用戶。
已通過的測試環(huán)境
服務器端支持 JSP、 ASP.NET 和 PHP。
客戶端支持主流瀏覽器。目前已測試的平臺如下:
客戶端支持主流瀏覽器。目前已測試的平臺如下:
Windows XP: IE8, Firefox, Google Chrome
Windows 7: IE8, IE9, IE10, Firefox, Google Chrome
Windows 8: IE10, Firefox, Google Chrome
Windows 8.1: IE11, Firefox, Google Chrome
Windows 10: IE11, Firefox, Google Chrome
用戶登錄流程
以使用 IE 瀏覽器為例,使用其它瀏覽器時略有區(qū)別。
以使用 IE 瀏覽器為例,使用其它瀏覽器時略有區(qū)別。
1. 瀏覽登錄頁面,如 http://localhost:8080/Authentication/Login.jsp ??蛻舳藭詣犹崾炯虞d安裝 ActiveX 控件,點擊安裝,完成控件的安裝,如果已經(jīng)安裝了控件則不會提示。
2. 頁面的 javascript 代碼調(diào)用控件的 SetCheckDogCallBack(“insertDog”,”removeDog”) 方法設置 js 回調(diào)函數(shù)。“insertDog”插入超級狗的響應函數(shù),“removeDog”拔出超級狗的響應函數(shù)。
3. 頁面的 javascript 代碼調(diào)用控件的 Open (Scope, AuthorCode) 方法,打開超級狗。只有打開狗以后才可訪問后續(xù)的處理函數(shù),使用結(jié)束后需調(diào)用 Close () 方法關(guān)閉超級狗。參數(shù) Scope 表示在多個超級狗同時存在的情況下,可以打開特定的狗;參數(shù)AuthorCode 是從服務端的 auth_code.xml 配置文件中讀取的算法數(shù)據(jù)。
4. 頁面的 javascript 代碼調(diào)用控件的 VerifyUserPin(PIN) 方法,驗證用戶輸入的口令與超級狗中的口令是否一致。
5. 頁面的 javascript 代碼調(diào)用 getChallenge() 方法發(fā)送 httpRequest 請求,獲取服務端隨機生成的挑戰(zhàn)數(shù)據(jù),服務端同時把數(shù)據(jù)記錄到 session 中。
6. 頁面的 javascript 代碼調(diào)用控件的 GetDigest (PIN) 方法,對挑戰(zhàn)數(shù)據(jù)進行加密處理。
7. 頁面的 javascript 代碼調(diào)用 doAuth () 方法發(fā)送 httpRequest 請求,把從ActiveX 控件中獲取的 DogID 和加密的挑戰(zhàn)數(shù)據(jù)發(fā)送給服務端。服務端的verifyDigest()方法對數(shù)據(jù)進行比對。
8. 對登錄的用戶進行數(shù)據(jù)庫(Access Database)的查詢匹配,如果匹配成功則可以訪問
主頁。
用戶注冊流程
以使用 IE 瀏覽器為例,使用其它瀏覽器時略有區(qū)別。
1. 瀏覽登錄頁面,如: http://localhost:8080/Authentication/Register.jsp ??蛻舳藭詣蛹虞d提示安裝 ActiveX 控件,點擊安裝,完成控件的安裝,如果已經(jīng)安裝了控件則不會提示。
2. 頁面的 javascript 代碼調(diào)用控件的 SetCheckDogCallBack(“insertDog”,”removeDog”) 方法設置 js 回調(diào)函數(shù)。“insertDog”,插入超級狗的響應函數(shù),“removeDog”拔出超級狗的響應函數(shù)。
3. 頁面的 javascript 代碼調(diào)用控件的 Open (Scope, AuthorCode) 方法,打開超級狗。只有打開狗以后才可訪問后續(xù)的處理函數(shù),使用結(jié)束后需調(diào)用 Close () 方法關(guān)閉超級狗。參數(shù) Scope 表示在多個超級狗同時存在的情況下,可以打開特定的狗;參數(shù)AuthorCode 是從服務端的 auth_code.xml 配置文件中讀取的算法數(shù)據(jù)。
4. 頁面的 javascript 代碼調(diào)用控件的 VerifyUserPin(PIN) 方法,對于新注冊的超級狗需要先驗證,輸入初始參數(shù)“12345678”。
5. 頁面的 javascript 代碼調(diào)用 getChallenge() 方法發(fā)送 httpRequest 請求,獲取服務端隨機生成的挑戰(zhàn)數(shù)據(jù),服務端同時把數(shù)據(jù)記錄到 session 中。
6. 頁面的 javascript 代碼調(diào)用控件的 GetDigest (PIN) 方法,對挑戰(zhàn)數(shù)據(jù)進行加密處理。
7. 頁面的 javascript 代碼調(diào)用 doAuth () 方法發(fā)送 httpRequest 請求,把從ActiveX 控件中獲取的 DogID 和加密的挑戰(zhàn)數(shù)據(jù)發(fā)送給服務端。服務端的verifyDigest()方法對數(shù)據(jù)進行比對。
8. 對新注冊的用戶記錄用戶信息,把信息寫入數(shù)據(jù)庫(Access Database)。
9. 數(shù)據(jù)庫寫入成功后,調(diào)用 ActiveX 控件的 RegisterUser(username, PIN)方法,把注冊信息寫入到超級狗里。
用戶修改口令流程
以使用 IE 瀏覽器為例,使用其它瀏覽器時略有區(qū)別。
1. 瀏覽登錄頁面,如:http://localhost:8080/Authentication/ModifyPin.jsp ??蛻舳藭詣蛹虞d提示安裝 ActiveX 控件,點擊安裝,完成控件的安裝,如果已經(jīng)安裝了控件則不會提示。
2. 頁面的 javascript 代碼調(diào)用控件的 SetCheckDogCallBack(“insertDog”,”removeDog”) 方法設置 js 回調(diào)函數(shù)。“insertDog”,插入超級狗的響應函數(shù),“removeDog”拔出超級狗的響應函數(shù)。
3. 頁面的 javascript 代碼調(diào)用控件的 Open (Scope, AuthorCode) 方法,打開超級狗。只有打開狗以后才可訪問后續(xù)的處理函數(shù),使用結(jié)束后需調(diào)用 Close () 方法關(guān)閉超級狗。參數(shù) Scope 表示在多個超級狗同時存在的情況下,可以打開特定的狗;參數(shù)AuthorCode 是從服務端的 auth_code.xml 配置文件中讀取的算法數(shù)據(jù)。
4. 頁面的 javascript 代碼調(diào)用控件的 VerifyUserPin(PIN) 方法,驗證用戶輸入的舊口令與超級狗中的口令是否一致。
5. 頁面的 javascript 代碼調(diào)用控件的 ChangeUserPin (newPIN) 方法,修改新口令為 newPIN。
詳細函數(shù)說明請下載“超級狗身份認證使用指南”
詳細函數(shù)說明請下載“超級狗身份認證使用指南”