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