專利名稱:密鑰管理方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及電子支付領(lǐng)域,尤其涉及一種設(shè)備端的密鑰管理方法及系統(tǒng)。
背景技術(shù):
銀行卡(BANK Card)作為支付工具越來越普及,通常的銀行卡支付系統(tǒng)包括銷售點(diǎn)終端(Point Of Sale,POS)、POS收單系統(tǒng)(P0SP)、密碼鍵盤(PIN PAD)和硬件加密機(jī)(Hardware and Security Module, HSM)。其中POS終端能夠接受銀行卡信息,具有通訊功能,并接受柜員的指令完成金融交易信息和有關(guān)信息交換的設(shè)備;P0S收單系統(tǒng)對(duì)POS終端進(jìn)行集中管理,包括參數(shù)下載,密鑰下載,接受、處理或轉(zhuǎn)發(fā)POS終端的交易請(qǐng)求,并向POS終端回送交易結(jié)果信息,是集中管理和交易處理的系統(tǒng);密碼鍵盤(PIN PAD)是對(duì)各種金融交易相關(guān)的密鑰進(jìn)行安全存儲(chǔ)保護(hù),以及對(duì)PIN進(jìn)行加密保護(hù)的安全設(shè)備;硬件加密機(jī)(HSM)是對(duì)傳輸數(shù)據(jù)進(jìn)行加密的外圍硬件設(shè)備,用于PIN的加密和解密、驗(yàn)證報(bào)文和文件來源的正確性以及存儲(chǔ)密鑰。個(gè)人標(biāo)識(shí)碼(Personal Identification Number, PIN),即個(gè)人密碼,是在聯(lián)機(jī)交易中識(shí)別持卡人身份合法性的數(shù)據(jù)信息,在計(jì)算機(jī)和網(wǎng)絡(luò)系統(tǒng)中任何環(huán)節(jié)都不允許以明文的方式出現(xiàn);終端主密鑰(Terminal Master Key,TMK),POS終端工作時(shí),對(duì)工作密鑰進(jìn)行加密的主密鑰,加密保存在系統(tǒng)數(shù)據(jù)庫中;P0S終端廣泛應(yīng)用于銀行卡支付場合,比如廠商購物、酒店住宿等,是一種不可或缺的現(xiàn)代化支付手段,已經(jīng)融入人們生活的各種場合。銀行卡,特別是借記卡,一般都由持卡人設(shè)置了 PIN,在進(jìn)行支付過程中,POS終端除了上送銀行卡的磁道信息等資料外,還要持卡人輸入PIN供發(fā)卡銀行驗(yàn)證持卡人的身份合法性,確保銀行卡支付安全,保護(hù)持卡人的財(cái)產(chǎn)安全。為了防止PIN泄露或被破解,要求從終端到發(fā)卡銀行整個(gè)信息交互過程中,全程對(duì)PIN進(jìn)行安全加密保護(hù),不允許在計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)的任何環(huán)節(jié),PIN以明文的方式出現(xiàn),因此目前接受輸入PIN的POS終端都要求配備密鑰管理體系。POS終端的密鑰體系分成二級(jí):終端主密鑰(TMK)和工作密鑰(WK)。其中TMK在WK更新過程中,對(duì)WK進(jìn)行加密保護(hù)。每臺(tái)POS終端與POS之間共享唯一的TMK,必須要有安全保護(hù),保證只能寫入設(shè)備并參與計(jì)算,不能讀取;TMK是一個(gè)很關(guān)鍵的根密鑰,如果TMK被截取,工作密鑰就比較容易被破解,將嚴(yán)重威脅銀行卡支付安全。所以能否安全下載TMK到POS終端,成為整個(gè)POS終端安全性的關(guān)鍵。下面歸納現(xiàn)有的TMK下載方案如下:1、密鑰母POS方案:用戶在POS收單系統(tǒng)硬件加密機(jī)和密鑰母POS輸入一樣的傳輸加密密鑰。POS終端通過密鑰母POS向POS收單系統(tǒng)發(fā)起終端主密鑰下載請(qǐng)求,POS收單系統(tǒng)驅(qū)動(dòng)硬件加密機(jī)隨機(jī)生成終端主密鑰,并用傳輸加密密鑰加密傳輸給密鑰母P0S,密鑰母POS用傳輸加密密鑰解密后再傳輸給POS終端,POS終端獲得終端主密鑰明文,保存到POS終端密碼鍵 盤,從而實(shí)現(xiàn)POS終端和POS收單系統(tǒng)之間終端主密鑰的同步。2、IC卡解密方案:用戶在POS收單系統(tǒng)硬件加密機(jī)和IC卡中注入一樣的傳輸加密密鑰。用戶將IC卡插入POS終端,POS終端向POS收單系統(tǒng)發(fā)起終端主密鑰下載請(qǐng)求,POS收單系統(tǒng)驅(qū)動(dòng)硬件加密機(jī)隨機(jī)生成終端主密鑰,并用傳輸加密密鑰加密傳輸給POS終端,POS終端用IC卡中的傳輸加密密鑰解密終端主密鑰密文,獲得終端主密鑰明文,保存到POS終端密碼鍵盤,從而實(shí)現(xiàn)POS終端和POS收單系統(tǒng)之間終端主密鑰的同步。上述兩種方案都有以下缺點(diǎn):終端主密鑰明文出現(xiàn)在安全設(shè)備之外,為防范密鑰泄露風(fēng)險(xiǎn),終端主密鑰的下載必須控制在管理中心的安全機(jī)房進(jìn)行,通過人工集中下載終端主密鑰。從而帶來“維護(hù)中心機(jī)房工作量大;設(shè)備出廠后需要運(yùn)輸?shù)焦芾碇行陌踩珯C(jī)房下載密鑰才能部署到商戶,運(yùn)輸成本上升;為了集中下裝密鑰,需要大量的人手和工作時(shí)間,維護(hù)成本大、維護(hù)周期長”等問題。目前也有一種遠(yuǎn)程密鑰下載方案:該方案POS收單系統(tǒng)調(diào)用硬件加密機(jī)產(chǎn)生一對(duì)公私鑰,POS終端調(diào)用密碼鍵盤隨機(jī)生成主密鑰TMK,并用POS收單系統(tǒng)的公鑰進(jìn)行加密后上傳給TMS,TMS調(diào)用硬件加密機(jī)并用私鑰解密TMK后存儲(chǔ),用TMK加密工作密鑰下載給POS終端。該方案有以下缺點(diǎn)=POS收單系統(tǒng)對(duì)POS終端缺少身份鑒別,無法防止偽終端連接POS收單系統(tǒng)下載終端主密鑰;P0S終端缺少對(duì)POS收單系統(tǒng)的身份鑒別,無法防止偽POS收單系統(tǒng)下載偽終端主密鑰。
發(fā)明內(nèi)容
為解決上述技術(shù)問題,本發(fā)明采用的一個(gè)技術(shù)方案是:提供一種密鑰管理方法,包括:MTMS系統(tǒng)調(diào)用第一硬件加密機(jī)產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)中并將公鑰Pu發(fā)送至POS終端安全模塊中;MTMS系統(tǒng)調(diào)用第一硬件加密機(jī)、KMS系統(tǒng)調(diào)用第二硬件加密機(jī),分別在各自的硬件加密機(jī)中將MTMS權(quán)限分量及KMS權(quán)限 分量合成保護(hù)密鑰PK和MAC密鑰MAK,并且將所述保護(hù)密鑰PK和MAC密鑰MAK —并存儲(chǔ)在第一硬件加密機(jī)和第二硬件加密機(jī)中;操作終端控制POS終端在安全模塊中產(chǎn)生傳輸密鑰TK并保存在POS終端的安全模塊中,其中,傳輸密鑰TK由傳輸加密密鑰TEK和認(rèn)證密鑰AUK構(gòu)成;P0S終端在安全模塊中使用公鑰Pu加密傳輸密鑰TK生成第一傳輸密鑰密文Ctk_Pu ;P0S終端將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN通過操作終端發(fā)送至MTMS系統(tǒng);MTMS系統(tǒng)將接收到的終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫中;MTMS系統(tǒng)調(diào)用第一硬件加密機(jī)使用私鑰Pr解密第一傳輸密鑰密文Ctk_Pu獲得傳輸密鑰TK,然后使用保護(hù)密鑰PK加密傳輸密鑰TK并使用MAC密鑰MAK計(jì)算MAC值,生成第二傳輸密鑰密文Ctk_pk ;MTMS系統(tǒng)將終端序列號(hào)SN和第二傳輸密鑰密文Ctk_pk發(fā)送給KMS系統(tǒng);KMS系統(tǒng)將MTMS系統(tǒng)發(fā)送的終端序列號(hào)SN和第二傳輸密鑰密文Ctk_pk關(guān)聯(lián)地存儲(chǔ)在SN-TK_KMS數(shù)據(jù)庫中;P0S終端將終端序列號(hào)SN和下載主密鑰申請(qǐng)發(fā)送至KMS系統(tǒng);KMS系統(tǒng)接收到POS終端發(fā)送的終端序列號(hào)SN和下載主密鑰申請(qǐng)后,查詢與終端序列號(hào)SN對(duì)應(yīng)的第二傳輸密鑰密文Ctk_pk ;KMS系統(tǒng)調(diào)用第二硬件加密機(jī)使用MAC密鑰MAK對(duì)查詢到的第二傳輸密鑰密文Ctk_pk校驗(yàn)MAC合法性,如果校驗(yàn)通過,使用保護(hù)密鑰PK解密第二傳輸密鑰密文Ctk_pk獲得傳輸密鑰TK并將其存儲(chǔ)在所述第二硬件加密機(jī)中;KMS系統(tǒng)獲得傳輸密鑰TK后調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK與POS終端進(jìn)行雙向認(rèn)證,如果認(rèn)證通過,KMS系統(tǒng)調(diào)用第二硬件加密機(jī)使用傳輸加密密鑰TEK加密終端主密鑰TMK生成主密鑰密文Ctmk并將主密鑰密文發(fā)送至POS終端;P0S終端接收到KMS系統(tǒng)發(fā)送的主密鑰密文Ctmk后使用傳輸加密密鑰TEK解密主密鑰密文Ctmk獲得終端主密鑰TMK并存儲(chǔ)在安全模塊中。
其中,所述MTMS系統(tǒng)調(diào)用第一硬件加密機(jī)產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)中并將公鑰Pu發(fā)送至POS終端安全模塊中具體包括:MTMS系統(tǒng)調(diào)用第一硬件加密機(jī)產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)中并記錄私鑰Pr在第一硬件機(jī)密機(jī)中的索引號(hào),將公鑰Pu發(fā)給CA中心;MTMS系統(tǒng)從CA中心獲得生成的工作證書HsmWCRT并保存在數(shù)據(jù)庫中,工作證書HsmWCRT是使用根證書HsmRCRT對(duì)公鑰Pu簽名生成;操作終端從MTMS系統(tǒng)數(shù)據(jù)庫獲得工作證書HsmWCRT,并將工作證書HsmWCRT發(fā)送至POS終端;P0S終端使用燒片預(yù)裝的根證書HsmRCRT驗(yàn)證工作證書HsmWCRT的合法性;驗(yàn)證通過后POS終端從工作證書HsmWCRT提取公鑰Pu并保存在安全模塊中。其中,所述“P0S終端將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN通過操作終端發(fā)送至MTMS系統(tǒng),MTMS系統(tǒng)將接收到的終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫中”具體包括:P0S終端將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN發(fā)給操作終端;操作終端對(duì)接收到的第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN進(jìn)行打包并使用操作員卡進(jìn)行簽名,以及將經(jīng)過簽名的第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN發(fā)送至MTMS系統(tǒng);MTMS系統(tǒng)校驗(yàn)簽名的合法性,如果合法,將終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫。其中,所述的一種密鑰管理方法還包括步驟:MTMS系統(tǒng)從SN_Key_MTMS數(shù)據(jù)庫中提取需要發(fā)送的終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu,并驗(yàn)證簽名的合法性,如果合法,則執(zhí)行所述MTMS系統(tǒng)調(diào)用硬件加密機(jī)使用私鑰Pr解密第一傳輸密鑰密文Ctk_Pu獲得傳輸密鑰TK步驟。其中,KMS系統(tǒng)獲得傳輸密鑰TK后調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK與POS終端進(jìn)行雙向認(rèn)證具體包括:P0S終端產(chǎn)生第一隨機(jī)數(shù)Rndl并將第一隨機(jī)數(shù)Rndl發(fā)送至KMS系統(tǒng);KMS系統(tǒng)接收第一隨機(jī)數(shù)Rndl后產(chǎn)生隨機(jī)數(shù)第二 Rnd2,調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK加密第一隨機(jī)數(shù)Rndl獲得第一隨機(jī)數(shù)密文Crndl,將第一隨機(jī)數(shù)密文Crndl和第二隨機(jī)數(shù)Rnd2發(fā)送給POS終端;P0S終端使用認(rèn)證密鑰AUK解密接收到的第一隨機(jī)數(shù)密文Crndl獲得第三 隨機(jī)數(shù)Rndl’,判斷第三隨機(jī)數(shù)Rndl’與第一隨機(jī)數(shù)Rndl是否一致:如果第三隨機(jī)數(shù)Rndl’與第一隨機(jī)數(shù)Rndl —致,POS終端使用認(rèn)證密鑰AUK加密第二隨機(jī)數(shù)Rnd2生成第二隨機(jī)數(shù)密文Crnd2,并將第二隨機(jī)數(shù)密文Crnd2發(fā)送給KMS系統(tǒng);KMS系統(tǒng)調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK解密接收到的第二隨機(jī)數(shù)密文Crnd2獲得第四隨機(jī)數(shù)Rnd2’,判斷第四隨機(jī)數(shù)Rnd2’與第二隨機(jī)數(shù)Rnd2是否一致;如果第四隨機(jī)數(shù)Rnd2’與第二隨機(jī)數(shù)Rnd2 —致,KMS系統(tǒng)與POS終端認(rèn)證通過。本發(fā)明采用的另一個(gè)技術(shù)方案是:提供一種密鑰管理系統(tǒng),包括:第一硬件加密機(jī)、第二硬件加密機(jī)、操作終端、POS終端、MTMS系統(tǒng)以及KMS系統(tǒng),所述第一硬件加密機(jī)用于供MTMS系統(tǒng)調(diào)用,所述第二硬件加密機(jī)用于供KMS系統(tǒng)調(diào)用,其中,所述MTMS系統(tǒng)用于調(diào)用第一硬件加密機(jī)產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)中并將公鑰Pu發(fā)送至POS終端安全模塊中;所述MTMS系統(tǒng)用于調(diào)用第一硬件加密機(jī)、所述KMS系統(tǒng)用于調(diào)用第二硬件加密機(jī),分別在各自的硬件加密機(jī)中將MTMS權(quán)限分量及KMS權(quán)限分量合成保護(hù)密鑰PK和MAC密鑰MAK,并且將所述保護(hù)密鑰PK和MAC密鑰MAK —并存儲(chǔ)在第一硬件加密機(jī)和第二硬件加密機(jī)中;所述操作終端用于控制POS終端在安全模塊中產(chǎn)生傳輸密鑰TK并保存在POS終端的安全模塊中,其中,傳輸密鑰TK由傳輸加密密鑰TEK和認(rèn)證密鑰AUK構(gòu)成;所述POS終端用于在安全模塊中使用公鑰Pu加密傳輸密鑰TK生成第一傳輸密鑰密文Ctk_Pu以及將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN通過操作終端發(fā)送至MTMS系統(tǒng);所述MTMS系統(tǒng)用于將接收到的終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫中,以及用于調(diào)用第一硬件加密機(jī)使用私鑰Pr解密第一傳輸密鑰密文Ctk_Pu獲得傳輸密鑰TK,然后使用保護(hù)密鑰PK加密傳輸密鑰TK并使用MAC密鑰MAK計(jì)算MAC值,生成第二傳輸密鑰密文Ctk_pk,以及將終端序列號(hào)SN和第二傳輸密鑰密文Ctk_pk發(fā)送給KMS系統(tǒng);所述KMS系統(tǒng)用于將MTMS系統(tǒng)發(fā)送的終端序列號(hào)SN和第二傳輸密鑰密文Ctk_pk關(guān)聯(lián)地存儲(chǔ)在SN-TK_KMS數(shù)據(jù)庫中;所述POS終端用于將終端序列號(hào)SN和下載主密鑰申請(qǐng)發(fā)送至KMS系統(tǒng);所述KMS系統(tǒng)用于當(dāng)接收到POS終端發(fā)送的終端序列號(hào)SN和下載主密鑰申請(qǐng)后,查詢與終端序列號(hào)SN對(duì)應(yīng)的第二傳輸密鑰密文Ctk_pk ;所述KMS系統(tǒng)還用于調(diào)用第二硬件加密機(jī)使用MAC密鑰MAK對(duì)查詢到的第二傳輸密鑰密文Ctk_pk校驗(yàn)MAC合法性,如果校驗(yàn)通過,使用保護(hù)密鑰PK解密第二傳輸密鑰密文Ctk_pk獲得傳輸密鑰TK并將其存儲(chǔ)在所述第二硬件加密機(jī)中;所述KMS系統(tǒng)還用于獲得傳輸密鑰TK后調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK與POS終端進(jìn)行雙向認(rèn)證,如果認(rèn)證通過,KMS系統(tǒng)調(diào)用第二硬件加密機(jī)使用傳輸加密密鑰TEK加密終端主密鑰TMK生成主密鑰密文Ctmk并將主密鑰密文發(fā)送至POS終端;所述POS終端用于當(dāng)接收到KMS系統(tǒng)發(fā)送的主密鑰密文Ctmk后使用傳輸加密密鑰TEK解密主密鑰密文Ctmk獲得終端主密鑰TMK并存儲(chǔ)在安全模塊中。其中,所述MTMS系統(tǒng)用于調(diào)用第一硬件加密機(jī)產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)中并記錄私鑰Pr在第一硬件機(jī)密機(jī)中的索引號(hào)并將公鑰Pu發(fā)給CA中心;MTMS系統(tǒng)還用于從CA中心獲得生成的工作證書HsmWCRT并保存在數(shù)據(jù)庫中,工作證書HsmWCRT是使用根證書HsmRCRT對(duì)公鑰Pu簽名生成。操作終端用于從MTMS系統(tǒng)數(shù)據(jù)庫獲得工作證書HsmWCRT,并將工作證書HsmWCRT發(fā)送至POS終端;P0S終端用于使用燒片預(yù)裝的根證書HsmRCRT驗(yàn)證工作證書HsmWCRT的合法性,并用于當(dāng)驗(yàn)證通過后從工作證書HsmffCRT提取公鑰Pu并保存在安全模塊中。其中,所述POS終 端用于將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN發(fā)給操作終端;所述操作終端用于對(duì)接收到的第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN進(jìn)行打包并使用操作員卡進(jìn)行簽名,以及將經(jīng)過簽名的第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN發(fā)送至MTMS系統(tǒng);所述MTMS系統(tǒng)用于校驗(yàn)簽名的合法性,如果合法,將終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫。其中,所述MTMS系統(tǒng)用于從SN_Key_MTMS數(shù)據(jù)庫中提取需要發(fā)送的終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu,并驗(yàn)證簽名的合法性,如果合法,則執(zhí)行所述MTMS系統(tǒng)調(diào)用硬件加密機(jī)使用私鑰Pr解密第一傳輸密鑰密文Ctk_Pu獲得傳輸密鑰TK步驟。其中,所述POS終端用于產(chǎn)生第一隨機(jī)數(shù)Rndl并將第一隨機(jī)數(shù)Rndl發(fā)送至KMS系統(tǒng);所述KMS系統(tǒng)用于當(dāng)接收到第一隨機(jī)數(shù)Rndl后產(chǎn)生隨機(jī)數(shù)第二 Rnd2,調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK加密第一隨機(jī)數(shù)Rndl獲得第一隨機(jī)數(shù)密文Crndl,將第一隨機(jī)數(shù)密文密文Crndl和第二隨機(jī)數(shù)Rnd2發(fā)送給POS終端;所述POS終端用于使用認(rèn)證密鑰AUK解密接收到的第一隨機(jī)數(shù)密文Crndl獲得第三隨機(jī)數(shù)Rndl ’,判斷第三隨機(jī)數(shù)Rndl ’與第一隨機(jī)數(shù)Rndl是否一致:所述POS終端用于當(dāng)判定第三隨機(jī)數(shù)Rndl’與第一隨機(jī)數(shù)Rndl —致時(shí),使用認(rèn)證密鑰AUK加密第二隨機(jī)數(shù)Rnd2生成第二隨機(jī)數(shù)密文Crnd2,并將第二隨機(jī)數(shù)密文Crnd2發(fā)送給KMS系統(tǒng);所述KMS系統(tǒng)用于調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK解密接收到的第二隨機(jī)數(shù)密文Crnd2獲得第四隨機(jī)數(shù)Rnd2’,判斷第四隨機(jī)數(shù)Rnd2’與第二隨機(jī)數(shù)Rnd2是否一致;所述KMS系統(tǒng)還用于當(dāng)判定第四隨機(jī)數(shù)Rnd2’與第二隨機(jī)數(shù)Rnd2 —致時(shí)確定KMS系統(tǒng)與POS終端認(rèn)證通過。本發(fā)明的密鑰管理方法及系統(tǒng),遠(yuǎn)程下載主密鑰,避免POS終端需要集中下載主密鑰后才能布放到商戶,減少物流成本和維護(hù)成本。遠(yuǎn)程下載密鑰時(shí),KMS系統(tǒng)使用對(duì)稱算法加密需要傳輸?shù)拿荑€,保證只有對(duì)應(yīng)POS終端才能解密加密后的密鑰,保證數(shù)據(jù)傳輸?shù)母呷?。在雙向認(rèn)證的時(shí)候,POS終端的應(yīng)用程序并不能夠接觸到需要遠(yuǎn)程下裝到POS終端中的明文密鑰,只能接觸到該密鑰的密文形式,從而確保了安全裝載。本方案將非對(duì)算法和對(duì)稱算法結(jié)合,降低了系統(tǒng)的復(fù)雜度。
圖1是本發(fā)明一實(shí)施方式中一種密鑰管理系統(tǒng)的結(jié)構(gòu)框圖;圖2是本發(fā)明一實(shí)施方式中一種密鑰管理方法的流程圖。主要元件符號(hào)說明操作終端10 ;硬件加密機(jī)20 ;P0S終端30 ;MTMS系統(tǒng)40 ;KMS系統(tǒng)50 ;操作員卡11。
具體實(shí)施例方式為詳細(xì)說明本發(fā)明的技術(shù)內(nèi)容、`構(gòu)造特征、所實(shí)現(xiàn)目的及效果,以下結(jié)合實(shí)施方式并配合附圖詳予說明。首先,對(duì)本發(fā)明涉及的縮略語和關(guān)鍵術(shù)語進(jìn)行定義和說明:對(duì)稱密鑰:發(fā)送和接收數(shù)據(jù)的雙方必須使用相同的密鑰對(duì)明文進(jìn)行加密和解密運(yùn)算。對(duì)稱密鑰加密算法主要包括:DES、3DES、IDEA、FEAL, BLOffFISH等。非對(duì)稱密鑰:非對(duì)稱加密算法需要兩個(gè)密鑰:公開密鑰(私鑰Public key)和私有密鑰(公鑰Private key)。公開密鑰與私有密鑰是一對(duì),如果用公開密鑰對(duì)數(shù)據(jù)進(jìn)行加密,只有用對(duì)應(yīng)的私有密鑰才能解密;如果用私有密鑰對(duì)數(shù)據(jù)進(jìn)行加密,那么只有用對(duì)應(yīng)的公開密鑰才能解密。因?yàn)榧用芎徒饷苁褂玫氖莾蓚€(gè)不同的密鑰,所以這種算法叫作非對(duì)稱加密算法。非對(duì)稱加密算法實(shí)現(xiàn)機(jī)密信息交換的基本過程是:甲方生成一對(duì)密鑰并將其中的一把作為公用密鑰向其它方公開;得到該公用密鑰的乙方使用該密鑰對(duì)機(jī)密信息進(jìn)行加密后再發(fā)送給甲方;甲方再用自己保存的另一把專用密鑰對(duì)加密后的信息進(jìn)行解密。甲方可以使用乙方的公鑰對(duì)機(jī)密信息進(jìn)行加密后再發(fā)送給乙方;乙方再用自己的私匙對(duì)加密后的信息進(jìn)行解密。主要算法有RSA、Elgamal、背包算法、Rabin、D-H、ECC (橢圓曲線加密算法)。RSA: —種非對(duì)稱密鑰算法。RSA公鑰加密算法是1977年由Ron Rivest, AdiShamirh和Len Adleman在(美國麻省理工學(xué)院)開發(fā)的。RSA取名來自開發(fā)他們?nèi)叩拿?。RSA是目前最有影響力的公鑰加密算法,它能夠抵抗到目前為止已知的所有密碼攻擊,已被ISO推薦為公鑰數(shù)據(jù)加密標(biāo)準(zhǔn)。RSA算法基于一個(gè)十分簡單的數(shù)論事實(shí):將兩個(gè)大素?cái)?shù)相乘十分容易。RSA算法是第一個(gè)能同時(shí)用于加密和數(shù)字簽名的算法,也易于理解和操作。RSA是被研究得最廣泛的公鑰算法,從提出到現(xiàn)在的三十多年里,經(jīng)歷了各種攻擊的考驗(yàn),逐漸為人們接受,普遍認(rèn)為是目前最優(yōu)秀的公鑰方案之一。TDES Triple-DES:DES是一種對(duì)稱加密算法,密鑰是8字節(jié)。TDES是基于DES的加密算法,其密鑰是16字節(jié)或者24字節(jié)。TDES/3DES是英文Triple DES的縮語(即三重?cái)?shù)據(jù)加密標(biāo)準(zhǔn)),DES則是英文Data Encryption Standard (數(shù)據(jù)加密標(biāo)準(zhǔn))的縮語。DES是一種對(duì)稱密鑰加密算法,即數(shù)據(jù)加密密鑰與解密密鑰相同的加密算法。DES由IBM公司在20世紀(jì)70年代開發(fā)并公開,隨后為美國政府采用,并被美國國家標(biāo)準(zhǔn)局和美國國家標(biāo)準(zhǔn)協(xié)會(huì)(ANSI)承認(rèn)。TDES/3DES是DES加密算法的一種模式,它使用3條64位的密鑰對(duì)數(shù)據(jù)進(jìn)行三次加密。是DES的一個(gè)更安全的變形。請(qǐng)參閱圖1,是本發(fā)明一實(shí)施方式中一種密鑰管理系統(tǒng)的結(jié)構(gòu)框圖,該密鑰管理系統(tǒng)包括:操作終端10、第一硬件加密機(jī)20、第二印鑒加密機(jī)60、POS終端30、MTMS系統(tǒng)40以及KMS系統(tǒng)50。所述第一硬件加密機(jī)20用于供MTMS系統(tǒng)40調(diào)用,所述第二硬件加密機(jī)60用于供KMS系統(tǒng)50調(diào)用。操作終端10需要插入操作員卡11并且操作員卡11的密碼驗(yàn)證通過后才允許使用。操作員卡11用于通過輸入密碼對(duì)操作員身份進(jìn)行識(shí)別,以完成對(duì)TK數(shù)據(jù)包的簽名。所述MTMS系統(tǒng)40為物料追溯系統(tǒng),用于在工廠生產(chǎn)時(shí)記錄生產(chǎn)的設(shè)備相關(guān)信息。所述KMS系統(tǒng)為密鑰管理系統(tǒng),位于安全房中,負(fù)責(zé)POS終端主密鑰、工作密鑰等密鑰的生成和維護(hù),通常布放在客戶處所。所述MTMS系統(tǒng)40用于調(diào)用第一硬件加密機(jī)20產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)20中并將公鑰Pu發(fā)送至POS終端30安全模塊中,其中,公私鑰對(duì)在私鑰Pr未泄密或損壞的情況下,只產(chǎn)生一次。具體地,所述MTMS系統(tǒng)40用于調(diào)用第一硬件加密機(jī)20產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)20中并記錄私鑰Pr在第一硬件機(jī)密機(jī)20中的索引號(hào)并將公鑰Pu發(fā)給CA中心,CA中心又稱CA機(jī)構(gòu),即證書授權(quán)中心(Certificate Authority),或稱證書授權(quán)機(jī)構(gòu),有認(rèn)證數(shù)字證書合法性、證書密鑰管理、證書審批和證書生成等功能。MTMS系統(tǒng)40還用于從CA中心獲得生成的工作證書HsmffCRT并保存在數(shù) 據(jù)庫中,工作證書HsmWCRT是使用根證書HsmRCRT對(duì)公鑰Pu簽名生成。操作終端10用于從MTMS系統(tǒng)40數(shù)據(jù)庫獲得工作證書HsmWCRT,并將工作證書HsmWCRT發(fā)送至POS終端30 ;P0S終端30用于使用燒片預(yù)裝的根證書HsmRCRT驗(yàn)證工作證書HsmWCRT的合法性,并用于當(dāng)驗(yàn)證通過后從工作證書HsmWCRT提取公鑰Pu并保存在安全模塊中。所述MTMS系統(tǒng)40用于調(diào)用第一硬件加密機(jī)20、所述KMS系統(tǒng)50用于調(diào)用第二硬件加密機(jī)60,分別在各自的硬件加密機(jī)中將MTMS權(quán)限分量及KMS權(quán)限分量合成保護(hù)密鑰PK和MAC密鑰MAK,并且將所述保護(hù)密鑰PK和MAC密鑰MAK —并存儲(chǔ)在第一硬件加密機(jī)20和第二硬件加密機(jī)60中。所述操作終端10用于控制POS終端30在安全模塊中產(chǎn)生傳輸密鑰TK并保存在POS終端30的安全模塊中,其中,傳輸密鑰TK由傳輸加密密鑰TEK和認(rèn)證密鑰AUK構(gòu)成,傳輸加密密鑰TEK為對(duì)稱密鑰,用于POS終端30與KMS系統(tǒng)50之間主密鑰TMK的加密傳輸,加密保存在KMS系統(tǒng)50數(shù)據(jù)庫中,認(rèn)證密鑰AUK為對(duì)稱密鑰,用于POS終端30與KMS系統(tǒng)50之間的雙向認(rèn)證,加密保存在KMS系統(tǒng)50數(shù)據(jù)庫中。所述POS終端30用于在安全模塊中使用公鑰Pu加密傳輸密鑰TK生成第一傳輸密鑰密文Ctk_Pu以及將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN通過操作終端發(fā)送至MTMS系統(tǒng)40。具體地,所述POS終端30用于將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN發(fā)給操作終端10 ;所述操作終端10用于對(duì)接收到的第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN進(jìn)行打包并使用操作員卡進(jìn)行簽名,以及將經(jīng)過簽名的第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN發(fā)送至MTMS系統(tǒng)40 ;所述MTMS系統(tǒng)40用于校驗(yàn)簽名的合法性,如果合法,將終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫。所述MTMS系統(tǒng)40用于將接收到的終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫中,以及用于調(diào)用第一硬件加密機(jī)20使用私鑰Pr解密第一傳輸密鑰密文Ctk_Pu獲得傳輸密鑰TK,然后使用保護(hù)密鑰PK加密傳輸密鑰TK并使用MAC密鑰MAK計(jì)算MAC值,生成第二傳輸密鑰密文Ctk_pk,以及將終端序列號(hào)SN和第二傳輸密鑰密文Ctk_pk發(fā)送給KMS系統(tǒng)50。所述KMS系統(tǒng)50用于將MTMS系統(tǒng)40發(fā)送的終端序列號(hào)SN和第二傳輸密鑰密文Ctk_pk關(guān)聯(lián)地存儲(chǔ)在SN-TK_KMS數(shù)據(jù)庫中。所述POS終端30用于將終端序列號(hào)SN和下載主密鑰申請(qǐng)發(fā)送至KMS系統(tǒng)50 ;所述KMS系統(tǒng)50用于當(dāng)接收到POS終端30發(fā)送的終端序列號(hào)SN和下載主密鑰申請(qǐng)后,查詢與終端序列號(hào)SN對(duì)應(yīng)的第二傳輸密鑰密文Ctk_pk ;所述KMS系統(tǒng)50還用于調(diào)用第二硬件加密機(jī)60使用MAC密鑰MAK對(duì)查詢到的第二傳輸密鑰密文Ctk_pk校驗(yàn)MAC合法性,如果校驗(yàn)通過,使用保護(hù)密鑰PK解密第二傳輸密鑰密文Ctk_pk獲得傳輸密鑰TK并將其存儲(chǔ)在所述第二硬件加密機(jī)60中;所述KMS系統(tǒng)50還用于獲得傳輸密鑰TK后調(diào)用第二硬件加密機(jī)60使用認(rèn)證密鑰AUK與POS終端30進(jìn)行雙向認(rèn)證,如果認(rèn)證通過,KMS系統(tǒng)50調(diào)用第二硬件加密機(jī)60使用傳輸加密密鑰TEK加密終端主密鑰TMK生成主密鑰密文Ctmk并將主密鑰密文發(fā)送至POS終端30 ;所述POS終端30用于當(dāng)接收到KMS系統(tǒng)50發(fā)送的主密鑰密文Ctmk后使用傳輸加密密鑰TEK解密主密鑰密文Ctmk獲得終端主密鑰TMK并存儲(chǔ)在安全模塊中?!ぞ唧w地,所述雙向認(rèn)證實(shí)現(xiàn)過程如下:所述POS終端30用于產(chǎn)生第一隨機(jī)數(shù)Rndl并將第一隨機(jī)數(shù)Rndl發(fā)送至KMS系統(tǒng)50 ;所述KMS系統(tǒng)50用于當(dāng)接收到第一隨機(jī)數(shù)Rndl后產(chǎn)生隨機(jī)數(shù)第二 Rnd2,調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK加密第一隨機(jī)數(shù)Rndl獲得第一隨機(jī)數(shù)密文Crndl,將第一隨機(jī)數(shù)密文密文Crndl和第二隨機(jī)數(shù)Rnd2發(fā)送給POS終端30 ;所述POS終端30用于使用認(rèn)證密鑰AUK解密接收到的第一隨機(jī)數(shù)密文Crndl獲得第三隨機(jī)數(shù)Rndl’,判斷第三隨機(jī)數(shù)Rndl’與第一隨機(jī)數(shù)Rndl是否一致:所述POS終端30用于當(dāng)判定第三隨機(jī)數(shù)Rndl’與第一隨機(jī)數(shù)Rndl —致時(shí),調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK加密第二隨機(jī)數(shù)Rnd2生成第二隨機(jī)數(shù)密文Crnd2,并將第二隨機(jī)數(shù)密文Crnd2發(fā)送給KMS系統(tǒng)50 ;所述KMS系統(tǒng)50用于使用認(rèn)證密鑰AUK解密接收到的第二隨機(jī)數(shù)密文Crnd2獲得第四隨機(jī)數(shù)Rnd2’,判斷第四隨機(jī)數(shù)Rnd2’與第二隨機(jī)數(shù)Rnd2是否一致;所述KMS系統(tǒng)50還用于當(dāng)判定第四隨機(jī)數(shù)Rnd2’與第二隨機(jī)數(shù)Rnd2 —致時(shí)確定KMS系統(tǒng)50與POS終端30認(rèn)證通過。所述POS終端30接用于當(dāng)收到KMS系統(tǒng)50發(fā)送的主密鑰密文Ctmk后使用傳輸加密密鑰TEK解密主密鑰密文Ctmk獲得終端主密鑰TMK并存儲(chǔ)在安全模塊中。請(qǐng)參閱圖2,是本發(fā)明一實(shí)施方式中一種密鑰管理方法的流程圖。該密鑰下載方法運(yùn)行于所述密鑰管理系統(tǒng)中,該方法包括:步驟S10UMTMS系統(tǒng)調(diào)用第一硬件加密機(jī)產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)中并將公鑰Pu發(fā)送至POS終端安全模塊中;MTMS系統(tǒng)調(diào)用第一硬件加密機(jī)、KMS系統(tǒng)調(diào)用第二硬件加密機(jī),分別在各自的硬件加密機(jī)中將MTMS權(quán)限分量及KMS權(quán)限分量合成保護(hù)密鑰PK和MAC密鑰MAK,并且將所述保護(hù)密鑰PK和MAC密鑰MAK —并存儲(chǔ)在第一硬件加密機(jī)和第二硬件加密機(jī)中;步驟S102、操作終端控制POS終端在安全模塊中產(chǎn)生傳輸密鑰TK并保存在POS終端的安全模塊中,其中,傳輸密鑰TK由傳輸加密密鑰TEK和認(rèn)證密鑰AUK構(gòu)成;步驟S103、POS終端在安全模塊中使用公鑰Pu加密傳輸密鑰TK生成第一傳輸密鑰密文Ctk_Pu ;步驟S104、POS終端將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN通過操作終端發(fā)送至MTMS系統(tǒng);步驟S105、MTMS系統(tǒng)將接收到的終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫中;步驟S106、MTMS系統(tǒng)調(diào)用硬件加密機(jī)使用私鑰Pr解密第一傳輸密鑰密文Ctk_Pu獲得傳輸密鑰TK,然后使用保護(hù)密鑰PK加密傳輸密鑰TK并使用MAC密鑰MAK計(jì)算MAC值,生成第二傳輸密鑰密文Ctk_pk ;步驟S107、MTMS系統(tǒng)將終端序列號(hào)SN和第二傳輸密鑰密文Ctk_pk發(fā)送給KMS系統(tǒng);步驟S108、KMS系統(tǒng)將MTMS系統(tǒng)發(fā)送的終端序列號(hào)SN和第二傳輸密鑰密文Ctk_Pk關(guān)聯(lián)地存儲(chǔ)在SN-TK_KMS數(shù)據(jù)庫中;步驟S109、POS終端將 終端序列號(hào)SN和下載主密鑰申請(qǐng)發(fā)送至KMS系統(tǒng);步驟S110、KMS系統(tǒng)接收到POS終端發(fā)送的終端序列號(hào)SN和下載主密鑰申請(qǐng)后,查詢與終端序列號(hào)SN對(duì)應(yīng)的第二傳輸密鑰密文Ctk_pk ;步驟SI 11、KMS系統(tǒng)調(diào)用第二硬件加密機(jī)使用MAC密鑰MAK對(duì)查詢到的第二傳輸密鑰密文Ctk_pk校驗(yàn)MAC合法性,如果校驗(yàn)通過,使用保護(hù)密鑰PK解密第二傳輸密鑰密文Ctk_pk獲得傳輸密鑰TK并將其存儲(chǔ)在所述第二硬件加密機(jī)中;步驟S112、KMS系統(tǒng)獲得傳輸密鑰TK后調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK與POS終端進(jìn)行雙向認(rèn)證,如果認(rèn)證通過,KMS系統(tǒng)調(diào)用第二硬件加密機(jī)使用傳輸加密密鑰TEK加密終端主密鑰TMK生成主密鑰密文Ctmk并將主密鑰密文發(fā)送至POS終端;步驟S113、P0S終端接收到KMS系統(tǒng)發(fā)送的主密鑰密文Ctmk后使用傳輸加密密鑰TEK解密主密鑰密文Ctmk獲得終端主密鑰TMK并存儲(chǔ)在安全模塊中。其中,所述MTMS系統(tǒng)調(diào)用第一硬件加密機(jī)產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)中并將公鑰Pu發(fā)送至POS終端安全模塊中具體包括:S201、MTMS系統(tǒng)調(diào)用第一硬件加密機(jī)產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)中并記錄私鑰Pr在第一硬件機(jī)密機(jī)中的索引號(hào),將公鑰Pu發(fā)給CA中心;S202、CA中心使用根證書HsmRCRT簽名生成工作證書HsmWCRT ;S203、MTMS系統(tǒng)從CA中心獲得生成的工作證書HsmWCRT并保存在數(shù)據(jù)庫中;S204、操作終端從MTMS系統(tǒng)數(shù)據(jù)庫獲得工作證書HsmWCRT,并將工作S205、證書HsmffCRT發(fā)送至POS終端;S205、P0S終端使用燒片預(yù)裝的根證書HsmRCRT驗(yàn)證工作證書HsmWCRT的合法性;
S206、驗(yàn)證通過后POS終端從工作證書HsmWCRT提取公鑰Pu并保存在安全模塊中。所述“P0S終端將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN通過操作終端發(fā)送至MTMS系統(tǒng),MTMS系統(tǒng)將接收到的終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫中”具體包括:S301、POS終端將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN發(fā)給操作終端;S302、操作終端對(duì)接收到的第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN進(jìn)行打包并使用操作員卡進(jìn)行簽名,以及將經(jīng)過簽名的第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN發(fā)送至MTMS系統(tǒng);S303、MTMS系統(tǒng)校驗(yàn)簽名的合法性,如果合法,將終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫。其中,KMS系統(tǒng)獲得傳輸密鑰TK后使用認(rèn)證密鑰AUK與POS終端進(jìn)行雙向認(rèn)證具體包括:S401、POS終端產(chǎn)生第一隨機(jī)數(shù)Rndl并將第一隨機(jī)數(shù)Rndl發(fā)送至KMS系統(tǒng);S402、KMS系統(tǒng)接收第一隨機(jī)數(shù)Rndl后產(chǎn)生隨機(jī)數(shù)第二 Rnd2,調(diào)用第二加密機(jī)使用認(rèn)證密鑰AUK加密第一隨機(jī)數(shù)Rndl獲得第一隨機(jī)數(shù)密文Crndl,將第一隨機(jī)數(shù)密文密文Crndl和第二隨機(jī)數(shù)Rnd2發(fā)送給POS終端;S403、POS終端使用認(rèn)證密鑰AUK解密接收到的第一隨機(jī)數(shù)密文Crndl獲得第三隨機(jī)數(shù)Rndl’,判斷第三隨機(jī)數(shù)Rndl’與第一隨機(jī)數(shù)Rndl是否一致;S404、如果第三隨機(jī)數(shù)Rndl ’與第一隨機(jī)數(shù)Rndl —致,POS終端使用認(rèn)證密鑰AUK加密第二隨機(jī)數(shù)Rnd2生成第二隨機(jī)數(shù)密文Crnd2,并將第二隨機(jī)數(shù)密文Crnd2發(fā)送給KMS系統(tǒng);S405、KMS系統(tǒng)調(diào)用第二加密機(jī)使用認(rèn)證密鑰AUK解密接收到的第二隨機(jī)數(shù)密文Crnd2獲得第四隨機(jī)數(shù)Rnd2’,判斷第四隨機(jī)數(shù)Rnd2’與第二隨機(jī)數(shù)Rnd2是否一致;如果第四隨機(jī)數(shù)Rnd2’與第二隨機(jī)數(shù)Rnd2 —致,KMS系統(tǒng)與POS終端認(rèn)證通過。本發(fā)明的密鑰管理方法及系統(tǒng),遠(yuǎn)程下載主密鑰,避免POS終端需要集中下載主密鑰后才能布放到商戶,減少物流成本和維護(hù)成本。遠(yuǎn)程下載密鑰時(shí),KMS系統(tǒng)使用對(duì)稱算法加密需要傳輸?shù)拿荑€,保證只有對(duì)應(yīng)POS終端才能解密加密后的密鑰,保證數(shù)據(jù)傳輸?shù)母呷浴T陔p向認(rèn)證的時(shí)候,POS終端的應(yīng)用程序并不能夠接觸到需要遠(yuǎn)程下裝到POS終端中的明文密鑰,只能接觸到該密鑰的密文形式,從而確保了安全裝載。本方案將非對(duì)算法和對(duì)稱算法結(jié)合,降低了系統(tǒng)的復(fù)雜度。此過程中使用到傳輸加密密鑰和認(rèn)證密鑰,由POS終端產(chǎn)生,通過非對(duì)稱算法和對(duì)稱算法方式密文傳輸?shù)終MS系統(tǒng)中,解密過程均在硬件加密機(jī)中進(jìn)行,保證密鑰安全性。以上所述僅為本發(fā)明的實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明 的專利保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種密鑰管理方法,其特征在于,包括: MTMS系統(tǒng)調(diào)用第一硬件加密機(jī)產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)中并將公鑰Pu發(fā)送至POS終端安全模塊中; MTMS系統(tǒng)調(diào)用第一硬件加密機(jī)、KMS系統(tǒng)調(diào)用第二硬件加密機(jī),分別在各自的硬件加密機(jī)中將MTMS權(quán)限分量及KMS權(quán)限分量合成保護(hù)密鑰PK和MAC密鑰MAK,并且將所述保護(hù)密鑰PK和MAC密鑰MAK —并存儲(chǔ)在第一硬件加密機(jī)和第二硬件加密機(jī)中; 操作終端控制POS終端在安全模塊中產(chǎn)生傳輸密鑰TK并保存在POS終端的安全模塊中,其中,傳輸密鑰TK由傳輸加密密鑰TEK和認(rèn)證密鑰AUK構(gòu)成; POS終端在安全模塊中使用公鑰Pu加密傳輸密鑰TK生成第一傳輸密鑰密文Ctk_Pu ; POS終端將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN通過操作終端發(fā)送至MTMS系統(tǒng); MTMS系統(tǒng)將接收到的終端序列號(hào)SN和第一傳輸密鑰密文Ct k_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫中; MTMS系統(tǒng)調(diào)用第一硬件加密機(jī)使用私鑰Pr解密第一傳輸密鑰密文Ctk_Pu獲得傳輸密鑰TK,然后使用保護(hù)密鑰PK加密傳輸密鑰TK并使用MAC密鑰MAK計(jì)算MAC值,生成第二傳輸密鑰密文Ctk_pk ; MTMS系統(tǒng)將終端序列號(hào)SN和第二傳輸密鑰密文Ctk_pk發(fā)送給KMS系統(tǒng); KMS系統(tǒng)將MTMS系統(tǒng)發(fā)送的終端序列號(hào)SN和第二傳輸密鑰密文Ctk_pk關(guān)聯(lián)地存儲(chǔ)在SN-TK_KMS數(shù)據(jù)庫中;· POS終端將終端序列號(hào)SN和下載主密鑰申請(qǐng)發(fā)送至KMS系統(tǒng); KMS系統(tǒng)接收到POS終端發(fā)送的終端序列號(hào)SN和下載主密鑰申請(qǐng)后,查詢與終端序列號(hào)SN對(duì)應(yīng)的第二傳輸密鑰密文Ctk_pk ; KMS系統(tǒng)調(diào)用第二硬件加密機(jī)使用MAC密鑰MAK對(duì)查詢到的第二傳輸密鑰密文Ctk_pk校驗(yàn)MAC合法性,如果校驗(yàn)通過,使用保護(hù)密鑰PK解密第二傳輸密鑰密文Ctk_pk獲得傳輸密鑰TK并將其存儲(chǔ)在所述第二硬件加密機(jī)中; KMS系統(tǒng)獲得傳輸密鑰TK后調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK與POS終端進(jìn)行雙向認(rèn)證,如果認(rèn)證通過,KMS系統(tǒng)調(diào)用第二硬件加密機(jī)使用傳輸加密密鑰TEK加密終端主密鑰TMK生成主密鑰密文Ctmk并將主密鑰密文發(fā)送至POS終端; POS終端接收到KMS系統(tǒng)發(fā)送的主密鑰密文Ctmk后使用傳輸加密密鑰TEK解密主密鑰密文Ctmk獲得終端主密鑰TMK并存儲(chǔ)在安全模塊中。
2.根據(jù)權(quán)利要求1所述的一種密鑰管理方法,其特征在于,所述MTMS系統(tǒng)調(diào)用第一硬件加密機(jī)產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)中并將公鑰Pu發(fā)送至POS終端安全模塊中具體包括: MTMS系統(tǒng)調(diào)用第一硬件加密機(jī)產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)中并記錄私鑰Pr在第一硬件機(jī)密機(jī)中的索引號(hào),將公鑰Pu發(fā)給CA中心; MTMS系統(tǒng)從CA中心獲得生成的工作證書HsmWCRT并保存在數(shù)據(jù)庫中,工作證書HsmffCRT是使用根證書HsmRCRT對(duì)公鑰Pu簽名生成; 操作終端從MTMS系統(tǒng)數(shù)據(jù)庫獲得工作證書HsmWCRT,并將工作證書 HsmffCRT發(fā)送至POS終端;POS終端使用燒片預(yù)裝的根證書HsmRCRT驗(yàn)證工作證書HsmWCRT的合法性; 驗(yàn)證通過后POS終端從工作證書HsmWCRT提取公鑰Pu并保存在安全模塊中。
3.根據(jù)權(quán)利要求2所述的一種密鑰管理方法,其特征在于,所述“P0S終端將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN通過操作終端發(fā)送至MTMS系統(tǒng),MTMS系統(tǒng)將接收到的終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫中”具體包括: POS終端將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN發(fā)給操作終端; 操作終端對(duì)接收到的第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN進(jìn)行打包并使用操作員卡進(jìn)行簽名,以及將經(jīng)過簽名的第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN發(fā)送至MTMS系統(tǒng); MTMS系統(tǒng)校驗(yàn)簽名的合法性,如果合法,將終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫。
4.根據(jù)權(quán)利要求3所述的一種密鑰管理方法,其特征在于,還包括步驟:MTMS系統(tǒng)從SN-Key_MTMS數(shù)據(jù)庫中提取需要發(fā)送的終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu,并驗(yàn)證簽名的合法性,如果合法,則執(zhí)行所述MTMS系統(tǒng)調(diào)用硬件加密機(jī)使用私鑰Pr解密第一傳輸密鑰密文Ctk_Pu獲得 傳輸密鑰TK步驟。
5.根據(jù)權(quán)利要求3所述的一種密鑰管理方法,其特征在于,KMS系統(tǒng)獲得傳輸密鑰TK后調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK與POS終端進(jìn)行雙向認(rèn)證具體包括: POS終端產(chǎn)生第一隨機(jī)數(shù)Rndl并將第一隨機(jī)數(shù)Rndl發(fā)送至KMS系統(tǒng); KMS系統(tǒng)接收第一隨機(jī)數(shù)Rndl后產(chǎn)生隨機(jī)數(shù)第二 Rnd2,調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK加密第一隨機(jī)數(shù)Rndl獲得第一隨機(jī)數(shù)密文Crndl,將第一隨機(jī)數(shù)密文Crndl和第二隨機(jī)數(shù)Rnd2發(fā)送給POS終端; POS終端使用認(rèn)證密鑰AUK解密接收到的第一隨機(jī)數(shù)密文Crndl獲得第三隨機(jī)數(shù)Rndl’,判斷第三隨機(jī)數(shù)Rndl’與第一隨機(jī)數(shù)Rndl是否一致: 如果第三隨機(jī)數(shù)Rndl’與第一隨機(jī)數(shù)Rndl —致,POS終端使用認(rèn)證密鑰AUK加密第二隨機(jī)數(shù)Rnd2生成第二隨機(jī)數(shù)密文Crnd2,并將第二隨機(jī)數(shù)密文Crnd2發(fā)送給KMS系統(tǒng); KMS系統(tǒng)調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK解密接收到的第二隨機(jī)數(shù)密文Crnd2獲得第四隨機(jī)數(shù)Rnd2’,判斷第四隨機(jī)數(shù)Rnd2’與第二隨機(jī)數(shù)Rnd2是否一致; 如果第四隨機(jī)數(shù)Rnd2’與第二隨機(jī)數(shù)Rnd2 —致,KMS系統(tǒng)與POS終端認(rèn)證通過。
6.一種密鑰管理系統(tǒng),其特征在于,包括:第一硬件加密機(jī)、第二硬件加密機(jī)、操作終端、POS終端、MTMS系統(tǒng)以及KMS系統(tǒng),所述第一硬件加密機(jī)用于供MTMS系統(tǒng)調(diào)用,所述第二硬件加密機(jī)用于供KMS系統(tǒng)調(diào)用,其中, 所述MTMS系統(tǒng)用于調(diào)用第一硬件加密機(jī)產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)中并將公鑰Pu發(fā)送至POS終端安全模塊中; 所述MTMS系統(tǒng)用于調(diào)用第一硬件加密機(jī)、所述KMS系統(tǒng)用于調(diào)用第二硬件加密機(jī),分別在各自的硬件加密機(jī)中將MTMS權(quán)限分量及KMS權(quán)限分量合成保護(hù)密鑰PK和MAC密鑰MAK,并且將所述保護(hù)密鑰PK和MAC密鑰MAK —并存儲(chǔ)在第一硬件加密機(jī)和第二硬件加密機(jī)中; 所述操作終端用于控制POS終端在安全模塊中產(chǎn)生傳輸密鑰TK并保存在POS終端的安全模塊中,其中,傳輸密鑰TK由傳輸加密密鑰TEK和認(rèn)證密鑰AUK構(gòu)成; 所述POS終端用于在安全模塊中使用公鑰Pu加密傳輸密鑰TK生成第一傳輸密鑰密文Ctk_Pu以及將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN通過操作終端發(fā)送至MTMS系統(tǒng);所述MTMS系統(tǒng)用于將接收到的終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫中,以及用于調(diào)用第一硬件加密機(jī)使用私鑰Pr解密第一傳輸密鑰密文Ctk_Pu獲得傳輸密鑰TK,然后使用保護(hù)密鑰PK加密傳輸密鑰TK并使用MAC密鑰MAK計(jì)算MAC值,生成第二傳輸密鑰密文Ctk_pk,以及將終端序列號(hào)SN和第二傳輸密鑰密文Ctk_pk發(fā)送給KMS系統(tǒng); 所述KMS系統(tǒng)用于將MTMS系統(tǒng)發(fā)送的終端序列號(hào)SN和第二傳輸密鑰密文Ctk_pk關(guān)聯(lián)地存儲(chǔ)在SN-TK_KMS數(shù)據(jù)庫中; 所述POS終端用于將終端序列號(hào)SN和下載主密鑰申請(qǐng)發(fā)送至KMS系統(tǒng); 所述KMS系統(tǒng)用于當(dāng)接收到POS終端發(fā)送的終端序列號(hào)SN和下載主密鑰申請(qǐng)后,查詢與終端序列號(hào)SN對(duì)應(yīng)的第二傳輸密鑰密文Ctk_pk ; 所述KMS系統(tǒng)還用于調(diào)用第二硬件加密機(jī)使用MAC密鑰MAK對(duì)查詢到的第二傳輸密鑰密文Ctk_pk校驗(yàn)MAC合法性,如果校驗(yàn)通過,使用保護(hù)密鑰PK解密第二傳輸密鑰密文Ctk_Pk獲得傳輸密鑰TK并將其存儲(chǔ)在所述第二硬件加密機(jī)中; 所述KMS系統(tǒng)還用于獲得傳輸密鑰TK后調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK與POS終端進(jìn)行雙向認(rèn)證,如果認(rèn)證通過,KMS系統(tǒng)調(diào)用第二硬件加密機(jī)使用傳輸加密密鑰TEK加密終端主密鑰TMK生成主密鑰密文Ctmk并將主密鑰密文發(fā)送至POS終端; 所述POS終端用于當(dāng)接收到KMS系統(tǒng)發(fā)送的主密鑰密文Ctmk后使用傳輸加密密鑰TEK解密主密鑰密文Ctmk獲得終端主密鑰TMK并存儲(chǔ)在安全模塊中。
7.根據(jù)權(quán)利要求6所述的一種密鑰管理系統(tǒng),其特征在于,所述MTMS系統(tǒng)用于調(diào)用第一硬件加密機(jī)產(chǎn)生公鑰Pu和私鑰Pr,將私鑰Pr存儲(chǔ)在第一硬件加密機(jī)中并記錄私鑰Pr在第一硬件機(jī)密機(jī)中的索引號(hào)并將公鑰Pu發(fā)給CA中心; MTMS系統(tǒng)還用于從CA中心獲得生成的工作證書HsmWCRT并保存在數(shù)據(jù)庫中,工作證書HsmffCRT是使用根證書HsmRCRT對(duì)公鑰Pu簽名生成。
操作終端用于從MTMS系統(tǒng)數(shù)據(jù)庫獲得工作證書HsmWCRT,并將工作證 書HsmWCRT發(fā)送至POS終端; POS終端用于使用燒片預(yù)裝的根證書HsmRCRT驗(yàn)證工作證書HsmWCRT的合法性,并用于當(dāng)驗(yàn)證通過后從工作證書HsmWCRT提取公鑰Pu并保存在安全模塊中。
8.根據(jù)權(quán)利要求7所述的一種密鑰管理系統(tǒng),其特征在于, 所述POS終端用于將第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN發(fā)給操作終端;所述操作終端用于對(duì)接收到的第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN進(jìn)行打包并使用操作員卡進(jìn)行簽名,以及將經(jīng)過簽名的第一傳輸密鑰密文Ctk_Pu和終端序列號(hào)SN發(fā)送至MTMS系統(tǒng); 所述MTMS系統(tǒng)用于校驗(yàn)簽名的合法性,如果合法,將終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu關(guān)聯(lián)地存儲(chǔ)在SN-Key_MTMS數(shù)據(jù)庫。
9.根據(jù)權(quán)利要求8所述的一種密鑰管理系統(tǒng),其特征在于, 所述MTMS系統(tǒng)用于從SN-Key_MTMS數(shù)據(jù)庫中提取需要發(fā)送的終端序列號(hào)SN和第一傳輸密鑰密文Ctk_Pu,并驗(yàn)證簽名的合法性,如果合法,則執(zhí)行所述MTMS系統(tǒng)調(diào)用硬件加密機(jī)使用私鑰Pr解密第一傳輸密鑰密文Ctk_Pu獲得傳輸密鑰TK步驟。
10.根據(jù)權(quán)利要求8所述的一種密鑰管理系統(tǒng),其特征在于, 所述POS終端用于產(chǎn)生第一隨機(jī)數(shù)Rndl并將第一隨機(jī)數(shù)Rndl發(fā)送至KMS系統(tǒng); 所述KMS系統(tǒng)用于當(dāng)接收到第一隨機(jī)數(shù)Rndl后產(chǎn)生隨機(jī)數(shù)第二 Rnd2,調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK加密第一隨機(jī)數(shù)Rndl獲得第一隨機(jī)數(shù)密文Crndl,將第一隨機(jī)數(shù)密文密文Crndl和第二隨機(jī)數(shù)Rnd2發(fā)送給POS終端; 所述POS終端用于使用認(rèn)證密鑰AUK解密 接收到的第一隨機(jī)數(shù)密文Crndl獲得第三隨機(jī)數(shù)Rndl’,判斷第三隨機(jī)數(shù)Rndl’與第一隨機(jī)數(shù)Rndl是否一致: 所述POS終端用于當(dāng)判定第三隨機(jī)數(shù)Rndl ’與第一隨機(jī)數(shù)Rndl —致時(shí),使用認(rèn)證密鑰AUK加密第二隨機(jī)數(shù)Rnd2生成第二隨機(jī)數(shù)密文Crnd2,并將第二隨機(jī)數(shù)密文Crnd2發(fā)送給KMS系統(tǒng); 所述KMS系統(tǒng)用于調(diào)用第二硬件加密機(jī)使用認(rèn)證密鑰AUK解密接收到的第二隨機(jī)數(shù)密文Crnd2獲得第四隨機(jī)數(shù)Rnd2’,判斷第四隨機(jī)數(shù)Rnd2’與第二隨機(jī)數(shù)Rnd2是否一致;所述KMS系統(tǒng)還用于當(dāng)判定第四隨機(jī)數(shù)Rnd2’與第二隨機(jī)數(shù)Rnd2 —致時(shí)確定KMS系統(tǒng)與POS終端認(rèn)證通過。
全文摘要
本發(fā)明公開一種密鑰管理方法及系統(tǒng),遠(yuǎn)程下載主密鑰,避免POS終端需要集中下載主密鑰后才能布放到商戶,減少物流成本和維護(hù)成本。遠(yuǎn)程下載密鑰時(shí),KMS系統(tǒng)使用對(duì)稱算法加密需要傳輸?shù)拿荑€,保證只有對(duì)應(yīng)POS終端才能解密加密后的密鑰,保證數(shù)據(jù)傳輸?shù)母呷浴T陔p向認(rèn)證的時(shí)候,POS終端的應(yīng)用程序并不能夠接觸到需要遠(yuǎn)程下裝到POS終端中的明文密鑰,只能接觸到該密鑰的密文形式,從而確保了安全轉(zhuǎn)載。此過程中使用到傳輸加密密鑰和認(rèn)證密鑰,由POS終端產(chǎn)生,通過非對(duì)稱算法和對(duì)稱算法方式密文傳輸?shù)終MS系統(tǒng)中,解密過程均在硬件加密機(jī)中進(jìn)行,保證密鑰安全性。
文檔編號(hào)H04L29/08GK103237005SQ20131008465
公開日2013年8月7日 申請(qǐng)日期2013年3月15日 優(yōu)先權(quán)日2013年3月15日
發(fā)明者蘇文龍, 孟陸強(qiáng), 姚承勇, 陳瑞兵 申請(qǐng)人:福建聯(lián)迪商用設(shè)備有限公司