新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > USB-KEY原理簡要說明

USB-KEY原理簡要說明

作者: 時間:2016-12-12 來源:網絡 收藏
一、 usbkey實現身份認證原理
采用沖擊響應的認證方法,登錄時在服務器端和客戶端同時進行計算,客戶端計算前要先驗證USER PIN,通過后在硬件中使用HMAC-MD5密鑰進行計算,服務器端在服務器上使用軟件進行計算,比較計算結果。

二、 usbkey的優(yōu)點
1、兼容性好
usbkey不僅對打印機、掃描儀等設備具有高度的透明性,特別是多個相同的usbkey也可以使用USB HUB并聯在一起使用,相互之間不會干擾。

2、速度快
對于使用usbkey加密后的軟件,其運行速度同加密前區(qū)別不大,usbkey能夠在很短的時間內處理完畢,保證用戶程序的順暢運行。

3、使用簡便
usbkey在API函數調用上從用戶角度出發(fā),最大限度簡化使用接口。用戶能夠在很短的時間內掌握usbkey的使用方法,節(jié)約開發(fā)上所投入的時間。

三、 高加密強度和身份認證相結合
usbkey是全新設計的高強度usbkey,有完整的用戶管理。
(1)用戶必須在超級用戶狀態(tài)下(SO PIN驗證通過),通過自己設定的不超過51字節(jié)的種子生成PID,以后打開和關閉usbkey都需要通過PID來完成。PID的生成算法是在usbkey內部完成的,而且是不可逆的,也就是說,只有生成者才知道什么樣的種子能生成什么樣的PID,別的人即使知道PID,同時也能夠調用這個計算過程,但因為不知道種子是什么,是無法生成和您相同的PID的硬件,保證了用戶的usbkey的獨特性。
(2)用戶在對usbkey中的數據進行讀寫操作時需要進行USER PIN驗證,又增加了一層對軟件的保護性。
(3)用戶可以在配置設備時設為只讀,那么usbkey中的數據只可以讀取,而不能被更改,密鑰也不能被修改,從而保證了鎖內數據不被篡改。
(4)使用usbkey硬件中的HMAC-MD5算法進行沖擊響應身份認證。HMAC-MD5密鑰存在usbkey中,該密鑰只用于計算,任何人獲取不到密鑰的內容,保證密鑰的安全性。
(5)提供了安全方便的外殼加密工具,使加密工作非常簡單。

四、 系統支持
usbkey采用無驅設計,使用方便,兼容性好,支持多種操作系統臺:Windows98(第二版)、Windows2000、WindowsXP、Windows2003等。

五、使用usbkey進行身份認證
可以應用usbkey進行沖擊響應身份認證,替換掉傳統的用戶名和密碼方式,使登錄更加安全。其原理如下圖所示:






在整個認證過程中,采用沖擊響應的認證方式。當需要在網絡上驗證用戶身份時,先由客戶端向服務器發(fā)出一個驗證請求。服務器接到此請求后生成一個隨機數并通過網絡傳輸給客戶端(此為沖擊)??蛻舳藢⑹盏降碾S機數提供給,由使用該隨機數與存儲在中的密鑰進行HMAC-MD5運算并得到一個結果作為認證證據傳給服務器(此為響應)。與此同時,服務器也使用該隨機數與存儲在服務器數據庫中的該客戶密鑰進行HMAC-MD5運算,如果服務器的運算結果與客戶端傳回的響應結果相同,則認為客戶端是一個合法用戶。

六、常見問題
1. 什么是USB接口,它有何優(yōu)點?
答:USB接口的含義是通用串行總線,英文全稱是Universal Serial Bus。是一種新的接口標準??稍斠妛ww.usb.org。優(yōu)點是即插即用、支持熱插拔、傳輸速度快、可通過擴展連接多達127個USB設備,不用擔心USBusbkey與打印機等外設的沖突。

2.為什么我的USBusbkey插上后顯示未知設備?
答:一般有3種情況。(1)有干擾或是接觸不良,重新插入或者更換計算機上的其它USB插口。(2)usbkey采用無驅設計,在win98二版以上的操作系統使用系統自帶的驅動,不需要獨立安裝驅動。但在不完善的操作系統安裝過程中會去掉系統驅動,用戶需要在同版本的操作系統種將WINDOWSDriver Cachei386driver.cab文件拷貝到不完善的操作系統的相應目錄中。(3)請檢查是否關閉了BIOS中的USB支持選項。

3.硬件安裝問題?
答:win98二版安裝時需要win98的系統安裝盤上的base6.cab包。win2000/XP/2003不需要系統安裝盤。如果在計算機上不能認到usbkey,請使用USB鼠標或者USB鍵盤來檢測計算機的系統是否支持標準HID設備。

4.usbkey的PID是否安全?
答:非常安全。它是由一個長度不超過51個字節(jié)的字符串作為種子,usbkey會根據這個種子生成 PID。這個生成算法是在usbkey內部完成的,而且是不可逆的,也就是說,只有生成者才知道什么樣的種子能生成什么樣的PID,別的人即使知道PID,也能夠調用這個計算過程,但因為不知道種子是什么,是無法生成您的PID的,從而無法生產出一個與您手中一致的usbkey硬件。


評論


相關推薦

技術專區(qū)

關閉