專(zhuān)利名稱(chēng):一種基于雙usb密鑰設(shè)備的usb接口鎖的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)數(shù)據(jù)安全領(lǐng)域,具體的說(shuō)是提供了一種防止USB接口泄露數(shù)據(jù)的USB接口鎖。
背景技術(shù):
隨著信息化程度越來(lái)越高,信息安全顯得格外重要。為了防止計(jì)算機(jī)數(shù)據(jù)泄露,很多公司和部門(mén)都采取了各種方法來(lái)防止非法的數(shù)據(jù)拷貝。一般來(lái)說(shuō),網(wǎng)絡(luò)接口和USB接口是數(shù)據(jù)泄露的源頭。網(wǎng)絡(luò)接口泄露數(shù)據(jù)的問(wèn)題可以采用斷開(kāi)和外界網(wǎng)絡(luò)連接的辦法解決,如拆除網(wǎng)卡或者封閉局域網(wǎng)。相比之下,USB接口的情況要復(fù)雜很多,眾多USB非移動(dòng)存儲(chǔ)設(shè)備,比如說(shuō)USB接口鼠標(biāo),USB接口鍵盤(pán),打印機(jī)等都需要使用計(jì)算機(jī)USB接口,直接在BIOS里禁用USB接口或者拆除USB接口會(huì)給計(jì)算機(jī)用戶(hù)帶來(lái)不必要的麻煩;另外,用戶(hù)可能需要從USB移動(dòng)存儲(chǔ)設(shè)備向計(jì)算機(jī)拷貝數(shù)據(jù),而不是完全禁止對(duì)移動(dòng)存儲(chǔ)設(shè)備的訪問(wèn)。
目前存在的防止USB接口泄露數(shù)據(jù)的方案僅考慮了泄露數(shù)據(jù)的問(wèn)題,而忽略了方案本身的漏洞。普通方案一般都將整個(gè)加鎖解鎖控制程序安裝在目標(biāo)計(jì)算機(jī)上,解鎖執(zhí)行過(guò)程可以反復(fù)被跟蹤,對(duì)計(jì)算機(jī)底層熟悉的用戶(hù)可以通過(guò)softice一類(lèi)的工具修改解鎖程序;普通方案的安全驗(yàn)證一般只需要提供用戶(hù)名和用戶(hù)密碼,這種基于字串的驗(yàn)證容易被破解,不如具有唯一硬件標(biāo)識(shí)的實(shí)物載體安全,如自動(dòng)存款機(jī)的磁卡。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種低成本,靈活,能有效防止USB接口泄露數(shù)據(jù)的基于雙USB密鑰設(shè)備的USB接口鎖。安裝了基于雙USB密鑰設(shè)備的USB接口鎖的計(jì)算機(jī),通過(guò)USB接口向USB移動(dòng)存儲(chǔ)設(shè)備拷貝數(shù)據(jù)之前必須使用一對(duì)USB密鑰設(shè)備和管理員設(shè)定的用戶(hù)密碼解開(kāi)對(duì)USB移動(dòng)存儲(chǔ)設(shè)備的訪問(wèn)限制。
本發(fā)明包括一對(duì)USB密鑰設(shè)備,一組加鎖解鎖控制程序;加鎖解鎖控制程序自動(dòng)識(shí)別插入計(jì)算機(jī)的USB移動(dòng)存儲(chǔ)設(shè)備,限制計(jì)算機(jī)訪問(wèn)USB移動(dòng)存儲(chǔ)設(shè)備,即加鎖;加鎖解鎖控制程序自動(dòng)識(shí)別插入計(jì)算機(jī)的一對(duì)USB密鑰設(shè)備,完成USB密鑰設(shè)備驗(yàn)證和用戶(hù)身份驗(yàn)證后,解開(kāi)對(duì)USB移動(dòng)存儲(chǔ)設(shè)備的訪問(wèn)限制,即解鎖。
所述的一對(duì)USB密鑰設(shè)備指一對(duì)各自具有唯一硬件標(biāo)識(shí)且通過(guò)分區(qū)處理的USB移動(dòng)存儲(chǔ)設(shè)備。
所述的一組USB接口加鎖解鎖控制程序包括安裝在目標(biāo)計(jì)算機(jī)上的內(nèi)核監(jiān)控程序和密鑰設(shè)備偵測(cè)程序,存放在密鑰設(shè)備A和密鑰設(shè)備B上的解鎖控制程序。
所述的對(duì)USB移動(dòng)存儲(chǔ)設(shè)備的訪問(wèn)限制指禁止計(jì)算機(jī)對(duì)USB移動(dòng)存儲(chǔ)設(shè)備執(zhí)行寫(xiě)操作。
所述的USB密鑰設(shè)備安全驗(yàn)證指安裝在目標(biāo)計(jì)算機(jī)上的內(nèi)核監(jiān)控程序校驗(yàn)由存放在USB密鑰設(shè)備上的解鎖控制程序產(chǎn)生的驗(yàn)證碼;驗(yàn)證碼包含密鑰設(shè)備A的硬件標(biāo)識(shí),密鑰設(shè)備B的硬件標(biāo)識(shí),計(jì)算機(jī)加載USB移動(dòng)存儲(chǔ)設(shè)備動(dòng)態(tài)分配的地址信息。
所述的用戶(hù)身份驗(yàn)證指密鑰設(shè)備B上的解鎖控制程序校驗(yàn)用戶(hù)輸入的密碼,軟件加密的用戶(hù)密碼保存在密鑰設(shè)備B上。
本發(fā)明邏輯上分為三個(gè)模塊用戶(hù)交互模塊,USB接口加鎖解鎖模塊,USB密鑰設(shè)備驗(yàn)證模塊,見(jiàn)附圖1。用戶(hù)交互模塊負(fù)責(zé)人機(jī)交互界面,包括用戶(hù)密碼的輸入和修改。USB接口加鎖解鎖模塊負(fù)責(zé)完成對(duì)USB移動(dòng)存儲(chǔ)設(shè)備加鎖和解鎖。USB密鑰設(shè)備驗(yàn)證模塊負(fù)責(zé)驗(yàn)證一對(duì)USB密鑰設(shè)備的有效性。
本發(fā)明物理上分為軟件和硬件兩部分一對(duì)USB密鑰設(shè)備,一組加鎖解鎖控制程序。一對(duì)USB密鑰設(shè)備包括密鑰設(shè)備A和密鑰設(shè)備B;一組加鎖解鎖控制程序包括安裝在目標(biāo)計(jì)算機(jī)上的內(nèi)核監(jiān)控程序和密鑰設(shè)備偵測(cè)程序,存放在密鑰設(shè)備A和密鑰設(shè)備B上的解鎖控制程序。
安裝在目標(biāo)計(jì)算機(jī)上的內(nèi)核監(jiān)控程序自動(dòng)識(shí)別插入計(jì)算機(jī)的USB設(shè)備,限制計(jì)算機(jī)對(duì)USB移動(dòng)存儲(chǔ)設(shè)備的訪問(wèn),即加鎖。一對(duì)USB密鑰設(shè)備插入計(jì)算機(jī),安裝在目標(biāo)計(jì)算機(jī)上的內(nèi)核監(jiān)控程序校驗(yàn)由存放在USB密鑰設(shè)備上的解鎖控制程序產(chǎn)生的驗(yàn)證碼,驗(yàn)證碼包含密鑰設(shè)備A的硬件標(biāo)識(shí),密鑰設(shè)備B的硬件標(biāo)識(shí),計(jì)算機(jī)加載USB移動(dòng)存儲(chǔ)設(shè)備動(dòng)態(tài)分配的地址信息;除此之外,存放在密鑰設(shè)備B上的解鎖控制程序還要求用戶(hù)輸入密碼進(jìn)行用戶(hù)身份驗(yàn)證,軟件加密后的用戶(hù)密碼保存在密鑰設(shè)備B上。在USB密鑰設(shè)備驗(yàn)證和用戶(hù)身份驗(yàn)證都通過(guò)后,安裝在目標(biāo)計(jì)算機(jī)上的內(nèi)核監(jiān)控程序解除對(duì)USB移動(dòng)存儲(chǔ)設(shè)備的訪問(wèn)限制,即解鎖。新的USB移動(dòng)存儲(chǔ)設(shè)備插入計(jì)算機(jī)需要重新解鎖,USB移動(dòng)存儲(chǔ)設(shè)備拔出計(jì)算機(jī)后再次插入視為新的USB移動(dòng)存儲(chǔ)設(shè)備插入。
本發(fā)明中,安裝在目標(biāo)計(jì)算機(jī)上的內(nèi)核監(jiān)控程序和一對(duì)USB密鑰設(shè)備的關(guān)系為一一對(duì)應(yīng),如同鎖和鑰匙。一對(duì)USB密鑰設(shè)備之間的關(guān)系也是一一對(duì)應(yīng),兩對(duì)不同的USB密鑰設(shè)備不能打亂配對(duì)關(guān)系重新組合。
本發(fā)明中,一對(duì)USB密鑰設(shè)備經(jīng)過(guò)分區(qū)處理,存放解鎖控制程序和用戶(hù)密碼的區(qū)域被隱藏,在沒(méi)有安裝基于雙USB密鑰設(shè)備的USB接口鎖的計(jì)算機(jī)上表現(xiàn)為普通的USB移動(dòng)存儲(chǔ)設(shè)備。
如上所述,采用本發(fā)明防止USB接口泄露數(shù)據(jù)的效果如下本發(fā)明使用成本低。整個(gè)發(fā)明的硬件需求僅為一對(duì)USB密鑰設(shè)備。
本發(fā)明使用靈活,尤其適合物理空間上比較集中的多臺(tái)計(jì)算機(jī)的保護(hù)。多臺(tái)計(jì)算機(jī)安裝同一套基于雙USB密鑰設(shè)備的USB接口鎖軟件,與之配套的一對(duì)USB密鑰設(shè)備由管理人員保管。當(dāng)某臺(tái)計(jì)算機(jī)需要向目標(biāo)USB移動(dòng)存儲(chǔ)設(shè)備拷貝數(shù)據(jù),持有一對(duì)USB密鑰設(shè)備的管理人員負(fù)責(zé)解鎖和拷貝,拷貝完成后拔出目標(biāo)USB移動(dòng)存儲(chǔ)設(shè)備即可。一對(duì)USB密鑰設(shè)備可以被同一個(gè)管理員持有,也可以被兩位管理員分別持有,達(dá)到相互牽制的作用,如圖2。
本發(fā)明安全性高。解鎖控制程序存放在USB密鑰設(shè)備上,別有用心的計(jì)算機(jī)用戶(hù)無(wú)法跟蹤整個(gè)USB密鑰設(shè)備驗(yàn)證過(guò)程從而無(wú)法執(zhí)行反編譯等手段;USB密鑰設(shè)備驗(yàn)證和用戶(hù)身份驗(yàn)證提供了硬件和軟件雙重保護(hù);USB密鑰設(shè)備具有偽裝性。
本發(fā)明結(jié)構(gòu)模塊化,易于擴(kuò)展。用戶(hù)交互模塊,USB密鑰設(shè)備驗(yàn)證模塊,USB接口加鎖解鎖模塊相對(duì)獨(dú)立。在保留用戶(hù)交互模塊,USB密鑰設(shè)備驗(yàn)證模塊不變的基礎(chǔ)上增加硬盤(pán),光驅(qū),軟盤(pán),網(wǎng)絡(luò)甚至其它計(jì)算機(jī)I/O設(shè)備的加鎖解鎖模塊,形成以USB密鑰設(shè)備為核心的計(jì)算機(jī)安全屏蔽,將計(jì)算機(jī)與外界隔絕。
圖1-頂層邏輯結(jié)構(gòu)圖。
圖2-提供多臺(tái)計(jì)算機(jī)保護(hù)的示意圖。
圖3-各個(gè)部分之間的關(guān)系圖。
圖4-USB密鑰設(shè)備存儲(chǔ)空間分配圖。
圖5-基于雙USB密鑰設(shè)備的USB接口鎖的詳細(xì)工作流程圖。
具體實(shí)施例方式
下面結(jié)合附圖和具體實(shí)施方式
對(duì)本發(fā)明作進(jìn)一步詳細(xì)描述。
圖1為頂層邏輯結(jié)構(gòu)圖。
圖2為提供多臺(tái)計(jì)算機(jī)保護(hù)的示意圖。
本發(fā)明中,各個(gè)部分之間的關(guān)系如下用戶(hù)插入需要解鎖的USB移動(dòng)存儲(chǔ)設(shè)備,接著先后插入密鑰設(shè)備A和密鑰設(shè)備B。密鑰設(shè)備偵測(cè)程序檢查到USB密鑰設(shè)備插入計(jì)算機(jī),先后調(diào)用密鑰設(shè)備A上的解鎖控制程序和密鑰設(shè)備B上的解鎖控制程序產(chǎn)生本次解鎖需要的驗(yàn)證碼;密鑰設(shè)備B上的鎖控制程序要求用戶(hù)輸入密碼進(jìn)行用戶(hù)身份驗(yàn)證,用戶(hù)身份驗(yàn)證成功后將驗(yàn)證碼發(fā)給內(nèi)核監(jiān)控程序。內(nèi)核監(jiān)控程序負(fù)責(zé)校驗(yàn)驗(yàn)證碼,成功后執(zhí)行解鎖,如圖3。
本發(fā)明中,內(nèi)核監(jiān)控程序嵌入計(jì)算機(jī)操作系統(tǒng)的USB底層驅(qū)動(dòng)模塊。USB底層驅(qū)動(dòng)模塊位于文件系統(tǒng)的下層,計(jì)算機(jī)對(duì)USB移動(dòng)存儲(chǔ)設(shè)備的訪問(wèn)在該層表現(xiàn)為對(duì)扇區(qū)的訪問(wèn),禁止或者允許計(jì)算機(jī)對(duì)USB移動(dòng)存儲(chǔ)設(shè)備扇區(qū)執(zhí)行寫(xiě)操作可達(dá)到對(duì)USB移動(dòng)存儲(chǔ)設(shè)備加鎖解鎖的目的。
本發(fā)明中,密鑰設(shè)備偵測(cè)程序不具備任何解鎖功能,僅負(fù)責(zé)偵測(cè)的插入計(jì)算機(jī)USB設(shè)備是否存在USB密鑰設(shè)備軟件特征并且調(diào)用USB密鑰設(shè)備上的解鎖控制程序。USB密鑰設(shè)備軟件特征可以是某些隱藏扇區(qū)中的標(biāo)志。
本發(fā)明中,密鑰設(shè)備A和密鑰設(shè)備B用于存放解鎖控制程序和用戶(hù)密碼,同時(shí)也是具有特殊硬件標(biāo)識(shí)的實(shí)物載體。USB密鑰設(shè)備的存儲(chǔ)空間被劃分為兩個(gè)獨(dú)立的分區(qū),其中一個(gè)是顯示分區(qū),另一個(gè)是隱藏分區(qū)。普通計(jì)算機(jī)讀取顯示分區(qū)信息從而能訪問(wèn)顯示分區(qū);安裝了基于雙USB密鑰設(shè)備的USB接口鎖的計(jì)算機(jī)上的內(nèi)核監(jiān)控程序截獲系統(tǒng)讀取分區(qū)信息的操作,用隱藏分區(qū)信息去代替顯示分區(qū)信息,從而訪問(wèn)隱藏分區(qū)。解鎖控制程序和用戶(hù)密碼存放在隱藏分區(qū)里,隱藏分區(qū)的所有數(shù)據(jù)都會(huì)被軟件加密,如圖4中灰色區(qū)域。
本發(fā)明中,USB密鑰設(shè)備驗(yàn)證策略如下密鑰設(shè)備A上的解鎖控制程序和內(nèi)核監(jiān)控程序通訊,獲取所在設(shè)備的硬件標(biāo)識(shí)aid和當(dāng)前計(jì)算機(jī)加載USB動(dòng)態(tài)分配的內(nèi)存地址信息iaddress,密鑰設(shè)備B上的解鎖控制程序和內(nèi)核監(jiān)控程序獲取所在設(shè)備的硬件標(biāo)識(shí)bid,密鑰設(shè)備B上的解鎖控制程序根據(jù)公式f(aid,f(bid,iaddress))計(jì)算本次解鎖需要的驗(yàn)證碼并且發(fā)送給內(nèi)核監(jiān)控程序;內(nèi)核監(jiān)控程序根據(jù)公式f(f(AID,BID),iaddress)計(jì)算出本次解鎖正確的驗(yàn)證碼,比較兩者可知是否進(jìn)行解鎖操作,其中AID,BID為內(nèi)核監(jiān)控程序?qū)?yīng)的一對(duì)USB密鑰設(shè)備的硬件標(biāo)識(shí),f(AID,BID)值作為常量保存在內(nèi)核監(jiān)控程序中。函數(shù)f滿(mǎn)足f(f(AID,BID),x1)=f(AID,f(BID,x2)),當(dāng)且僅當(dāng)x1=x2。任意兩次解鎖產(chǎn)生的驗(yàn)證碼之間沒(méi)有任何聯(lián)系,即驗(yàn)證碼具有一次性。
基于雙USB密鑰設(shè)備的USB接口鎖的詳細(xì)工作流程如下,如圖5。圖中灰色區(qū)域的操作由保存在USB密鑰設(shè)備上的解鎖控制程序完成;白色區(qū)域的操作由安裝在目標(biāo)計(jì)算機(jī)上的內(nèi)核監(jiān)控程序和密鑰設(shè)備偵測(cè)程序完成。
權(quán)利要求
1.一種基于雙USB密鑰設(shè)備的USB接口鎖,其特征在于包括一對(duì)USB密鑰設(shè)備,一組加鎖解鎖控制程序;加鎖解鎖控制程序自動(dòng)識(shí)別插入計(jì)算機(jī)的USB移動(dòng)存儲(chǔ)設(shè)備,限制計(jì)算機(jī)訪問(wèn)USB移動(dòng)存儲(chǔ)設(shè)備,即加鎖;加鎖解鎖控制程序自動(dòng)識(shí)別插入計(jì)算機(jī)的一對(duì)USB密鑰設(shè)備,完成USB密鑰設(shè)備驗(yàn)證和用戶(hù)身份驗(yàn)證后,解開(kāi)對(duì)USB移動(dòng)存儲(chǔ)設(shè)備的訪問(wèn)限制,即解鎖。
2.如權(quán)利要求1所述的基于雙USB密鑰設(shè)備的USB接口鎖,其特征在于所述的一對(duì)USB密鑰設(shè)備指一對(duì)各自具有唯一硬件標(biāo)識(shí)且通過(guò)分區(qū)處理的USB移動(dòng)存儲(chǔ)設(shè)備。
3.如權(quán)利要求1所述的基于雙USB密鑰設(shè)備的USB接口鎖,其特征在于所述的一組USB接口加鎖解鎖控制程序包括安裝在目標(biāo)計(jì)算機(jī)上的內(nèi)核監(jiān)控程序和密鑰設(shè)備偵測(cè)程序,存放在密鑰設(shè)備A和密鑰設(shè)備B上的解鎖控制程序。
4.如權(quán)利要求1所述的基于雙USB密鑰設(shè)備的USB接口鎖,其特征在于所述的對(duì)USB移動(dòng)存儲(chǔ)設(shè)備的訪問(wèn)限制指禁止計(jì)算機(jī)對(duì)USB移動(dòng)存儲(chǔ)設(shè)備執(zhí)行寫(xiě)操作。
5.如權(quán)利要求1所述的基于雙USB密鑰設(shè)備的USB接口鎖,其特征在于所述的USB密鑰設(shè)備安全驗(yàn)證指安裝在目標(biāo)計(jì)算機(jī)上的內(nèi)核監(jiān)控程序校驗(yàn)由存放在USB密鑰設(shè)備上的解鎖控制程序產(chǎn)生的驗(yàn)證碼;驗(yàn)證碼包含密鑰設(shè)備A的硬件標(biāo)識(shí),密鑰設(shè)備B的硬件標(biāo)識(shí),計(jì)算機(jī)加載USB移動(dòng)存儲(chǔ)設(shè)備動(dòng)態(tài)分配的地址信息。
6.如權(quán)利要求1所述的基于雙USB密鑰設(shè)備的USB接口鎖,其特征在于所述的用戶(hù)身份驗(yàn)證指密鑰設(shè)備B上的解鎖控制程序校驗(yàn)用戶(hù)輸入的密碼,軟件加密的用戶(hù)密碼保存在密鑰設(shè)備B上。
全文摘要
本發(fā)明是一種防止USB接口泄露數(shù)據(jù)的基于雙USB密鑰設(shè)備的USB接口鎖,包括一對(duì)USB密鑰設(shè)備,一組USB接口加鎖解鎖控制程序。加鎖解鎖控制程序自動(dòng)識(shí)別插入計(jì)算機(jī)的USB設(shè)備,限制計(jì)算機(jī)訪問(wèn)USB移動(dòng)存儲(chǔ)設(shè)備;加鎖解鎖控制程序自動(dòng)識(shí)別插入計(jì)算機(jī)的一對(duì)USB密鑰設(shè)備,在完成USB密鑰設(shè)備驗(yàn)證和用戶(hù)身份驗(yàn)證后,解開(kāi)對(duì)USB移動(dòng)存儲(chǔ)設(shè)備的訪問(wèn)限制。本發(fā)明針對(duì)USB接口泄露數(shù)據(jù)問(wèn)題給出了成本低,靈活,有效的解決方法。
文檔編號(hào)G06F21/00GK101030176SQ20071006521
公開(kāi)日2007年9月5日 申請(qǐng)日期2007年4月6日 優(yōu)先權(quán)日2007年4月6日
發(fā)明者王佐, 譚毓安, 石峰 申請(qǐng)人:北京理工大學(xué)