新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > USB-KEY原理簡(jiǎn)要說明

USB-KEY原理簡(jiǎn)要說明

作者: 時(shí)間:2016-12-12 來源:網(wǎng)絡(luò) 收藏
一、 usbkey實(shí)現(xiàn)身份認(rèn)證原理
采用沖擊響應(yīng)的認(rèn)證方法,登錄時(shí)在服務(wù)器端和客戶端同時(shí)進(jìn)行計(jì)算,客戶端計(jì)算前要先驗(yàn)證USER PIN,通過后在硬件中使用HMAC-MD5密鑰進(jìn)行計(jì)算,服務(wù)器端在服務(wù)器上使用軟件進(jìn)行計(jì)算,比較計(jì)算結(jié)果。

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

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

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

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

四、 系統(tǒng)支持
usbkey采用無驅(qū)設(shè)計(jì),使用方便,兼容性好,支持多種操作系統(tǒng)臺(tái):Windows98(第二版)、Windows2000、WindowsXP、Windows2003等。

五、使用usbkey進(jìn)行身份認(rèn)證
可以應(yīng)用usbkey進(jìn)行沖擊響應(yīng)身份認(rèn)證,替換掉傳統(tǒng)的用戶名和密碼方式,使登錄更加安全。其原理如下圖所示:






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

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

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

3.硬件安裝問題?
答:win98二版安裝時(shí)需要win98的系統(tǒng)安裝盤上的base6.cab包。win2000/XP/2003不需要系統(tǒng)安裝盤。如果在計(jì)算機(jī)上不能認(rèn)到usbkey,請(qǐng)使用USB鼠標(biāo)或者USB鍵盤來檢測(cè)計(jì)算機(jī)的系統(tǒng)是否支持標(biāo)準(zhǔn)HID設(shè)備。

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


關(guān)鍵詞: USB-KEY原理簡(jiǎn)要說

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉