潘紅芹,馬建,鄧敏麗,紀方
鐵路各業(yè)務(wù)系統(tǒng)中已廣泛使用基于數(shù)字證書的身份認證技術(shù)架構(gòu)來實現(xiàn)用戶的身份認證。傳統(tǒng)方式中,利用專用的USBKey、TF卡等硬件設(shè)備來存儲并保護私鑰,需要簽名時,通過中間件配合調(diào)用硬件設(shè)備完成數(shù)字簽名運算。用戶的密鑰始終掌握在自己手中,是傳統(tǒng)硬件密碼介質(zhì)應(yīng)用的安全基礎(chǔ)。在移動互聯(lián)網(wǎng)時代,越來越多的簽名業(yè)務(wù)逐步遷移到移動端,用戶僅需通過聯(lián)網(wǎng)的移動智能設(shè)備(手機、IPad)就可以完成日常辦公與業(yè)務(wù)操作。但傳統(tǒng)硬件密碼介質(zhì)卻難以在移動端發(fā)揮作用:①攜帶不便,用戶需要在手機之外攜帶額外的硬件介質(zhì);②硬件接口無法對接,手機端無法提供對接傳統(tǒng)密碼的USB接口;③中間件開發(fā)困難,針對硬件調(diào)用的中間件開發(fā)難度大。
因此,需研究適用于鐵路移動業(yè)務(wù)架構(gòu)的新型去介質(zhì)身份認證技術(shù)方案,保證可直接運行在移動設(shè)備上實現(xiàn)安全合規(guī)的數(shù)字簽名。為此,本文設(shè)計了基于移動數(shù)字證書的鐵路身份認證系統(tǒng)(簡稱“數(shù)字證書用戶身份認證系統(tǒng)”),實現(xiàn)移動端用戶基于移動數(shù)字證書的鐵路業(yè)務(wù)安全接入。
移動數(shù)字證書[1]作為數(shù)字證書面向移動業(yè)務(wù)應(yīng)用的具象化展現(xiàn)類型,是一種基于公鑰基礎(chǔ)設(shè)施[2](Public Key Infrastructure,PKI)的新型身份認證手段,依托數(shù)字證書載體,為移動端用戶提供安全身份認證功能,通過密鑰分割和數(shù)字證書技術(shù),采用協(xié)同簽名[3]應(yīng)用模式提供服務(wù),完成在移動端無硬件存儲介質(zhì)情況下的數(shù)字簽名,并滿足國家及行業(yè)關(guān)于電子簽名服務(wù)技術(shù)要求。通過研究協(xié)同簽名技術(shù)架構(gòu)和協(xié)同簽名應(yīng)用模式,充分論證方案的技術(shù)路線和可行性。
協(xié)同簽名技術(shù)是一種用于驗證數(shù)據(jù)來源和完整性的身份驗證技術(shù),在移動互聯(lián)網(wǎng)安全接入和移動端掃碼登錄等應(yīng)用場景廣泛使用[4]。用于電子簽名的密鑰通常分為服務(wù)端密鑰分量與客戶端密鑰分量2個部分,客戶端密鑰分量由用戶移動端中的協(xié)同密碼組件生成并本地加密存儲,服務(wù)端密鑰分量由簽名服務(wù)端生成并加密存儲于密鑰庫中。
基于云計算的協(xié)同簽名服務(wù)典型技術(shù)架構(gòu)由云簽名服務(wù)、簽名方和依賴方組成,見圖1。云簽名服務(wù)提供用戶管理服務(wù)、密鑰管理服務(wù)和協(xié)同簽名服務(wù),并提供與服務(wù)相匹配的安全管理和策略管理;簽名方和依賴方作為鐵路業(yè)務(wù)系統(tǒng)的用戶,可通過云簽名服務(wù)的交互協(xié)議或應(yīng)用編程接口,使用云簽名服務(wù)完成電子簽名。CA(Certification Authority)認證中心作為第三方支撐服務(wù),向簽名者提供電子認證服務(wù),并對數(shù)字證書進行全生命周期管理。
圖1 基于云計算的協(xié)同簽名服務(wù)典型技術(shù)架構(gòu)
簽名方使用帶有密碼模塊的終端、應(yīng)用程序或應(yīng)用系統(tǒng)對制作電子簽名的過程進行控制和確認。簽名方將電子簽名的一部分功能委托給云簽名服務(wù)來完成,簽名方使用協(xié)同密碼組件進行簽名計算,云簽名服務(wù)使用密碼設(shè)備完成服務(wù)端簽名計算,最終由簽名方合成完整的簽名結(jié)果。依賴方判斷簽名方提供的電子簽名及相關(guān)數(shù)據(jù)有效后進行后續(xù)業(yè)務(wù)操作。協(xié)同簽名技術(shù)中協(xié)同密鑰管理機制保證了電子簽名完整的密鑰不在簽名方或云簽名服務(wù)出現(xiàn),密鑰的服務(wù)端分量、客戶端分量不在網(wǎng)絡(luò)上傳輸,也不能由網(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)計算得出,杜絕了用戶簽名私鑰暴露的風(fēng)險,無需額外的硬件介質(zhì)進行密鑰的存儲,保證簽名密鑰安全性。
移動端依托數(shù)字證書為載體,采用協(xié)同簽名技術(shù),保證移動端掃碼登錄的身份認證安全。協(xié)同簽名典型應(yīng)用模式見圖2,流程如下:
圖2 協(xié)同簽名典型應(yīng)用模式
Step 1業(yè)務(wù)系統(tǒng)向簽名服務(wù)端發(fā)起簽名請求。
Step 2簽名服務(wù)端向終端設(shè)備推送簽名請求,此時終端設(shè)備可通過與簽名相關(guān)的業(yè)務(wù)活動情況對簽名請求進行確認。
Step 3終端設(shè)備向簽名服務(wù)端推送簽名服務(wù)。
Step 4簽名服務(wù)端查詢該請求者的密鑰,檢索服務(wù)端密鑰分量和證書。
Step 5簽名服務(wù)端調(diào)用密碼設(shè)備/密碼模塊進行服務(wù)端協(xié)同簽名。
Step 6簽名服務(wù)端向終端設(shè)備返回服務(wù)端部分簽名結(jié)果。
Step 7終端設(shè)備通過簽名服務(wù)客戶端中間件調(diào)用協(xié)同簽名模塊,使用客戶端密鑰分量進行協(xié)同簽名,合成完整簽名。
Step 8終端設(shè)備向簽名服務(wù)端提交完整簽名結(jié)果。
Step 9簽名服務(wù)端驗證簽名結(jié)果。
Step 10簽名服務(wù)端向業(yè)務(wù)系統(tǒng)返回簽名驗證結(jié)果。
Step 11驗證成功后,業(yè)務(wù)系統(tǒng)允許終端設(shè)備進行操作訪問。
從協(xié)同簽名應(yīng)用合規(guī)性、便捷性、高效性、可追溯性4個方面開展方案優(yōu)勢分析。
1)合規(guī)性:移動數(shù)字證書應(yīng)用符合《基于云計算的電子簽名服務(wù)技術(shù)要求》(GM/T 0109—2021)[5]、《SM2橢圓曲線公鑰密碼算法》(GB/T 32918—2016)[6]、《SM3密碼雜湊算法》(GB/T 32905—2016)[7]、《SM2密碼算法使用規(guī)范》(GB/T 35276—2017)[8]、《SM4分組密碼算法》(GB/T 32907—2016)[9]等國家密碼應(yīng)用相關(guān)標準要求。本方案中移動客戶端應(yīng)用的協(xié)同密碼組件符合《密碼模塊安全技術(shù)要求》(GM/T 0028—2014)[10]安全等級第二級認證。
2)便攜性:移動數(shù)字證書存儲在移動設(shè)備中,用戶可以隨時隨地進行身份認證,無需攜帶其他硬件存儲介質(zhì)。
3)高效性:移動數(shù)字證書充分結(jié)合鐵路業(yè)務(wù)系統(tǒng)移動應(yīng)用需求,將拔插USBKey、PIN碼校驗等傳統(tǒng)操作模式轉(zhuǎn)變?yōu)樯锾卣髯R別或短信認證等方式[11],降低密碼應(yīng)用復(fù)雜度,提升應(yīng)用效率。
4)可追溯性:移動數(shù)字證書具有可追溯性,可以對用戶的簽名行為進行跟蹤和記錄,方便有關(guān)部門進行監(jiān)管和調(diào)查。
針對鐵路業(yè)務(wù)在移動互聯(lián)網(wǎng)環(huán)境下的身份認證需求,選取移動APP掃碼登錄業(yè)務(wù)作為本方案重點研究場景,通過建設(shè)數(shù)字證書用戶身份認證系統(tǒng)實現(xiàn)移動端用戶的身份認證。系統(tǒng)分別部署于內(nèi)部服務(wù)網(wǎng)、外部服務(wù)網(wǎng)和互聯(lián)網(wǎng)移動終端,通過調(diào)用移動互聯(lián)網(wǎng)安全接入平臺、安全平臺等接口,完成內(nèi)外網(wǎng)數(shù)據(jù)交互,實現(xiàn)移動終端數(shù)字證書申請、證書簽發(fā)、證書更新、證書注銷、證書有效性驗證、協(xié)同簽名、掃碼認證等功能,為業(yè)務(wù)應(yīng)用系統(tǒng)提供統(tǒng)一的身份認證服務(wù)。數(shù)字證書用戶身份認證系統(tǒng)技術(shù)架構(gòu)見圖3中綠色部分。
圖3 數(shù)字證書用戶身份認證系統(tǒng)技術(shù)架構(gòu)
1)內(nèi)網(wǎng)數(shù)字證書用戶身份認證系統(tǒng)。調(diào)用服務(wù)器密碼機接口,與鐵路業(yè)務(wù)系統(tǒng)交互,實現(xiàn)數(shù)字證書身份認證和移動端數(shù)字證書的全生命周期管理。
2)外網(wǎng)數(shù)字證書用戶身份認證系統(tǒng)。密碼協(xié)作系統(tǒng)為移動終端提供服務(wù)端協(xié)同簽名運算和密鑰安全存儲;外網(wǎng)收發(fā)服務(wù)為移動終端和內(nèi)網(wǎng)數(shù)字證書用戶身份認證系統(tǒng)提供數(shù)據(jù)收發(fā)服務(wù)。
3)移動APP。移動APP通過接口調(diào)用方式實現(xiàn)移動端密鑰分量的生成及本地加密存儲,生成的移動端密鑰分量可與服務(wù)端協(xié)商合成完整密鑰,并向服務(wù)端數(shù)字證書用戶身份認證系統(tǒng)申請移動數(shù)字證書。用戶通過移動終端上的生物認證方式調(diào)用協(xié)同密碼組件實現(xiàn)移動端電子簽名和身份認證[12]。其中,協(xié)同密碼組件通常以軟件開發(fā)工具包形式對外提供密鑰生成、證書申請、協(xié)同簽名等服務(wù),可與移動端鐵路各類APP應(yīng)用進行集成,支持移動端Android、IOS、鴻蒙[13]等主流操作系統(tǒng)。
從用戶移動數(shù)字證書申請,到基于移動數(shù)字證書完成協(xié)同簽名及系統(tǒng)驗證,最終實現(xiàn)用戶掃碼登錄業(yè)務(wù)系統(tǒng),整個業(yè)務(wù)應(yīng)用流程形成有效閉環(huán),實現(xiàn)了基于移動數(shù)字證書的身份認證[14],見圖4。
圖4 掃碼登錄業(yè)務(wù)應(yīng)用流程
2.2.1 移動數(shù)字證書申請流程
Step 1移動APP通過調(diào)用協(xié)同密碼組件注冊生成一對與用戶永久綁定的固定公私鑰對(PC,dC),將移動端自身固定公鑰PC發(fā)送給密碼協(xié)作系統(tǒng)。
Step 2密碼協(xié)作系統(tǒng)根據(jù)公鑰PC生成與用戶綁定的固定公私鑰對(PB,dB),同時計算生成簽名公鑰P并發(fā)布。
Step 3移動APP調(diào)用協(xié)同密碼組件利用簽名公鑰P計算生成P10文件(證書簽發(fā)請求),發(fā)送給服務(wù)端數(shù)字證書用戶身份認證系統(tǒng)。
Step 4服務(wù)端數(shù)字證書用戶身份認證系統(tǒng)為移動APP簽發(fā)移動數(shù)字證書,移動APP獲取移動數(shù)字證書并本地存儲。
2.2.2 掃碼登錄協(xié)同簽名流程
Step 1用戶通過計算機訪問鐵路業(yè)務(wù)系統(tǒng)Web登錄網(wǎng)站,點擊掃碼登錄。
Step 2鐵路業(yè)務(wù)系統(tǒng)向服務(wù)端數(shù)字證書用戶身份認證系統(tǒng)請求二維碼,系統(tǒng)生成二維碼并推送至鐵路業(yè)務(wù)系統(tǒng)。
Step 3用戶使用移動終端掃描二維碼,鐵路業(yè)務(wù)系統(tǒng)將二維碼中待簽名消息發(fā)送給移動APP。
Step 4移動APP收到鐵路業(yè)務(wù)系統(tǒng)的待簽名消息后,生成臨時公私鑰對(PTmp,dTmp),并將公鑰PTmp和待簽名消息發(fā)送給密碼協(xié)作系統(tǒng)。
Step 5密碼協(xié)作系統(tǒng)收到后生成臨時公私鑰對(PSTmp,dSTmp),并計算生成簽名消息摘要。
Step 6密碼協(xié)作系統(tǒng)根據(jù)臨時公鑰PTmp、簽名消息摘要和固定私鑰dB完成協(xié)同簽名操作,并將生成的部分簽名結(jié)果發(fā)送給移動APP。
Step 7移動APP根據(jù)部分簽名結(jié)果,利用自身的固定私鑰dC和臨時私鑰dTmp進行簽名授權(quán),得到符合標準協(xié)議的簽名報文,最終合成協(xié)同簽名后,將簽名報文、簽名消息和數(shù)字證書發(fā)給服務(wù)端數(shù)字證書用戶身份認證系統(tǒng)。
2.2.3 掃碼登錄驗證流程
Step 1服務(wù)端數(shù)字證書用戶身份認證系統(tǒng)對完整簽名報文進行驗簽,并對數(shù)字證書進行有效性驗證。
Step 2若簽名驗證和證書有效性驗證成功,則將驗證成功的報文發(fā)送給鐵路業(yè)務(wù)系統(tǒng)。
Step 3鐵路業(yè)務(wù)系統(tǒng)收到驗證成功結(jié)果,掃碼登錄成功,業(yè)務(wù)系統(tǒng)允許用戶登錄,流程結(jié)束。
目前,該移動數(shù)字認證技術(shù)方案已廣泛應(yīng)用于95306中國鐵路貨運電子商務(wù)平臺。2023年度,完成移動端登錄4 958 791次,支持2 623 699筆訂單完成數(shù)字簽名。
本文通過對基于移動數(shù)字證書的鐵路身份認證方案進行設(shè)計與研究,切實有效地將密碼技術(shù)與鐵路業(yè)務(wù)系統(tǒng)相融合[15],可為移動終端提供移動證書和協(xié)同簽名服務(wù),在滿足密碼安全要求的同時兼顧業(yè)務(wù)應(yīng)用的便捷性和實用性,充分說明該方案的技術(shù)可行性及可擴展性,具備良好的潛在推廣價值,在實現(xiàn)鐵路數(shù)字化建設(shè)和提高生產(chǎn)力方面具有重要意義[16]。