◆李恒武 王辰陽(yáng) 王志剛
?
一種基于SM2的遠(yuǎn)程密鑰管理系統(tǒng)分析與設(shè)計(jì)
◆李恒武 王辰陽(yáng) 王志剛
(解放軍信息工程大學(xué)原信息管理中心 河南 450001)
本文提供了一種基于SM2的遠(yuǎn)程協(xié)作密鑰安全管理系統(tǒng)解決方案,系統(tǒng)以SM2算法為核心,在服務(wù)端采用Https方式為基礎(chǔ),提供簽名公私鑰生成、上傳與協(xié)作簽名、證書(shū)查詢(xún)等涵蓋各種密鑰運(yùn)算服務(wù)的遠(yuǎn)程密鑰安全管理解決方案。該解決方案在用于Android移動(dòng)智能終端密碼安全模塊中達(dá)到了預(yù)期的效果,在實(shí)際應(yīng)用中具有廣闊的前景。
遠(yuǎn)程協(xié)作;密鑰管理;認(rèn)證;簽名
目前,基于Android平臺(tái)的移動(dòng)智能終端已在各行各業(yè)中得到了廣泛應(yīng)用,而智能終端軟硬件、外部系統(tǒng)和相關(guān)通訊服務(wù)能否安全運(yùn)行,關(guān)鍵是在信息安全管控系統(tǒng)模塊,這已經(jīng)成為智能終端是否被用戶(hù)選擇使用首要考慮的問(wèn)題。由于移動(dòng)終端具有易丟失、使用者復(fù)雜等特點(diǎn),為確保密鑰安全,本文以信息安全管控系統(tǒng)中遠(yuǎn)程密鑰安全管理為主要研究對(duì)象,提供了一種基于協(xié)作系統(tǒng)的遠(yuǎn)程密鑰安全管理解決方案,系統(tǒng)是以SM2算法為核心,在服務(wù)端采用Https方式為基礎(chǔ),提供簽名公私鑰生成、上傳與協(xié)作簽名、證書(shū)查詢(xún)等涵蓋各種秘鑰運(yùn)算服務(wù)的遠(yuǎn)程密鑰安全管理解決方案。
遠(yuǎn)程協(xié)作計(jì)算主要是依賴(lài)協(xié)作服務(wù)器,通過(guò)協(xié)作系統(tǒng)連接代理,完成模塊和協(xié)作系統(tǒng)的通信,以協(xié)作產(chǎn)生簽名密鑰對(duì)、執(zhí)行簽名等任務(wù)。系統(tǒng)基于SM2算法移動(dòng)端分離/合作的實(shí)現(xiàn)算法,進(jìn)行部分秘鑰運(yùn)算的過(guò)程。遠(yuǎn)程協(xié)作計(jì)算過(guò)程中,智能移動(dòng)終端和協(xié)作服務(wù)器之間采用Https方式進(jìn)行通信,協(xié)作服務(wù)器主要提供簽名公私鑰生成、上傳簽名公鑰、協(xié)作簽名解密、上傳加解密公私鑰對(duì)、證書(shū)查詢(xún)、其他協(xié)助管理等各種秘鑰運(yùn)算服務(wù)。
協(xié)作服務(wù)器端主要為移動(dòng)端提供用戶(hù)管理、密碼運(yùn)算支持、密鑰管理、日志管理等功能。其中用戶(hù)管理包括用戶(hù)信息維護(hù)與管理、用戶(hù)口令維護(hù)、終端綁定等;密碼運(yùn)算支持主要是與移動(dòng)端合作簽名以及合作解密,驗(yàn)證簽名等功能;密鑰管理主要是密碼運(yùn)算過(guò)程中的各種私鑰的安全存儲(chǔ)。
系統(tǒng)整體架構(gòu)設(shè)計(jì)比較復(fù)雜,包括硬件加密系統(tǒng)、引導(dǎo)加載程序、應(yīng)用認(rèn)證與識(shí)別、分散密鑰存儲(chǔ)與運(yùn)算、中間件安全處理機(jī)制等一系列主要功能模塊。移動(dòng)智能終端密碼安全模塊以APP形式運(yùn)行在Android平臺(tái)上,依托遠(yuǎn)程協(xié)作系統(tǒng),通過(guò)標(biāo)準(zhǔn)的安全服務(wù)中間件接口為各類(lèi)應(yīng)用APP提供統(tǒng)一的密碼服務(wù)。
本方案中的密碼運(yùn)算工作流程主要包含生成密鑰對(duì)、合作簽名、解密私鑰拆分、合作解密等業(yè)務(wù)處理過(guò)程,生成密鑰對(duì)的業(yè)務(wù)流程如圖1所示。
圖1 密鑰對(duì)生成圖
證書(shū)申請(qǐng)過(guò)程中,CA獲取用戶(hù)公鑰之后,向KM提出申請(qǐng),獲取加解密密鑰對(duì)(D', P'), 解密私鑰D'是完整的私鑰,為了結(jié)合SM2改進(jìn)算法需要進(jìn)行密鑰拆分;將私鑰D'用簽名公鑰P加密之后經(jīng)過(guò)證書(shū)申請(qǐng)審核服務(wù),傳給移動(dòng)終端,移動(dòng)端與協(xié)作服務(wù)器協(xié)作解密D',解密之后移動(dòng)終端隨機(jī)生成子私鑰D11,調(diào)用密鑰拆分接口,將D'拆分成D11、D22兩部分子私鑰,D11在手機(jī)終端安全存儲(chǔ),將D22用協(xié)作端加密公鑰Px加密之后傳到協(xié)作端,最終傳回安全數(shù)據(jù)庫(kù),完成證書(shū)申請(qǐng)過(guò)程。相關(guān)流程如圖2所示。
圖2 證書(shū)申請(qǐng)過(guò)程
用戶(hù)首先通過(guò)移動(dòng)端向RA提出證書(shū)注銷(xiāo)請(qǐng)求,RA根據(jù)用戶(hù)請(qǐng)求將用戶(hù)對(duì)應(yīng)的證書(shū)注銷(xiāo),同時(shí)返回注銷(xiāo)成功消息給用戶(hù);用戶(hù)接收到消息向協(xié)作服務(wù)器提出刪除對(duì)應(yīng)信息的請(qǐng)求,協(xié)作服務(wù)器刪除用戶(hù)相關(guān)信息之后,向用戶(hù)返回信息完成刪除消息,最終完成證書(shū)的注銷(xiāo)過(guò)程。
證書(shū)注銷(xiāo)發(fā)生在兩類(lèi)情況下:
(1)證書(shū)在正常情況下注銷(xiāo),證書(shū)還存在于固定移動(dòng)端上,終端ID可以正常獲得;
(2)證書(shū)在異常情況下注銷(xiāo),異常情況包括移動(dòng)端丟失、移動(dòng)端損壞等情況,移動(dòng)端ID已經(jīng)無(wú)法正常獲得,異常情況下注銷(xiāo)流程如圖3所示。
圖3 證書(shū)異常注銷(xiāo)流程
移動(dòng)端通過(guò)登錄協(xié)作服務(wù)器進(jìn)行平臺(tái)注冊(cè)以及進(jìn)行協(xié)作服務(wù)器配置和終端綁定操作;移動(dòng)端通過(guò)APP進(jìn)行證書(shū)申請(qǐng),下載證書(shū)相關(guān)信息到移動(dòng)端;三方業(yè)務(wù)通過(guò)手機(jī)登錄業(yè)務(wù)服務(wù)器,業(yè)務(wù)服務(wù)器驗(yàn)證移動(dòng)身份之后,顯示登錄成功;移動(dòng)端登錄成功之后,提出對(duì)數(shù)據(jù)進(jìn)行簽名的請(qǐng)求,移動(dòng)端和協(xié)作端進(jìn)行合作簽名,發(fā)送給業(yè)務(wù)服務(wù)器進(jìn)行簽名驗(yàn)證操作,驗(yàn)證成功,進(jìn)行相關(guān)的業(yè)務(wù)操作;移動(dòng)端接收到其自身公鑰加密的數(shù)據(jù)之后,提出解密請(qǐng)求,調(diào)用相關(guān)解密接口與協(xié)作服務(wù)器進(jìn)行解密操作。遠(yuǎn)程協(xié)作服務(wù)工作流程如圖4所示。
圖4 遠(yuǎn)程協(xié)作服務(wù)工作過(guò)程
本系統(tǒng)的設(shè)計(jì)綜合了國(guó)密SM2算法,實(shí)現(xiàn)了移動(dòng)終端和協(xié)作服務(wù)器合作簽名以及解密的方式,基于軟算法實(shí)現(xiàn)了智能密碼鑰匙,使得用戶(hù)可以在移動(dòng)終端進(jìn)行簽名等身份認(rèn)證操作;實(shí)現(xiàn)了認(rèn)證載體移動(dòng)化,業(yè)務(wù)通道和認(rèn)證通道相互獨(dú)立,防止截獲攻擊,使用更加安全可靠;并可遠(yuǎn)程銷(xiāo)毀用戶(hù)密鑰信息,用戶(hù)設(shè)備丟失,可停用用戶(hù)認(rèn)證證書(shū),并遠(yuǎn)程銷(xiāo)毀保存在客戶(hù)端的用戶(hù)密鑰數(shù)據(jù),防止用戶(hù)密鑰被非法使用。系統(tǒng)充分發(fā)揮了遠(yuǎn)程協(xié)作系統(tǒng)的長(zhǎng)處、提高了效率,而且保證了只能終端程序運(yùn)行的安全性和可靠性。
[1]國(guó)家密碼管理局.SM2 橢圓曲線(xiàn)公鑰密碼算法.http://www.oscca.gov.cn/UpFile/2010122214822692.pdf,2012.
[2]李星宜, 李陶深, 崔杰等.基于數(shù)字證書(shū)的身份認(rèn)證系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2011.
[3]GM/T0003—2012. SM2橢圓曲線(xiàn)公鑰密碼算法[S].北京:國(guó)家密碼管理局,2012.
[4]GM/T0015—2012. 基于SM2密碼算法的數(shù)字證書(shū)格式規(guī)范[S].北京:國(guó)家密碼管理局,2012.
[5]伍娟.基于國(guó)密SM4和SM2的混合密碼算法研究與實(shí)現(xiàn)[J].軟件導(dǎo)刊,2013.
[6]孫榮燕,蔡昌曙等.國(guó)密SM2數(shù)字簽名算法與ECDSA算法對(duì)比分析研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2013.
[7]王卓.基于網(wǎng)格的分布式密碼管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].解放軍信息工程大學(xué),2008.
[8]陳銳,蔣澤軍,陳福.基于Credential Provider 的身份認(rèn)證模型的研究與實(shí)現(xiàn)[J].航空計(jì)算技術(shù),2010.
網(wǎng)絡(luò)安全技術(shù)與應(yīng)用2018年9期