通訊方法、系統(tǒng)、pci密碼卡和遠(yuǎn)程管理介質(zhì)的制作方法
【專利摘要】本發(fā)明涉及一種通訊方法及系統(tǒng)、PCI密碼卡和遠(yuǎn)程管理介質(zhì),其中一種通訊方法,其應(yīng)用于PCI密碼卡中,包括以下步驟:步驟1:接收外部調(diào)用指令,根據(jù)調(diào)用指令發(fā)送建立通訊請(qǐng)求到遠(yuǎn)程管理介質(zhì),與遠(yuǎn)程管理介質(zhì)建立通訊;步驟2:啟動(dòng)安全通訊協(xié)議,根據(jù)安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝通訊相關(guān)信息,并將封裝后的通訊相關(guān)信息發(fā)送至遠(yuǎn)程管理介質(zhì);步驟3:接收遠(yuǎn)程管理介質(zhì)反饋的處理結(jié)果,所述處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝;步驟4:對(duì)處理結(jié)果進(jìn)行驗(yàn)證,當(dāng)驗(yàn)證通過,則PCI密碼卡和遠(yuǎn)程管理介質(zhì)結(jié)束通訊。解決了支持虛擬化PCI密碼卡的權(quán)限控制、密鑰管理的安全性問題;并保證通訊雙方能夠抵御重放攻擊。
【專利說明】
通訊方法、系統(tǒng)、PC I密碼卡和遠(yuǎn)程管理介質(zhì)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及一種通訊方法、系統(tǒng)、PCI密碼卡和遠(yuǎn)程管理介質(zhì),屬于信息安全領(lǐng)域。
【背景技術(shù)】
[0002]國產(chǎn)商用密碼產(chǎn)品的開發(fā)和應(yīng)用距今已有十多年的歷史,國內(nèi)商用密碼技術(shù)也有了較大發(fā)展,集成電路在密碼技術(shù)方面的應(yīng)用也取得了長足的進(jìn)步。國產(chǎn)密碼芯片的出現(xiàn)和發(fā)展為商用密碼技術(shù)硬件化提供了基礎(chǔ)和保障,有效提高了密碼設(shè)備的處理能力和安全性。
[0003]商用對(duì)稱密碼體系方面,我國發(fā)布了 SSF33,SM1,SM4等商用密碼算法以及相應(yīng)的算法處理芯片,并且已經(jīng)得到了廣泛的應(yīng)用。公鑰算法基本還是RSA-2048獨(dú)撐局面,但隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,已經(jīng)有越來越多的人開始擔(dān)憂RSA-2048算法的安全性問題。
[0004]1985年有人提出了利用橢圓曲線上離散對(duì)數(shù)代替有限域上離散對(duì)數(shù),即橢圓曲線密碼體制。橢圓曲線密碼體制ECC是基于有限域上橢圓曲線的離散對(duì)數(shù)計(jì)算的困難性,具有較RSA-2048更高的安全強(qiáng)度,并且橢圓曲線算法的實(shí)現(xiàn)比RSA-2048算法要快得多。在美國,基于ECC的ECDSA簽名算法早在1999年成為ANSI標(biāo)準(zhǔn),支持國產(chǎn)ECC標(biāo)準(zhǔn)SM2橢圓曲線算法的芯片是在2008年出現(xiàn),2009年開始有KEY、PCI密碼卡、密碼機(jī)等產(chǎn)品出現(xiàn),同時(shí)國家密碼管理局組織相關(guān)成員單位搭建CA試驗(yàn)系統(tǒng)。這說明國內(nèi)ECC應(yīng)用條件已經(jīng)逐漸成熟,并且在有些封閉系統(tǒng)中已經(jīng)開始部署。
[0005]目前PKI已經(jīng)是密碼應(yīng)用的基礎(chǔ),在許多的行業(yè)和領(lǐng)域內(nèi)都離不開PKI的支持與保障,當(dāng)前的PKI體系基本正在從RSA-2048算法向SM2公鑰算法過渡。PCI密碼卡做為最底層的硬件加密模塊,這場(chǎng)變革首當(dāng)其沖。
[0006]目前的PCI密碼卡的權(quán)限控制大多基于對(duì)稱算法的體制,基于PCI密碼卡硬件連接智能IC卡片或USB key的模式,這種應(yīng)用模式越發(fā)的滿足不了客戶的應(yīng)用需求。如:安裝PCI密碼卡的服務(wù)器機(jī)房,距離工作崗位較遠(yuǎn),每次對(duì)PCI密碼卡進(jìn)行管理時(shí),都要過去插接IC卡片或USB key十分的不方便且將來支持虛擬化的PCI密碼卡會(huì)出現(xiàn),應(yīng)用PCI密碼卡的用戶可能在外地,因此隨著技術(shù)的不斷變革這種基于對(duì)稱算法管理機(jī)制和硬件連接PCI密碼卡的權(quán)限控制模式將會(huì)被淘汰。
【發(fā)明內(nèi)容】
[0007]本發(fā)明所要解決的技術(shù)問題是提供一種基于SM2密碼算法作為權(quán)限控制的基本算法,設(shè)計(jì)了一套安全通訊協(xié)議的通訊方法及系統(tǒng)、PCI密碼卡和遠(yuǎn)程管理介質(zhì)。
[0008]本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下:一種通訊方法,其應(yīng)用于PCI密碼卡中,包括以下步驟:
[0009]步驟1:接收外部調(diào)用指令,根據(jù)調(diào)用指令發(fā)送建立通訊請(qǐng)求到遠(yuǎn)程管理介質(zhì),與遠(yuǎn)程管理介質(zhì)建立通訊;
[0010]步驟2:啟動(dòng)安全通訊協(xié)議,根據(jù)安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝通訊相關(guān)信息,并將封裝后的通訊相關(guān)信息發(fā)送至遠(yuǎn)程管理介質(zhì);
[0011]步驟3:接收遠(yuǎn)程管理介質(zhì)反饋的處理結(jié)果,所述處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝;
[0012]步驟4:對(duì)處理結(jié)果進(jìn)行驗(yàn)證,當(dāng)驗(yàn)證通過,則PCI密碼卡和遠(yuǎn)程管理介質(zhì)結(jié)束通訊;否則,拋棄所述處理結(jié)果,結(jié)束通訊。
[0013]本發(fā)明的有益效果是:本發(fā)明可以解決支持虛擬化PCI密碼卡的權(quán)限控制、密鑰管理的安全性問題;使用會(huì)話身份號(hào)并結(jié)合簽名機(jī)制,確保通訊雙方能夠抵御重放攻擊;同時(shí)解決了對(duì)PCI密碼卡進(jìn)行管理時(shí),需要插接外部管理介質(zhì)的問題,通過遠(yuǎn)程管理介質(zhì),可以實(shí)現(xiàn)對(duì)PCI密碼卡的遠(yuǎn)程管理。
[0014]在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)。
[0015]進(jìn)一步,所述步驟I還包括,與遠(yuǎn)程管理介質(zhì)開始建立通訊后,接收遠(yuǎn)程管理介質(zhì)發(fā)送的公鑰并保存,所述公鑰與遠(yuǎn)程管理介質(zhì)內(nèi)的私鑰相對(duì)應(yīng)。
[0016]采用上述進(jìn)一步方案的有益效果是,PCI密碼卡和遠(yuǎn)程管理介質(zhì)之間采用對(duì)應(yīng)的公鑰和私鑰進(jìn)行標(biāo)識(shí)身份,防止出現(xiàn)通訊連接出錯(cuò)的問題,保證通訊方向正確。
[0017]進(jìn)一步,所述公鑰為SM2秘鑰的公鑰,所述私鑰為SM2秘鑰的私鑰。
[0018]采用上述進(jìn)一步方案的有益效果是,SM2是國家密碼管理局于2010年12月17日發(fā)布的橢圓曲線公鑰密碼算法,使用SM2密碼算法的效果優(yōu)于現(xiàn)有其他密碼算法。
[0019]進(jìn)一步,所述步驟2具體包括以下內(nèi)容:
[0020]啟動(dòng)安全通訊協(xié)議,產(chǎn)生會(huì)話身份號(hào)和第一隨機(jī)數(shù);
[0021]根據(jù)安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝通訊內(nèi)容、會(huì)話身份號(hào)和第一隨機(jī)數(shù)得到封裝后的通訊相關(guān)信息,并將封裝后的通訊相關(guān)信息發(fā)送至遠(yuǎn)程管理介質(zhì)。
[0022]采用上述進(jìn)一步方案的有益效果是,使用會(huì)話身份號(hào)使通訊雙方能夠抵御重放攻擊,而通過命令碼進(jìn)行封裝的方式,防止通訊內(nèi)容被其他不法手段截獲,沒有對(duì)應(yīng)命令碼即使截獲也無法獲取其中內(nèi)容。
[0023]進(jìn)一步,所述產(chǎn)生會(huì)話身份號(hào)和第一隨機(jī)數(shù)保存在PCI密碼卡的RAM中;當(dāng)啟動(dòng)安全通訊協(xié)議或通訊結(jié)束時(shí),PCI密碼卡的RAM執(zhí)行更新,重新產(chǎn)生會(huì)話身份號(hào)和第一隨機(jī)數(shù)替換RAM中保存的會(huì)話身份號(hào)和第一隨機(jī)數(shù)。
[0024]采用上述進(jìn)一步方案的有益效果是,將會(huì)話身份號(hào)和第一隨機(jī)數(shù)保存在PCI密碼卡的RAM中,當(dāng)啟動(dòng)安全通訊協(xié)議或通訊結(jié)束時(shí),PCI密碼卡的RAM執(zhí)行更新,保證了在一次通訊中會(huì)話身份號(hào)和第一隨機(jī)數(shù)不變,維持了通訊的唯一性,不會(huì)出現(xiàn)交叉或出錯(cuò)的情況。
[0025]進(jìn)一步,所述步驟3具體包括以下內(nèi)容:
[0026]接收遠(yuǎn)程管理介質(zhì)反饋的處理結(jié)果,判斷處理結(jié)果中的會(huì)話身份號(hào)與RAM中的會(huì)話身份號(hào)是否一致,只有一致時(shí)執(zhí)行步驟4;其中處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝。
[0027]采用上述進(jìn)一步方案的有益效果是,通過會(huì)話身份號(hào)判斷是否是同一通訊過程,如出現(xiàn)不一致,將不進(jìn)行通訊。
[0028]進(jìn)一步,所述步驟4中的驗(yàn)證包括,使用預(yù)存的公鑰對(duì)第一隨機(jī)數(shù)、第二隨機(jī)數(shù)和簽名信息進(jìn)行驗(yàn)證;所述第二隨機(jī)數(shù)是遠(yuǎn)程管理介質(zhì)隨機(jī)產(chǎn)生,簽名信息是遠(yuǎn)程管理介質(zhì)采用私鑰對(duì)第二隨機(jī)數(shù)和接收的第一隨機(jī)數(shù)執(zhí)行簽名產(chǎn)生。
[0029]本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下:一種通訊方法,其應(yīng)用于遠(yuǎn)程管理介質(zhì)中,包括以下步驟:
[°03°]步驟1:接收PCI密碼卡發(fā)送的通訊請(qǐng)求;
[0031]步驟2:接收PCI密碼卡發(fā)送的封裝后的通訊相關(guān)信息,對(duì)通訊相關(guān)信息進(jìn)行處理得到處理結(jié)果并反饋到PCI密碼卡,所述處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝;
[0032]步驟3:PCI密碼卡對(duì)處理結(jié)果進(jìn)行驗(yàn)證,接收PCI密碼卡發(fā)送的驗(yàn)證結(jié)果,當(dāng)驗(yàn)證通過時(shí),結(jié)束與PCI密碼卡的通訊;否則,拋棄所述處理結(jié)果,結(jié)束通訊。
[0033]本發(fā)明的有益效果是:本發(fā)明可以解決支持虛擬化PCI密碼卡的權(quán)限控制、密鑰管理的安全性問題;使用會(huì)話身份號(hào)并結(jié)合簽名機(jī)制,確保通訊雙方能夠抵御重放攻擊;同時(shí)解決了對(duì)PCI密碼卡進(jìn)行管理時(shí),需要插接外部管理介質(zhì)的問題,通過遠(yuǎn)程管理介質(zhì),可以實(shí)現(xiàn)對(duì)PCI密碼卡的遠(yuǎn)程管理。
[0034]在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)。
[0035]進(jìn)一步,所述步驟I還包括,根據(jù)通訊請(qǐng)求生成一對(duì)對(duì)應(yīng)的公鑰和私鑰,將其中的公鑰發(fā)送到PCI密碼卡。
[0036]采用上述進(jìn)一步方案的有益效果是,PCI密碼卡和遠(yuǎn)程管理介質(zhì)之間采用對(duì)應(yīng)的公鑰和私鑰進(jìn)行標(biāo)識(shí)身份,防止出現(xiàn)通訊連接出錯(cuò)的問題,保證通訊方向正確。
[0037]進(jìn)一步,所述步驟2具體包括:
[0038]接收PCI密碼卡發(fā)送的封裝后的通訊相關(guān)信息,根據(jù)安全通訊協(xié)議的命令碼對(duì)通訊相關(guān)信息解封,得到會(huì)話身份號(hào)、第一隨機(jī)數(shù)和通訊內(nèi)容;
[0039]隨機(jī)生成第二隨機(jī)數(shù),使用私鑰對(duì)第一隨機(jī)數(shù)和第二隨機(jī)數(shù)執(zhí)行簽名,產(chǎn)生簽名信息;
[0040]將會(huì)話身份號(hào)、第二隨機(jī)數(shù)和簽名信息采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝;得到封裝后的處理結(jié)果并反饋到PCI密碼卡。
[0041]采用上述進(jìn)一步方案的有益效果是,采用命令碼、會(huì)話身份號(hào)進(jìn)行雙重驗(yàn)證,保證信息的正確性,并將會(huì)話身份號(hào)、第二隨機(jī)數(shù)和簽名信息封裝后反饋PCI密碼卡,保證了通訊的對(duì)應(yīng)性。
[0042]本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下:一種PCI密碼卡,包括:所述接收模塊、API接口、結(jié)果接收模塊和驗(yàn)證模塊;
[0043]所述接收模塊,接收外部調(diào)用指令,根據(jù)調(diào)用指令發(fā)送建立通訊請(qǐng)求到遠(yuǎn)程管理介質(zhì),與遠(yuǎn)程管理介質(zhì)建立通訊;
[0044]所述API接口,啟動(dòng)安全通訊協(xié)議,根據(jù)安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝通訊相關(guān)信息,并將封裝后的通訊相關(guān)信息發(fā)送至遠(yuǎn)程管理介質(zhì);
[0045]所述結(jié)果接收模塊,接收遠(yuǎn)程管理介質(zhì)反饋的處理結(jié)果,所述處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝;
[0046]所述驗(yàn)證模塊,對(duì)處理結(jié)果進(jìn)行驗(yàn)證,當(dāng)驗(yàn)證通過,則PCI密碼卡和遠(yuǎn)程管理介質(zhì)結(jié)束通訊。
[0047]本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下:一種遠(yuǎn)程管理介質(zhì),包括:請(qǐng)求接收模塊、通訊處理模塊和通訊完成模塊;
[0048]所述請(qǐng)求接收模塊,接收PCI密碼卡發(fā)送的通訊請(qǐng)求;
[0049]所述通訊處理模塊,接收PCI密碼卡發(fā)送的封裝后的通訊相關(guān)信息,對(duì)通訊相關(guān)信息進(jìn)行處理得到處理結(jié)果并反饋到PCI密碼卡,所述處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝;
[0050]所述通訊完成模塊,接收PCI密碼卡發(fā)送的驗(yàn)證結(jié)果,當(dāng)驗(yàn)證通過時(shí),結(jié)束與PCI密碼卡的通訊。
[0051]本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下:一種通訊系統(tǒng),包括上述PCI密碼卡和遠(yuǎn)程管理介質(zhì);
[0052]所述PCI密碼卡接收外部調(diào)用指令,根據(jù)調(diào)用指令與遠(yuǎn)程管理介質(zhì)建立通訊。
[0053]本發(fā)明的有益效果是:本發(fā)明提供了新型的管理機(jī)制,開放的接口,客戶可以靈活的選擇權(quán)限控制的載體,這一點(diǎn)區(qū)別于現(xiàn)有只能選擇廠商配送的介質(zhì)的模式。如:可以采用USB KEY、軟證書等軟硬件設(shè)備作為權(quán)限控制角色(如:管理員,操作員),載體只需具備產(chǎn)生隨機(jī)數(shù)、SM2、SM3等密碼運(yùn)算功能,能夠安全的存儲(chǔ)密鑰功能即可。
【附圖說明】
[0054]圖1為本發(fā)明實(shí)施例1所述的一種通訊方法流程圖;
[0055]圖2為本發(fā)明實(shí)施例2所述的一種通訊方法流程圖;
[0056]圖3為本發(fā)明實(shí)施例3所述的一種PCI密碼卡結(jié)構(gòu)示意圖;
[0057]圖4為本發(fā)明實(shí)施例4所述的一種遠(yuǎn)程管理介質(zhì)結(jié)構(gòu)示意圖;
[0058]圖5為本發(fā)明實(shí)施例5所述的一種通訊系統(tǒng)結(jié)構(gòu)示意圖;
[0059]圖6為本發(fā)明具體示例中通訊協(xié)議命令格式示意圖。
[0060]附圖中,各標(biāo)號(hào)所代表的部件列表如下:
[0061 ] 1、接收模塊,2、API接口,3、結(jié)果接收模塊,4、驗(yàn)證模塊,5、請(qǐng)求接收模塊,6、通訊處理模塊,7、通訊完成模塊,1、PCI密碼卡,20、遠(yuǎn)程管理介質(zhì)。
【具體實(shí)施方式】
[0062]以下結(jié)合附圖對(duì)本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。
[0063]如圖1所示,為本發(fā)明實(shí)施例1所述的一種通訊方法,其應(yīng)用于PCI密碼卡中,包括以下步驟:
[0064]步驟1:接收外部調(diào)用指令,根據(jù)調(diào)用指令發(fā)送建立通訊請(qǐng)求到遠(yuǎn)程管理介質(zhì),與遠(yuǎn)程管理介質(zhì)建立通訊;
[0065]步驟2:啟動(dòng)安全通訊協(xié)議,根據(jù)安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝通訊相關(guān)信息,并將封裝后的通訊相關(guān)信息發(fā)送至遠(yuǎn)程管理介質(zhì);
[0066]步驟3:接收遠(yuǎn)程管理介質(zhì)反饋的處理結(jié)果,所述處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝;
[0067]步驟4:對(duì)處理結(jié)果進(jìn)行驗(yàn)證,當(dāng)驗(yàn)證通過,則PCI密碼卡和遠(yuǎn)程管理介質(zhì)結(jié)束通訊;否則,表示通訊過程中可能受到攻擊或數(shù)據(jù)傳輸出現(xiàn)錯(cuò)誤,PCI密碼卡拋棄接收的所述處理結(jié)果,并記錄發(fā)起方的管理員ID及發(fā)送錯(cuò)誤時(shí)間等信息以便排查問題,結(jié)束通訊。
[0068]所述步驟I還包括,與遠(yuǎn)程管理介質(zhì)開始建立通訊后,接收遠(yuǎn)程管理介質(zhì)發(fā)送的公鑰并保存,所述公鑰與遠(yuǎn)程管理介質(zhì)內(nèi)的私鑰相對(duì)應(yīng)。
[0069]所述公鑰為SM2秘鑰的公鑰,所述私鑰為SM2秘鑰的私鑰。
[0070]所述步驟2具體包括以下內(nèi)容:啟動(dòng)安全通訊協(xié)議,產(chǎn)生會(huì)話身份號(hào)和第一隨機(jī)數(shù);根據(jù)安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝通訊內(nèi)容、會(huì)話身份號(hào)和第一隨機(jī)數(shù)得到封裝后的通訊相關(guān)信息,并將封裝后的通訊相關(guān)信息發(fā)送至遠(yuǎn)程管理介質(zhì)。
[0071 ]所述產(chǎn)生會(huì)話身份號(hào)和第一隨機(jī)數(shù)保存在PCI密碼卡的RAM中;當(dāng)啟動(dòng)安全通訊協(xié)議或通訊結(jié)束時(shí),PCI密碼卡的RAM執(zhí)行更新,重新產(chǎn)生會(huì)話身份號(hào)和第一隨機(jī)數(shù)替換RAM中保存的會(huì)話身份號(hào)和第一隨機(jī)數(shù)。
[0072]所述步驟3具體包括以下內(nèi)容:接收遠(yuǎn)程管理介質(zhì)反饋的處理結(jié)果,判斷處理結(jié)果中的會(huì)話身份號(hào)與RAM中的會(huì)話身份號(hào)是否一致,只有一致時(shí)執(zhí)行步驟4;其中處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝。
[0073]所述步驟4中的驗(yàn)證包括,使用預(yù)存的公鑰對(duì)第一隨機(jī)數(shù)、第二隨機(jī)數(shù)和簽名信息進(jìn)行驗(yàn)證;所述第二隨機(jī)數(shù)是遠(yuǎn)程管理介質(zhì)隨機(jī)產(chǎn)生,簽名信息是遠(yuǎn)程管理介質(zhì)采用私鑰對(duì)第二隨機(jī)數(shù)和接收的第一隨機(jī)數(shù)執(zhí)行簽名產(chǎn)生。
[0074]如圖2所示,為本發(fā)明實(shí)施例2所述的一種通訊方法,其應(yīng)用于遠(yuǎn)程管理介質(zhì)中,包括以下步驟:
[0075]步驟1:接收PCI密碼卡發(fā)送的通訊請(qǐng)求;
[0076]步驟2:接收PCI密碼卡發(fā)送的封裝后的通訊相關(guān)信息,對(duì)通訊相關(guān)信息進(jìn)行處理得到處理結(jié)果并反饋到PCI密碼卡,所述處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝;
[0077]步驟3:PCI密碼卡對(duì)處理結(jié)果進(jìn)行驗(yàn)證,接收PCI密碼卡發(fā)送的驗(yàn)證結(jié)果,當(dāng)驗(yàn)證通過時(shí),結(jié)束與PCI密碼卡的通訊;否則,表示通訊過程中可能受到攻擊或數(shù)據(jù)傳輸出現(xiàn)錯(cuò)誤,遠(yuǎn)程管理介質(zhì)拋棄接收的所述處理結(jié)果,并記錄發(fā)起方的管理員ID及發(fā)送錯(cuò)誤時(shí)間等信息以便排查問題,結(jié)束通訊。
[0078]所述步驟I還包括,根據(jù)通訊請(qǐng)求生成一對(duì)對(duì)應(yīng)的公鑰和私鑰,將其中的公鑰發(fā)送到PCI密碼卡。
[0079]所述步驟2具體包括:接收PCI密碼卡發(fā)送的封裝后的通訊相關(guān)信息,根據(jù)安全通訊協(xié)議的命令碼對(duì)通訊相關(guān)信息解封,得到會(huì)話身份號(hào)、第一隨機(jī)數(shù)和通訊內(nèi)容;
[0080]隨機(jī)生成第二隨機(jī)數(shù),使用私鑰對(duì)第一隨機(jī)數(shù)和第二隨機(jī)數(shù)執(zhí)行簽名,產(chǎn)生簽名信息;
[0081]將會(huì)話身份號(hào)、第二隨機(jī)數(shù)和簽名信息采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝;得到封裝后的處理結(jié)果并反饋到PCI密碼卡。
[0082]如圖3所示,為本發(fā)明實(shí)施例3所述的一種PCI密碼卡,包括:所述接收模塊1、API接口 2、結(jié)果接收模塊3和驗(yàn)證模塊4 ;
[0083]所述接收模塊I,接收外部調(diào)用指令,根據(jù)調(diào)用指令發(fā)送建立通訊請(qǐng)求到遠(yuǎn)程管理介質(zhì),與遠(yuǎn)程管理介質(zhì)建立通訊;
[0084]所述API接口 2,啟動(dòng)安全通訊協(xié)議,根據(jù)安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝通訊相關(guān)信息,并將封裝后的通訊相關(guān)信息發(fā)送至遠(yuǎn)程管理介質(zhì);
[0085]所述結(jié)果接收模塊3,接收遠(yuǎn)程管理介質(zhì)反饋的處理結(jié)果,所述處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝;
[0086]所述驗(yàn)證模塊4,對(duì)處理結(jié)果進(jìn)行驗(yàn)證,當(dāng)驗(yàn)證通過,則PCI密碼卡和遠(yuǎn)程管理介質(zhì)結(jié)束通訊。
[0087]所述接收模塊I還用于,與遠(yuǎn)程管理介質(zhì)開始建立通訊后,接收遠(yuǎn)程管理介質(zhì)發(fā)送的公鑰,所述公鑰與遠(yuǎn)程管理介質(zhì)內(nèi)的私鑰相對(duì)應(yīng)。
[0088]所述公鑰為SM2秘鑰的公鑰,所述私鑰為SM2秘鑰的私鑰。
[0089]所述API接口2用于,啟動(dòng)安全通訊協(xié)議,產(chǎn)生會(huì)話身份號(hào)和第一隨機(jī)數(shù);根據(jù)安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝通訊內(nèi)容、會(huì)話身份號(hào)和第一隨機(jī)數(shù)得到封裝后的通訊相關(guān)信息,并將封裝后的通訊相關(guān)信息發(fā)送至遠(yuǎn)程管理介質(zhì)。
[0090]所述產(chǎn)生會(huì)話身份號(hào)和第一隨機(jī)數(shù)保存在PCI密碼卡的RAM中;當(dāng)啟動(dòng)安全通訊協(xié)議或通訊結(jié)束時(shí),PCI密碼卡的RAM執(zhí)行更新。
[0091 ]所述結(jié)果接收模塊3用于,接收遠(yuǎn)程管理介質(zhì)反饋的處理結(jié)果,判斷處理結(jié)果中的會(huì)話身份號(hào)與RAM中的會(huì)話身份號(hào)是否一致,只有一致時(shí)執(zhí)行步驟4;其中處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝。
[0092]所述驗(yàn)證模塊4用于,使用預(yù)存的公鑰對(duì)第一隨機(jī)數(shù)、第二隨機(jī)數(shù)和簽名信息進(jìn)行驗(yàn)證;所述第二隨機(jī)數(shù)是遠(yuǎn)程管理介質(zhì)隨機(jī)產(chǎn)生,簽名信息是遠(yuǎn)程管理介質(zhì)采用私鑰對(duì)第二隨機(jī)數(shù)和接收的第一隨機(jī)數(shù)執(zhí)行簽名產(chǎn)生。
[0093]如圖4所示,為本發(fā)明實(shí)施例4所述的一種遠(yuǎn)程管理介質(zhì),包括:請(qǐng)求接收模塊5、通訊處理模塊6和通訊完成模塊7;
[0094]所述請(qǐng)求接收模塊5,接收PCI密碼卡發(fā)送的通訊請(qǐng)求;
[0095]所述通訊處理模塊6,接收PCI密碼卡發(fā)送的封裝后的通訊相關(guān)信息,對(duì)通訊相關(guān)信息進(jìn)行處理得到處理結(jié)果并反饋到PCI密碼卡,所述處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝;
[0096]所述通訊完成模塊7,接收PCI密碼卡發(fā)送的驗(yàn)證結(jié)果,當(dāng)驗(yàn)證通過時(shí),結(jié)束與PCI密碼卡的通訊。
[0097]所述請(qǐng)求接收模塊5還用于,根據(jù)通訊請(qǐng)求生成一對(duì)對(duì)應(yīng)的公鑰和私鑰,將其中的公鑰發(fā)送到PCI密碼卡。
[0098]所述通訊處理模塊6用于,接收PCI密碼卡發(fā)送的封裝后的通訊相關(guān)信息,根據(jù)安全通訊協(xié)議的命令碼對(duì)通訊相關(guān)信息解封,得到會(huì)話身份號(hào)、第一隨機(jī)數(shù)和通訊內(nèi)容;隨機(jī)生成第二隨機(jī)數(shù),使用私鑰對(duì)第一隨機(jī)數(shù)和第二隨機(jī)數(shù)執(zhí)行簽名,產(chǎn)生簽名信息;將會(huì)話身份號(hào)、第二隨機(jī)數(shù)和簽名信息采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝;得到封裝后的處理結(jié)果并反饋到PCI密碼卡。
[0099]如圖5所示,為本發(fā)明實(shí)施例5所述的一種通訊系統(tǒng),包括上述PCI密碼卡10和遠(yuǎn)程管理介質(zhì)20;
[0100]所述PCI密碼卡10接收外部調(diào)用指令,根據(jù)調(diào)用指令與遠(yuǎn)程管理介質(zhì)20建立通訊;
[0101]所述PCI密碼卡10和遠(yuǎn)程管理介質(zhì)20的通訊采用挑戰(zhàn)應(yīng)答方式進(jìn)行。
[0102]本發(fā)明具體示例通訊及管理(以管理員角色登陸為例)過程包括:
[0103]1.為PCI密碼卡軟件系統(tǒng),應(yīng)用程序調(diào)用軟件系統(tǒng)提供的接口中的管理員登陸功會(huì)K;
[0104]2.為PCI密碼卡內(nèi)部產(chǎn)生會(huì)話身份號(hào)、隨機(jī)數(shù)Rl并啟動(dòng)通訊協(xié)議;
[0105]3.為遠(yuǎn)程管理介質(zhì)接收數(shù)據(jù)并根據(jù)通訊協(xié)議命令格式解析數(shù)據(jù)包,產(chǎn)生隨機(jī)數(shù)R2并使用管理介質(zhì)中的簽名密鑰對(duì)私鑰對(duì)Rl和R2簽名,根據(jù)通訊協(xié)議命令格式組織數(shù)據(jù)包發(fā)送給PCI密碼卡軟件系統(tǒng);
[0106]4.為PCI密碼卡軟件系統(tǒng)接收到數(shù)據(jù)并根據(jù)通訊協(xié)議命令格式解析數(shù)據(jù)包,判斷會(huì)話身份號(hào)是否相符并維護(hù)當(dāng)前會(huì)話;
[0107]5.為PCI密碼卡驗(yàn)證數(shù)據(jù)包中Rl和R2簽名結(jié)果,如驗(yàn)證通過則表明通訊協(xié)議握手成功且管理員登陸成功,PCI密碼卡設(shè)置登錄成功標(biāo)識(shí)并將內(nèi)部維護(hù)的會(huì)話身份號(hào)清零;
[0108]6.為PCI密碼卡軟件系統(tǒng)關(guān)閉通訊協(xié)議,通訊結(jié)束。
[0109]客戶通過調(diào)用PCI密碼卡提供的API接口操作PCI密碼卡并與遠(yuǎn)程管理介質(zhì)通訊,啟動(dòng)安全通訊協(xié)議前每個(gè)遠(yuǎn)程管理介質(zhì)均產(chǎn)生一個(gè)SM2密鑰對(duì)標(biāo)識(shí)身份,而對(duì)應(yīng)的SM2密鑰的公鑰導(dǎo)入PCI密碼卡。用戶調(diào)用API接口啟動(dòng)安全通訊協(xié)議同時(shí)PCI密碼卡會(huì)產(chǎn)生會(huì)話身份號(hào)和32字節(jié)隨機(jī)數(shù)Rl,會(huì)話身份號(hào)和隨機(jī)數(shù)Rl維護(hù)在PCI密碼卡DSP的RAM中,只有每次啟動(dòng)安全協(xié)議或通訊結(jié)束時(shí)更新。API接口內(nèi)部根據(jù)通訊協(xié)議命令格式封裝通訊內(nèi)容并發(fā)送至遠(yuǎn)程管理介質(zhì)。遠(yuǎn)程管理介質(zhì)檢查通訊命令碼,記錄會(huì)話身份號(hào),同時(shí)產(chǎn)生32字節(jié)隨機(jī)數(shù)R2并使用SM2密鑰對(duì)的私鑰對(duì)Rl和R2簽名,按照通訊協(xié)議命令碼格式將會(huì)話身份號(hào)、R2、簽名結(jié)果封裝并發(fā)送給PCI密碼卡軟件系統(tǒng),PCI密碼卡軟件系統(tǒng)首先檢測(cè)會(huì)話身份號(hào)是否相符,此機(jī)制用來實(shí)現(xiàn)維護(hù)當(dāng)前會(huì)話。會(huì)話身份號(hào)檢測(cè)通過后使用SM2密鑰對(duì)公鑰驗(yàn)證Rl、R2和簽名結(jié)果,如驗(yàn)證通過則通訊建立。
[0110]PCI密碼卡和遠(yuǎn)程管理介質(zhì)的通訊過程中,只有PCI密碼卡能夠發(fā)起通訊,通訊采用挑戰(zhàn)應(yīng)答的方式,使用會(huì)話身份號(hào)并結(jié)合SM2簽名等機(jī)制確保通訊雙方能夠抵御重放攻擊。
[0111]圖6為本發(fā)明具體示例中通訊協(xié)議命令格式,通訊中數(shù)據(jù)包以int單位。其中:a為通訊的命令碼,命令碼包括握手、登陸(管理員角色、操作員角色)、登出、備份、恢復(fù)等。b為會(huì)話身份號(hào),會(huì)話身份號(hào)是32bit的隨機(jī)數(shù),用于維護(hù)當(dāng)前通訊的會(huì)話。c為32字節(jié)的隨機(jī)數(shù),通訊中防重放攻擊。d為業(yè)務(wù)中的具體操作內(nèi)容。因便于客戶自由的選擇管理介質(zhì),此命令碼格式是開放的。
[0112]本發(fā)明所述的通訊系統(tǒng)主要由應(yīng)用層接口、通訊協(xié)議、PCI密碼卡、遠(yuǎn)程管理介質(zhì)四部分組成,四部分配合工作完成業(yè)務(wù)處理過程。具體實(shí)施方案如下:
[0113]客戶調(diào)用應(yīng)用層接口對(duì)PCI密碼卡進(jìn)行管理和訪問,管理功能首先是初始化功能,初始化功能為建立通訊協(xié)議做準(zhǔn)備,主要生成了用來標(biāo)識(shí)PCI密碼卡身份的SM2簽名密鑰對(duì)。根據(jù)通訊協(xié)議要求每個(gè)遠(yuǎn)程管理介質(zhì)產(chǎn)生一個(gè)標(biāo)明管理身份的SM2密鑰對(duì)(標(biāo)配三個(gè)管理員和一個(gè)操作員),PCI密碼卡導(dǎo)入管理員和操作員的SM2密鑰對(duì)公鑰,SM2密鑰對(duì)私鑰由客戶管理介質(zhì)保存及維護(hù)。
[0114]初始化工作完成后可以進(jìn)行正常的PCI密碼卡遠(yuǎn)程管理操作,應(yīng)用層接口提供了管理員登陸、操作員登陸、權(quán)限登出、備份、恢復(fù)等一系列的接口供客戶調(diào)用并管理PCI密碼卡。應(yīng)用層接口與PCI密碼卡通訊并根據(jù)通訊協(xié)議命令格式封裝數(shù)據(jù)包,啟動(dòng)通訊協(xié)議并與遠(yuǎn)程管理介質(zhì)通訊。遠(yuǎn)程管理介質(zhì)由客戶選擇和操作,主要是根據(jù)通訊協(xié)議命令格式解析數(shù)據(jù)包,響應(yīng)處理并按照通訊協(xié)議命令格式封裝數(shù)據(jù)包并發(fā)送給PCI密碼卡的應(yīng)用層接口。PCI密碼卡應(yīng)用層接口解析數(shù)據(jù)包,校驗(yàn)會(huì)話身份號(hào)、驗(yàn)證SM2簽名值等操作通過后,PCI密碼卡確定來自遠(yuǎn)程管理操作可信并執(zhí)行相應(yīng)的管理功能。如管理員登陸功能,則設(shè)置PCI密碼卡為管理員登陸成功狀態(tài);如備份功能,則產(chǎn)生備份密鑰、共享分割備份密鑰、加密備份密鑰分量、加密用戶密鑰等操作。操作完成后PCI密碼卡會(huì)將會(huì)話身份號(hào)清零,應(yīng)用層接口則關(guān)閉通訊協(xié)議。
[0115]以上實(shí)施過程在實(shí)際PCI密碼卡硬件上進(jìn)行了驗(yàn)證,并取得成功。本發(fā)明的新型PCI密碼卡軟件系統(tǒng)解決了 PCI密碼卡支持虛擬化權(quán)限管理及密鑰管理安全性問題,可以對(duì)PCI密碼卡進(jìn)行遠(yuǎn)程管理,提供的開發(fā)接口開放且靈活客戶可以自主實(shí)現(xiàn)對(duì)PCI密碼卡的管理。
[0116]以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種通訊方法,其應(yīng)用于PCI密碼卡中,其特征在于,包括以下步驟: 步驟1:接收外部調(diào)用指令,根據(jù)調(diào)用指令發(fā)送建立通訊請(qǐng)求到遠(yuǎn)程管理介質(zhì),與遠(yuǎn)程管理介質(zhì)建立通訊; 步驟2:啟動(dòng)安全通訊協(xié)議,根據(jù)安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝通訊相關(guān)信息,并將封裝后的通訊相關(guān)信息發(fā)送至遠(yuǎn)程管理介質(zhì); 步驟3:接收遠(yuǎn)程管理介質(zhì)反饋的處理結(jié)果,所述處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝; 步驟4:對(duì)處理結(jié)果進(jìn)行驗(yàn)證,當(dāng)驗(yàn)證通過,則PCI密碼卡和遠(yuǎn)程管理介質(zhì)結(jié)束通訊;否則,拋棄所述處理結(jié)果,結(jié)束通訊。2.根據(jù)權(quán)利要求1所述的一種通訊方法,其特征在于,所述步驟I還包括,與遠(yuǎn)程管理介質(zhì)開始建立通訊后,接收遠(yuǎn)程管理介質(zhì)發(fā)送的公鑰并保存,所述公鑰與遠(yuǎn)程管理介質(zhì)內(nèi)的私鑰相對(duì)應(yīng)。3.根據(jù)權(quán)利要求2所述的一種通訊方法,其特征在于,所述公鑰為SM2秘鑰的公鑰,所述私鑰為SM2秘鑰的私鑰。4.根據(jù)權(quán)利要求1-3任一項(xiàng)所述的一種通訊方法,其特征在于,所述步驟2具體包括以下內(nèi)容: 啟動(dòng)安全通訊協(xié)議,產(chǎn)生會(huì)話身份號(hào)和第一隨機(jī)數(shù); 根據(jù)安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝通訊內(nèi)容、會(huì)話身份號(hào)和第一隨機(jī)數(shù)得到封裝后的通訊相關(guān)信息,并將封裝后的通訊相關(guān)信息發(fā)送至遠(yuǎn)程管理介質(zhì)。5.根據(jù)權(quán)利要求4所述的一種通訊方法,其特征在于,所述產(chǎn)生會(huì)話身份號(hào)和第一隨機(jī)數(shù)保存在PCI密碼卡的RAM中;當(dāng)啟動(dòng)安全通訊協(xié)議或通訊結(jié)束時(shí),PCI密碼卡的RAM執(zhí)行更新,重新產(chǎn)生會(huì)話身份號(hào)和第一隨機(jī)數(shù)替換RAM中保存的會(huì)話身份號(hào)和第一隨機(jī)數(shù)。6.根據(jù)權(quán)利要求5所述的一種通訊方法,其特征在于,所述步驟3具體包括以下內(nèi)容: 接收遠(yuǎn)程管理介質(zhì)反饋的處理結(jié)果,判斷處理結(jié)果中的會(huì)話身份號(hào)與RAM中的會(huì)話身份號(hào)是否一致,只有一致時(shí)執(zhí)行步驟4;其中處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝。7.根據(jù)權(quán)利要求6所述的一種通訊方法,其特征在于,所述步驟4中的驗(yàn)證包括,使用預(yù)存的公鑰對(duì)第一隨機(jī)數(shù)、第二隨機(jī)數(shù)和簽名信息進(jìn)行驗(yàn)證;所述第二隨機(jī)數(shù)是遠(yuǎn)程管理介質(zhì)隨機(jī)產(chǎn)生,簽名信息是遠(yuǎn)程管理介質(zhì)采用私鑰對(duì)第二隨機(jī)數(shù)和接收的第一隨機(jī)數(shù)執(zhí)行簽名產(chǎn)生。8.一種通訊方法,其應(yīng)用于遠(yuǎn)程管理介質(zhì)中,其特征在于,包括以下步驟: 步驟1:接收PCI密碼卡發(fā)送的通訊請(qǐng)求; 步驟2:接收PCI密碼卡發(fā)送的封裝后的通訊相關(guān)信息,對(duì)通訊相關(guān)信息進(jìn)行處理得到處理結(jié)果并反饋到PCI密碼卡,所述處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝; 步驟3:PCI密碼卡對(duì)處理結(jié)果進(jìn)行驗(yàn)證,接收PCI密碼卡發(fā)送的驗(yàn)證結(jié)果,當(dāng)驗(yàn)證通過時(shí),結(jié)束與PCI密碼卡的通訊;否則,拋棄所述處理結(jié)果,結(jié)束通訊。9.根據(jù)權(quán)利要求8所述的一種通訊方法,其特征在于,所述步驟I還包括,根據(jù)通訊請(qǐng)求生成一對(duì)對(duì)應(yīng)的公鑰和私鑰,將其中的公鑰發(fā)送到PCI密碼卡。10.根據(jù)權(quán)利要求9所述的一種通訊方法,其特征在于,所述步驟2具體包括: 接收PCI密碼卡發(fā)送的封裝后的通訊相關(guān)信息,根據(jù)安全通訊協(xié)議的命令碼對(duì)通訊相關(guān)信息解封,得到會(huì)話身份號(hào)、第一隨機(jī)數(shù)和通訊內(nèi)容; 隨機(jī)生成第二隨機(jī)數(shù),使用私鑰對(duì)第一隨機(jī)數(shù)和第二隨機(jī)數(shù)執(zhí)行簽名,產(chǎn)生簽名信息; 將會(huì)話身份號(hào)、第二隨機(jī)數(shù)和簽名信息采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝;得到封裝后的處理結(jié)果并反饋到PCI密碼卡。11.一種PCI密碼卡,其對(duì)應(yīng)權(quán)利要求1-7任一項(xiàng)所述的通訊方法,其特征在于,包括:所述接收模塊、API接口、結(jié)果接收模塊和驗(yàn)證模塊; 所述接收模塊,接收外部調(diào)用指令,根據(jù)調(diào)用指令發(fā)送建立通訊請(qǐng)求到遠(yuǎn)程管理介質(zhì),與遠(yuǎn)程管理介質(zhì)建立通訊; 所述API接口,啟動(dòng)安全通訊協(xié)議,根據(jù)安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝通訊相關(guān)信息,并將封裝后的通訊相關(guān)信息發(fā)送至遠(yuǎn)程管理介質(zhì); 所述結(jié)果接收模塊,接收遠(yuǎn)程管理介質(zhì)反饋的處理結(jié)果,所述處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝; 所述驗(yàn)證模塊,對(duì)處理結(jié)果進(jìn)行驗(yàn)證,當(dāng)驗(yàn)證通過,則PCI密碼卡和遠(yuǎn)程管理介質(zhì)結(jié)束通訊。12.一種遠(yuǎn)程管理介質(zhì),其對(duì)應(yīng)權(quán)利要求8-10任一項(xiàng)所述的通訊方法,其特征在于,包括:請(qǐng)求接收模塊、通訊處理模塊和通訊完成模塊; 所述請(qǐng)求接收模塊,接收PCI密碼卡發(fā)送的通訊請(qǐng)求; 所述通訊處理模塊,接收PCI密碼卡發(fā)送的封裝后的通訊相關(guān)信息,對(duì)通訊相關(guān)信息進(jìn)行處理得到處理結(jié)果并反饋到PCI密碼卡,所述處理結(jié)果采用安全通訊協(xié)議預(yù)設(shè)的命令碼格式封裝; 所述通訊完成模塊,接收PCI密碼卡發(fā)送的驗(yàn)證結(jié)果,當(dāng)驗(yàn)證通過時(shí),結(jié)束與PCI密碼卡的通訊。13.—種通訊系統(tǒng),其特征在于,包括如權(quán)利要求11所述的PCI密碼卡和如權(quán)利要求12所述的遠(yuǎn)程管理介質(zhì); 所述PCI密碼卡接收外部調(diào)用指令,根據(jù)調(diào)用指令與遠(yuǎn)程管理介質(zhì)建立通訊。
【文檔編號(hào)】H04L9/30GK105933118SQ201610412873
【公開日】2016年9月7日
【申請(qǐng)日】2016年6月13日
【發(fā)明人】桑洪波
【申請(qǐng)人】北京三未信安科技發(fā)展有限公司