專利名稱:一種安全使用智能密鑰裝置的方法及系統(tǒng)的制作方法
技術領域:
本發(fā)明涉及信息安全領域,特別涉及一種方便用戶安全使用智能密鑰裝置的方法及系統(tǒng)。
背景技術:
隨著計算機技術的高速發(fā)展,越來越多的用戶習慣利用網(wǎng)絡的便捷和豐富的資源來完成各項工作。這在一定程度上節(jié)約了時間,提高了辦事效率,促進了互聯(lián)網(wǎng)的進一步發(fā)展和完善。但是,隨著高科技手段的不斷發(fā)展,網(wǎng)絡在給人們帶來便利和娛樂的同時,也存在著極大的安全隱患,例如不法分子利用網(wǎng)絡的開放性進行惡意攻擊,給接入互聯(lián)網(wǎng)的計算機帶來很大的威脅。
智能密鑰裝置是一種帶有處理器和存儲器的小型硬件裝置,主要用于身份認證、軟件保護等領域。它通過計算機的數(shù)據(jù)通訊接口與計算機連接,并具有密鑰生成功能,可安全存儲密鑰,預置加密算法。智能密鑰裝置與密鑰相關的運算完全在裝置內(nèi)部運行,且智能密鑰裝置具有抗攻擊的特性,安全性極高。USB Key是一種USB接口的智能密鑰裝置,它內(nèi)置單片機或智能卡芯片,可以存儲用戶的密鑰或數(shù)字證書。
現(xiàn)有技術中,智能密鑰裝置已被廣泛應用于網(wǎng)絡安全領域。由于其內(nèi)部具有運算功能,是一個獨立和封閉的運算環(huán)境,因此能夠在很大程度上確保數(shù)據(jù)處理及存儲的安全性。然而,智能密鑰裝置卻無法保證數(shù)據(jù)在交互通道以外進行傳輸?shù)陌踩?,網(wǎng)絡惡意分子極易利用智能密鑰裝置的這一弱點,進行非法活動。主要表現(xiàn)在目前的計算機并不是孤立的計算機,幾乎都會介入互聯(lián)網(wǎng),個人計算機成為一個相對開放的計算機環(huán)境,一旦用戶的計算機被植入了木馬程序,當用戶在這臺計算機上使用智能密鑰設備時,網(wǎng)絡黑客很容易竊取用戶通過計算機向智能密鑰裝置發(fā)送的操作命令及操作數(shù)據(jù),在用戶毫不知情的情況下篡改命令及數(shù)據(jù),隨心所欲地利用智能密鑰裝置執(zhí)行各項非法操作,極有可能給智能密鑰裝置的合法用戶造成巨大經(jīng)濟損失或精神損失。例如,網(wǎng)絡銀行用戶在進行匯款操作時,如果智能密鑰裝置被接入一臺被植入了木馬程序的計算機中,如果智能密鑰裝置沒有及時與該計算機斷開連接,網(wǎng)絡黑客很容易利用木馬程序盜取該用戶發(fā)送的匯款信息及匯款數(shù)據(jù),并將其非法篡改,當上述用戶執(zhí)行匯款操作時,其匯款信息已不再是原有數(shù)據(jù),一旦該用戶繼續(xù)使用智能密鑰裝置對經(jīng)過篡改后的數(shù)據(jù)進行簽名并發(fā)送,網(wǎng)絡黑客的非法交易就會得手,給上述用戶帶來難以估量的損失。
目前已經(jīng)有一種利用生物識別技術代替靠用戶單純地輸入PIN碼進行身份認證的技術,增加了使用智能密鑰裝置的安全性。但是,生物特征容易通過生物技術進行仿制,在對使用者進行鑒定方面,一些利用生物特征實現(xiàn)身份識別的智能密鑰裝置存在一定的安全隱患。
發(fā)明內(nèi)容
為了緩解現(xiàn)有技術中使用智能密鑰裝置存在安全隱患的問題,本發(fā)明提供了一種安全使用智能密鑰裝置的方法及系統(tǒng)。所述技術方案如下一種安全使用智能密鑰裝置的方法,所述方法包括以下步驟步驟A智能密鑰裝置接收操作命令;步驟B所述智能密鑰裝置收到所述操作命令后,生成識別碼,并通過所述智能密鑰裝置輸出所述識別碼;步驟C所述智能密鑰裝置等待用戶輸入確認碼;步驟D所述智能密鑰裝置收到所述確認碼后,驗證所述確認碼與所述識別碼是否一致,如果一致,所述智能密鑰裝置執(zhí)行所述操作命令,否則返回錯誤信息。
所述步驟A中的操作命令為驗證PIN碼、生成密鑰對或進行數(shù)字簽名。
所述進行數(shù)字簽名的算法包括RSA數(shù)字簽名算法、DSA數(shù)字簽名算法,橢圓曲線或有限自動機數(shù)字簽名算法。
所述步驟B中的輸出所述識別碼的輸出方式具體為顯示的方式或語音提示的方式。
所述步驟B中的識別碼為一組隨機數(shù)。
所述步驟B中的識別碼與操作命令相關,具體包括所述識別碼為操作命令中的數(shù)據(jù);所述識別碼是通過將操作命令中的數(shù)據(jù)進行變換后生成的。
所述步驟C中的確認碼是所述用戶通過主機輸入的。
本發(fā)明同時提供了一種安全使用智能密鑰裝置的系統(tǒng),包括主機和智能密鑰裝置,所述主機包括信息輸入模塊,用于提示輸入確認碼、接收用戶輸入的確認碼;
主機接口模塊,用于將主機與所述智能密鑰裝置連接,實現(xiàn)數(shù)據(jù)通信;所述智能密鑰裝置包括識別碼生成模塊,用于生成識別碼;識別碼輸出模塊,用于輸出所述識別碼生成模塊生成的識別碼;匹配比較模塊,用于驗證輸入的確認碼和所述識別碼生成模塊生成的識別碼是否一致,若一致,則允許命令執(zhí)行模塊執(zhí)行操作命令,否則,返回錯誤信息;命令執(zhí)行模塊,用于執(zhí)行操作命令;控制模塊,用于向所述識別碼生成模塊、所述識別碼輸出模塊、所述匹配比較模塊和所述命令執(zhí)行模塊發(fā)送命令,以及協(xié)調(diào)各模塊間的工作;接口模塊,用于將所述控制模塊與主機連接,實現(xiàn)數(shù)據(jù)通信。
所述識別碼輸出模塊具體包括顯示單元,用于以顯示的方式輸出所述識別碼;和/或發(fā)聲單元,用于以語音提示的方式輸出所述識別碼。
所述接口模塊包括USB接口模塊、eSATA接口模塊、SDIO接口模塊、PCMCIA接口模塊。
本發(fā)明的技術方案帶來的有益效果是本發(fā)明中的智能密鑰裝置生成的識別碼只發(fā)送給識別碼輸出模塊,獲取識別碼的渠道只有通過智能密鑰裝置上的識別碼輸出模塊才能實現(xiàn),智能密鑰裝置生成的識別碼并不發(fā)送到主機端,這樣一來,即使與智能密鑰裝置相連的主機被植入了木馬程序,由于木馬程序無法預知識別碼,因此惡意分子無法將其盜取,從而不能利用智能密鑰裝置進行任何操作。
雖然惡意分子可以在用戶通過主機向智能密鑰裝置輸入識別碼(確認碼)的過程中盜取識別碼,由于識別碼只能使用一次,即每次生成的識別碼只能對一次操作命令有效,用戶不能利用同一個識別碼命令智能密鑰裝置完成多次操作任務,事實上惡意分子盜取的識別碼已經(jīng)作廢,不具有任何意義,最終遏制了惡意分子的非法行為。
本發(fā)明在很大程度上提高了用戶在使用智能密鑰裝置過程中的安全性以及操作命令的有效性。
圖1是本發(fā)明實施例1提供的安全使用智能密鑰裝置的方法流程圖;圖2是本發(fā)明實施例2提供的安全使用智能密鑰裝置的系統(tǒng)示意圖;圖3是本發(fā)明實施例3提供的安全使用智能密鑰裝置的方法流程圖。
具體實施例方式
下面結(jié)合附圖和具體實施例對本發(fā)明作進一步說明,但本發(fā)明不局限于以下實施例。
實施例1本實施例以用戶使用智能密鑰裝置對數(shù)據(jù)進行數(shù)字簽名為例,用戶在使用智能密鑰裝置對數(shù)據(jù)進行數(shù)字簽名時,智能密鑰裝置隨機產(chǎn)生識別碼,并要求用戶正確輸入該識別碼以確認其合法身份和操作命令的有效性,在本實施例中,智能密鑰裝置為USB Key,識別碼為一串隨機數(shù)。
參見圖1,提供了一種安全使用智能密鑰裝置的方法,具體步驟如下步驟101USB Key與主機建立連接后,提示用戶輸入PIN碼;步驟102用戶輸入PIN碼進行身份認證;步驟103USB Key內(nèi)部驗證用戶輸入的PIN碼是否正確,若正確,則執(zhí)行步驟104,否則執(zhí)行步驟109;步驟104用戶通過身份認證后,向USB Key發(fā)送一組數(shù)據(jù),并要求USB Key對該數(shù)據(jù)進行數(shù)字簽名;步驟105USB Key內(nèi)部生成一串識別碼,并通過顯示部件顯示給用戶,該顯示部件可以是一個液晶顯示屏幕;步驟106用戶根據(jù)提示,輸入確認碼,這時要求用戶輸入的確認碼為顯示部件顯示的識別碼;步驟107USB Key內(nèi)部驗證用戶輸入的確認碼是否與步驟105中生成的識別碼一致,在本實施例中,驗證用戶的輸入的確認碼過程是USB Key內(nèi)部將其產(chǎn)生的識別碼與用戶輸入的確認碼進行比較,判斷二者是否一致,若一致,則執(zhí)行步驟108,否則執(zhí)行步驟109;步驟108USB Key執(zhí)行數(shù)字簽名操作。
數(shù)字簽名是附加在原始數(shù)據(jù)上的一些數(shù)據(jù),或是通過數(shù)字簽名算法對原始數(shù)據(jù)進行密碼變換。數(shù)字簽名是接收者用以確認原始數(shù)據(jù)的來源和原始數(shù)據(jù)的完整性并保護數(shù)據(jù),防止他人(例如接收者)進行偽造?;诠€密碼體制和私鑰密碼體制都可以獲得數(shù)字簽名,目前主要是基于公鑰密碼體制的數(shù)字簽名,不同的數(shù)字簽名與具體應用環(huán)境密切相關。
數(shù)字簽名算法包括RSA數(shù)字簽名算法、DSA數(shù)字簽名算法,橢圓曲線或有限自動機數(shù)字簽名算法,在本實施例中,選用的數(shù)字簽名算法為RSA算法。
步驟109系統(tǒng)將提示錯誤,并拒絕執(zhí)行下一步操作。
實施例2參見圖2,本實施例提供了一種安全使用智能密鑰裝置的系統(tǒng),包括主機和智能密鑰裝置,其中,主機包括信息輸入模塊,用于提示輸入確認碼、接收用戶輸入的確認碼;一般提示給想使用智能密鑰裝置進行操作的用戶。
主機接口模塊,用于將主機與所述智能密鑰裝置連接,實現(xiàn)數(shù)據(jù)通信;智能密鑰裝置包括識別碼生成模塊,用于生成識別碼;識別碼輸出模塊,用于輸出識別碼生成模塊生成的識別碼;匹配比較模塊,用于驗證輸入的確認碼和識別碼生成模塊生成的識別碼是否一致,如果一致,則允許命令執(zhí)行模塊執(zhí)行操作命令,否則,拒絕操作;命令執(zhí)行模塊,用于執(zhí)行操作命令;控制模塊,用于向識別碼生成模塊、識別碼輸出模塊、匹配比較模塊和命令執(zhí)行模塊發(fā)送命令,以及協(xié)調(diào)各模塊間的工作;接口模塊,用于將控制模塊與主機連接,實現(xiàn)數(shù)據(jù)通信。
本實施例的智能密鑰裝置為USB Key。
其中,識別碼輸出模塊具體包括顯示單元,用于顯示識別碼生成模塊生成的識別碼;和/或發(fā)聲單元,用于以聲音的形式輸出識別碼生成模塊生成的識別碼。
在本實施例中,該系統(tǒng)還包括數(shù)據(jù)存儲模塊,用于存儲初始密鑰對、根CA證書、初始密碼以及用戶私有信息。
上述主機接口模塊和接口模塊包括有線接口模塊和無線接口模塊。具體有USB接口模塊、eSATA(External Serial ATA,外接串行高級技術配件)接口模塊、SDIO(SD卡輸入輸出)接口模塊、PCMCIA(Personal Computer MemoryCard International Association)接口模塊。
PCMCIA接口也叫PC卡插槽,是筆記本電腦的標準裝備,屬于工業(yè)標準(PCMCIA規(guī)范),在許多中型數(shù)碼設備和工業(yè)控制設備上也廣泛應用,最常用于筆記本電腦。
有線接口模塊包括USB接口模塊、串行接口模塊和并行接口模塊。
串行接口模塊為SPI(Serial Peripheral Interface,串行外設接口)模塊,是一種同步串行外設接口,它可以使控制模塊與各種外圍設備以串行方式進行通信以交換信息。
在本實施例中,主機接口模塊和接口模塊均采用USB接口模塊。
在本實施例中,識別碼生成模塊、匹配比較模塊、命令執(zhí)行模塊、數(shù)據(jù)存儲模塊、控制模塊、接口模塊集成在一個處理芯片中,SPI接口模塊負責將顯示單元和處理芯片建立物理上的連接。
實施例3在本實施例中,USB Key產(chǎn)生的識別碼以語音形式輸出,代替實施例1中識別碼以顯示的形式輸出,具體步驟如下步驟301USB Key與主機建立連接,提示用戶輸入PIN碼;步驟302用戶輸入PIN碼進行身份認證;步驟303USB Key內(nèi)部驗證用戶輸入的PIN碼是否正確,若正確,則執(zhí)行步驟304,否則執(zhí)行步驟309;步驟304用戶通過身份認證,向USB Key發(fā)送一組數(shù)據(jù),并要求USB Key對該數(shù)據(jù)進行數(shù)字簽名;步驟305USB Key內(nèi)部生成一串識別碼,并以語音的形式輸出給用戶;步驟306用戶根據(jù)主機提示,輸入確認碼;這時要求用戶輸入的確認碼為顯示部件顯示的識別碼;步驟307USB Key內(nèi)部驗證用戶輸入的確認碼是否與步驟305中生成的識別碼一致,在本實施例中,驗證用戶輸入的確認碼的過程是USB Key內(nèi)部將其產(chǎn)生的識別碼與用戶輸入的識別碼進行比較,判斷是二者是否一致,若一致,則執(zhí)行步驟308,否則執(zhí)行步驟309;步驟308用戶輸入的識別碼與USB Key內(nèi)部產(chǎn)生的識別碼一致,USB Key執(zhí)行數(shù)字簽名操作;步驟309系統(tǒng)將提示錯誤,并拒絕執(zhí)行下一步操作。
以上對本發(fā)明所提供的一種安全使用智能密鑰裝置的方法及系統(tǒng)進行了介紹,本發(fā)明中采用具體實例對原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領域的一般技術人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應用范圍內(nèi)進行的通常變化和替換都應包含在本發(fā)明的保護范圍內(nèi)。
權利要求
1.一種安全使用智能密鑰裝置的方法,其特征在于,所述方法包括以下步驟步驟A智能密鑰裝置接收操作命令;步驟B所述智能密鑰裝置收到所述操作命令后,生成識別碼,并通過所述智能密鑰裝置輸出所述識別碼;步驟C所述智能密鑰裝置等待用戶輸入確認碼;步驟D所述智能密鑰裝置收到所述確認碼后,驗證所述確認碼與所述識別碼是否一致,如果一致,所述智能密鑰裝置執(zhí)行所述操作命令,否則返回錯誤信息。
2.如權利要求1所述的安全使用智能密鑰裝置的方法,其特征在于,所述步驟A中的操作命令為驗證PIN碼、生成密鑰對或進行數(shù)字簽名。
3.如權利要求2所述的安全使用智能密鑰裝置的方法,其特征在于,所述進行數(shù)字簽名的算法包括RSA數(shù)字簽名算法、DSA數(shù)字簽名算法、橢圓曲線或有限自動機數(shù)字簽名算法。
4.如權利要求1所述的安全使用智能密鑰裝置的方法,其特征在于,所述步驟B中的輸出所述識別碼的輸出方式具體為顯示的方式或語音提示的方式。
5.如權利要求1所述的安全使用智能密鑰裝置的方法,其特征在于,所述步驟B中的識別碼為一組隨機數(shù)。
6.如權利要求2所述的安全使用智能密鑰裝置的方法,其特征在于,所述步驟B中的識別碼與操作命令相關,具體包括所述識別碼為操作命令中的數(shù)據(jù);所述識別碼是通過將操作命令中的數(shù)據(jù)進行變換后生成的。
7.如權利要求1所述的安全使用智能密鑰裝置的方法,其特征在于,所述步驟C中的確認碼是所述用戶通過主機輸入的。
8.一種安全使用智能密鑰裝置的系統(tǒng),包括主機和智能密鑰裝置,其特征在于,所述主機包括信息輸入模塊,用于提示輸入確認碼、接收用戶輸入的確認碼;主機接口模塊,用于將主機與所述智能密鑰裝置連接,實現(xiàn)數(shù)據(jù)通信;所述智能密鑰裝置包括識別碼生成模塊,用于生成識別碼;識別碼輸出模塊,用于輸出所述識別碼生成模塊生成的識別碼;匹配比較模塊,用于驗證輸入的確認碼和所述識別碼生成模塊生成的識別碼是否一致,若一致,則允許命令執(zhí)行模塊執(zhí)行操作命令,否則,返回錯誤信息;命令執(zhí)行模塊,用于執(zhí)行操作命令;控制模塊,用于向所述識別碼生成模塊、所述識別碼輸出模塊、所述匹配比較模塊和所述命令執(zhí)行模塊發(fā)送命令,以及協(xié)調(diào)各模塊間的工作;接口模塊,用于將所述控制模塊與主機連接,實現(xiàn)數(shù)據(jù)通信。
9.如權利要求8所述的安全使用智能密鑰裝置的系統(tǒng),其特征在于,所述識別碼輸出模塊具體包括顯示單元,用于以顯示的方式輸出所述識別碼;和/或發(fā)聲單元,用于以語音提示的方式輸出所述識別碼。
10.如權利要求8所述的安全使用智能密鑰裝置的系統(tǒng),其特征在于,所述接口模塊包括USB接口模塊、eSATA接口模塊、SDIO接口模塊或PCMCIA接口模塊。
全文摘要
本發(fā)明提供了一種安全使用智能密鑰裝置的方法及系統(tǒng),屬于安全通信領域。為了提高使用智能密鑰裝置的安全性,本發(fā)明提供了一種安全使用智能密鑰裝置的方法,所述方法包括智能密鑰裝置收到操作命令后,生成識別碼,然后輸出識別碼,并提示輸入確認碼,收到確認碼后,對確認碼進行驗證,驗證通過后,執(zhí)行用戶的操作命令。本發(fā)明還提供了一種安全使用智能密鑰裝置的系統(tǒng),所述系統(tǒng)包括主機和智能密鑰裝置。采用本發(fā)明提供的方案可以增強使用智能密鑰裝置的安全性,提高用戶操作命令的有效性。
文檔編號H04L9/32GK101034986SQ200710062699
公開日2007年9月12日 申請日期2007年1月15日 優(yōu)先權日2007年1月15日
發(fā)明者陸舟, 于華章 申請人:北京飛天誠信科技有限公司