陳淳, 沈筍, 莊莉, 陳以明, 范照健
(1.國網(wǎng)江蘇省電力有限公司 鹽城供電分公司, 江蘇 鹽城 224000;2.福建億榕信息技術(shù)有限公司, 福建 福州 350003)
作為與國計(jì)民生密切相關(guān)的基礎(chǔ)性行業(yè),電力行業(yè)在信息化時(shí)代面臨著新的機(jī)遇與挑戰(zhàn),隨著電力行業(yè)的信息化建設(shè)水平的不斷提高,對建設(shè)過程中的信息安全問題提出了更高的要求。電力公司是電力基礎(chǔ)設(shè)施的主要構(gòu)成,信息系統(tǒng)成為現(xiàn)代電力公司業(yè)務(wù)運(yùn)轉(zhuǎn)的重要應(yīng)用支撐,而隨著業(yè)務(wù)運(yùn)作過程的持續(xù)進(jìn)行會產(chǎn)生大量數(shù)據(jù),這就為電力公司信息化系統(tǒng)中的信息安全工作帶來較大的挑戰(zhàn)。
電力企業(yè)信息化涉及計(jì)算機(jī)網(wǎng)絡(luò)信息、自動化等技術(shù),目前我國電力行業(yè)信息化建設(shè)已經(jīng)深入到電力生產(chǎn)、建設(shè)、經(jīng)營、管理、科研等主要領(lǐng)域中。隨著接入廣域網(wǎng)后的電力企業(yè)各業(yè)務(wù)應(yīng)用系統(tǒng)間互通互聯(lián)的不斷深入,基于網(wǎng)絡(luò)的信息應(yīng)用系統(tǒng)所面臨的信息安全威脅日益突出,在電力企業(yè)信息化建設(shè)過程中,身份的確認(rèn)、信息網(wǎng)絡(luò)傳遞過程的安全問題、如何避免信息不被泄漏和篡改以確保信息完整傳輸?shù)瘸蔀樨酱鉀Q的問題。為構(gòu)建電力企業(yè)的網(wǎng)絡(luò)信任體系,本文對基于PKI建設(shè)電力企業(yè)的數(shù)字認(rèn)證系統(tǒng)的實(shí)現(xiàn)路徑進(jìn)行了分析,向電力企業(yè)的信息化系統(tǒng)提供更高質(zhì)量的CA基礎(chǔ)設(shè)施安全保障服務(wù)以及PKI支撐體系的安全功能,包括加/解密、加強(qiáng)身份認(rèn)證、簽名及驗(yàn)簽等,從而使篡改信息、否定責(zé)任等問題得以有效避免。同時(shí)隨著電力信息化系統(tǒng)建設(shè)工作的不斷深入,促使網(wǎng)上國網(wǎng)、移動辦公等基于移動終端的信息化平臺的應(yīng)用范圍不斷擴(kuò)大,移動終端為用戶帶來較大的便利,但其所面臨的安全威脅也日益突出,包括身份冒領(lǐng)、信息篡改等,傳統(tǒng)的UKey認(rèn)證技術(shù)已經(jīng)難以滿足移動終端的使用需求,應(yīng)用于移動終端上的藍(lán)牙/音頻Key等設(shè)備不便攜帶且成本較高,面向移動端軟證書的認(rèn)證方式的密鑰則極易被破解,無介質(zhì)數(shù)字認(rèn)證技術(shù)因具有安全便捷等優(yōu)勢可有效彌補(bǔ)上述方法的不足,本文基于現(xiàn)有研究成果,結(jié)合運(yùn)用SM2算法密鑰分割方法設(shè)計(jì)了一種無介質(zhì)數(shù)字認(rèn)證方法,將私鑰分割成2份,分別存儲在客戶端移動終端和加密機(jī)內(nèi),通過加密機(jī)存儲可有效防止私鑰分量被攻擊者獲取,進(jìn)而使攻擊者無法獲得完整的私鑰,有效提升了私鑰的安全性[1]。
(1) 信息加密技術(shù),在信息安全領(lǐng)域密碼技術(shù)較為重要,較為實(shí)用的密碼技術(shù)可分為對稱密碼技術(shù)和非對稱密鑰技術(shù)(如DES算法和RAS算法)。
(2) PKI(公鑰基礎(chǔ)設(shè)施)基礎(chǔ)技術(shù),具體包括數(shù)字證書認(rèn)證、信息加密、數(shù)字簽名及信封等,基于公開密鑰理論和技術(shù)的PKI技術(shù)屬于一種綜合安全臺,對于使用加密和數(shù)字簽名等密碼服務(wù)的網(wǎng)絡(luò)應(yīng)用,運(yùn)用PKI技術(shù)即可透明地提供必需的密鑰和證書管理,確保信息在網(wǎng)上傳遞過程中的真實(shí)、完整、安全、不可抵賴[1]。
(3) 數(shù)字簽名技術(shù),屬于不對稱加密算法的典型應(yīng)用,數(shù)字簽名的工作原理為:針對數(shù)據(jù)校驗(yàn)或相關(guān)數(shù)據(jù)內(nèi)容的變量,先由數(shù)據(jù)源發(fā)送方通過使用私鑰完成加密處理以及對數(shù)據(jù)的合法簽名,然后由數(shù)據(jù)接收方對這些數(shù)字簽名使用對方的公鑰完成解讀過程,檢驗(yàn)數(shù)據(jù)完整性時(shí)會使用到這些解讀結(jié)果,在此基礎(chǔ)上完成對簽名合法性的確認(rèn)。
(4) 數(shù)字證書認(rèn)證技術(shù),該權(quán)威性電子文檔由證書授權(quán)(CA,即證書授權(quán),是PKI的核心)中心分發(fā)與簽名,可提供網(wǎng)絡(luò)上的身份驗(yàn)證功能,通過數(shù)字證書證明和識別網(wǎng)絡(luò)交往中自身身份以及對方身份。
(5) 數(shù)字信封技術(shù),通過加密技術(shù)的使用實(shí)現(xiàn)對通信內(nèi)容閱讀權(quán)限的限制,僅特定收信人可以閱讀,數(shù)字信封中發(fā)送信息的一方將信息內(nèi)容通過對稱密鑰的使用完成加密處理,并用接收方的公開密鑰加密處理該密鑰,再向接收方發(fā)送加密處理后的信息和秘鑰,由其將數(shù)字信封打開獲取對稱密鑰后解開加密信息(使用私有密鑰和對稱密鑰完成)。
2.2.1 系統(tǒng)總體架構(gòu)
本文構(gòu)建的數(shù)字認(rèn)證系統(tǒng)總體框架,如圖1所示。
圖1 數(shù)字認(rèn)證系統(tǒng)總體框架
(1)CA基礎(chǔ)設(shè)施,主要負(fù)責(zé)提供數(shù)字證書相關(guān)的基礎(chǔ)服務(wù)(包括生產(chǎn)、運(yùn)營、管理等),數(shù)字認(rèn)證系統(tǒng)基于CA基礎(chǔ)設(shè)施將服務(wù)提供給其內(nèi)部用戶。(2)運(yùn)行服務(wù)體系,主要負(fù)責(zé)運(yùn)維CA基礎(chǔ)設(shè)施、建立企業(yè)數(shù)字證書的服務(wù)平臺及服務(wù),服務(wù)平臺負(fù)責(zé)將數(shù)字證書全生命周期服務(wù)便捷高效地提供給用戶,服務(wù)方案用于建立支撐系統(tǒng)運(yùn)行的業(yè)務(wù)(包括服務(wù)交付和服務(wù)支持)。(3)PKI應(yīng)用支撐體系,包括PKI應(yīng)用中間件系統(tǒng)(主要負(fù)責(zé)提供強(qiáng)身份認(rèn)證、簽名、驗(yàn)證等服務(wù))和數(shù)字身份管理系統(tǒng)(主要負(fù)責(zé)對數(shù)字身份進(jìn)行包括授權(quán)管理在內(nèi)的全生命周期管理)。(4)組織管理體系與規(guī)范,數(shù)字認(rèn)證系統(tǒng)的組織管理體系需以電力企業(yè)的組織結(jié)構(gòu)為依據(jù)制定,包括組織架構(gòu)、人員與職責(zé)等的確定;根據(jù)電力企業(yè)的實(shí)際運(yùn)行服務(wù)需要制定的管理規(guī)范以可滿足其具體業(yè)務(wù)開展需求。(5)安全管理體系,面向物理環(huán)境、數(shù)據(jù)與網(wǎng)絡(luò)通信安全、硬件設(shè)備、權(quán)限管理、策略安全等各個(gè)方面,建立高效實(shí)用、安全可靠的數(shù)字認(rèn)證服務(wù)[2]。
2.2.2 CA基礎(chǔ)設(shè)施
(1) 認(rèn)證體系規(guī)劃
根據(jù)信任等級的信任域劃分CA認(rèn)證體系,區(qū)分信任的級別時(shí)需考慮多種影響因素,包括互聯(lián)互通需要、實(shí)際應(yīng)用范圍、責(zé)任風(fēng)險(xiǎn)、鑒證手段等。為有效區(qū)分不同安全信任等級的用戶群,進(jìn)一步劃分體系中的根CA和二級CA,據(jù)此實(shí)現(xiàn)在應(yīng)用端對具有不同信任等級用戶的區(qū)別對待。在企業(yè)內(nèi)部服務(wù)根CA下,數(shù)字認(rèn)證體系需面向部門、員工及設(shè)備分別簽發(fā)證書,考慮到用戶群、應(yīng)用范圍以及受信任程度均不相同,分為兩個(gè)二級CA,用一個(gè)內(nèi)部RootCA規(guī)劃內(nèi)部信任域,包括內(nèi)部CA(負(fù)責(zé)為部門和員工簽發(fā)證書)和內(nèi)部設(shè)備CA兩個(gè)二級CA;負(fù)責(zé)簽發(fā)程序代碼簽名、郵件安全、VPN設(shè)備、Web及時(shí)間戳服務(wù)器等證書[2]。
(2) 數(shù)字證書
系統(tǒng)發(fā)放CSS/RA、系統(tǒng)管理員、程序代碼簽名、加密與簽名、Web及時(shí)間戳服務(wù)器、郵件安全、交叉認(rèn)證、VPN設(shè)備等證書及自定義類證書,采用ITUX.509V3格式,支持DER、PKCS#7等存儲格式,采用UsbKey證書載體,支持指紋驗(yàn)證,結(jié)合運(yùn)用CPU計(jì)算單元和UsbKey自帶算法(經(jīng)PIN碼認(rèn)證)使UsbKey中的私鑰拷貝問題得以有效避免[3]。
(3) CA系統(tǒng)總體結(jié)構(gòu)
CA系統(tǒng)主要包括:根CA,主要用于實(shí)現(xiàn)CA的簽發(fā)運(yùn)行以及整體認(rèn)證策略的制定,是企業(yè)CA系統(tǒng)的信任源頭;CA簽發(fā)系統(tǒng),主要負(fù)責(zé)提供包括簽發(fā)數(shù)字證書在內(nèi)的CA認(rèn)證系統(tǒng)核心服務(wù);RA注冊管理系統(tǒng),提供證書的錄入、申請、審核及制作等業(yè)務(wù)服務(wù);KM系統(tǒng),用于實(shí)現(xiàn)對用戶加密密鑰的生命周期管理,包括密鑰的生成、分發(fā)、歸檔、備份、更新、撤銷、恢復(fù)等;證書狀態(tài)查詢系統(tǒng),用于完成OCSP服務(wù)請求的接受及其向CA管理系統(tǒng)的轉(zhuǎn)發(fā),CA管理系統(tǒng)據(jù)此查找證書即時(shí)狀態(tài),并將返回消息使用CA加密機(jī)完成數(shù)字簽名處理;目錄服務(wù)系統(tǒng)(LDAP),負(fù)責(zé)查詢證書和證書撤銷列表[3]。
2.2.3 PKI應(yīng)用支撐體系
該部分主要包括:數(shù)字身份管理系統(tǒng),負(fù)責(zé)完成數(shù)字身份的全生命周期管理;PKI應(yīng)用中間件系統(tǒng),負(fù)責(zé)將強(qiáng)身份認(rèn)證、簽名、驗(yàn)證等服務(wù)提供給各業(yè)務(wù)應(yīng)用系統(tǒng);PKI應(yīng)用集成規(guī)范,負(fù)責(zé)規(guī)范CA數(shù)字證書應(yīng)用框架、應(yīng)用流程、數(shù)字簽名使用方式、接口應(yīng)用及數(shù)據(jù)格式、認(rèn)證服務(wù)等,如圖2所示。
圖2 PKI應(yīng)用支撐體系
將PKI系統(tǒng)集成到電力企業(yè)的關(guān)鍵業(yè)務(wù)應(yīng)用系統(tǒng)中,并整合企業(yè)現(xiàn)有的統(tǒng)一認(rèn)證授權(quán)系統(tǒng),建立起完整的認(rèn)證體系,提供相關(guān)安全保護(hù)功能[4]。
2.2.4 運(yùn)行服務(wù)體系
服務(wù)體系主要包括:數(shù)字證書服務(wù)平臺,主要負(fù)責(zé)將數(shù)字證書服務(wù)提供給企業(yè)內(nèi)部員工和用戶,向用戶提供統(tǒng)一的證書全生命周期服務(wù),該平臺還提供面向企業(yè)內(nèi)部數(shù)字證書的備案管理和查詢統(tǒng)計(jì)功能,并可結(jié)合運(yùn)用粗粒度和細(xì)粒度的管理方式;數(shù)字證書服務(wù),以提供服務(wù)交付和服務(wù)支持為主,分別向證書用戶和系統(tǒng)管理員提供證書生命周期服務(wù)和證書查詢統(tǒng)計(jì)服務(wù);CA基礎(chǔ)設(shè)施運(yùn)維,包括針對CA系統(tǒng)的開發(fā)維護(hù)及運(yùn)行與訪問管理、CA審計(jì)等,以確保其正常運(yùn)轉(zhuǎn);電子認(rèn)證體系培訓(xùn),包括對認(rèn)證系統(tǒng)的使用、運(yùn)行管理及維護(hù)等的培訓(xùn)[5]。
數(shù)字證書持有人擁有一對公鑰和私鑰,需妥善保密保管,泄露或遺失密鑰會影響密碼體制的安全或限制了合法者的解密操作,對于某一(t,n)密鑰共享方案,在超過t個(gè)參與者的情況下(任意組合)可完成密鑰的恢復(fù),小于等于t個(gè)參與者則無法獲取密鑰相關(guān)的任何消息,基于密鑰共享方案的門限密碼算法向多個(gè)參與者分享了私鑰,包括需要和不需要可信中心2種,為使算法的安全性和健壯性得到有效提高,需超過門限值的成員共同完成某種密碼運(yùn)算,存在可信中心的情況下能夠使各參與者間的通信量和計(jì)算量得到明顯降低,進(jìn)而更加安全可信地完成私鑰分發(fā)過程。密鑰分割方案在應(yīng)用密鑰共享和門限密碼算法的基礎(chǔ)上,根據(jù)實(shí)際應(yīng)用場景的需要進(jìn)行優(yōu)化,將用戶私鑰分割成多個(gè)分散存儲的子私鑰,需全部成員共同參與完成私鑰運(yùn)算的執(zhí)行[5]。
數(shù)字簽名是簽名者做密碼運(yùn)算得到的結(jié)果(將簽名數(shù)據(jù)的雜湊值采用私鑰處理),只能通過簽名者的公鑰驗(yàn)證該結(jié)果,主要負(fù)責(zé)完成對簽名者身份、待簽名數(shù)據(jù)及簽名行為的確認(rèn)。協(xié)同簽名的方案通過在數(shù)字簽名中應(yīng)用密鑰分割機(jī)制獲取,將用戶的私鑰分割成2份私鑰分量,分別存儲在用戶自身和其他成員中,即用戶僅存儲完整私鑰的一部分,在該私鑰分量泄露的情況下也僅能得到部分私鑰,極大地增加了破壞者獲取完整私鑰的難度,進(jìn)而使私鑰的安全性得到有效提升[6]。
定義相關(guān)符號與運(yùn)算:mod(n)表示模n運(yùn)算,在橢圓曲線上P、Q表示其點(diǎn)群中的點(diǎn),P、Q的點(diǎn)加由P+Q表示,k個(gè)點(diǎn)P的點(diǎn)加由[k]P表示,g-1表示滿足g·c=1的域元素c(·表示乘號),F(xiàn)q表示有限域,q(大素?cái)?shù))、n、E和G表示SM2算法的公開參數(shù),E表示Fq上的橢圓曲線,G=(xG,yG)對應(yīng)E上n階的基點(diǎn)。SM2簽名算法包括3部分。
(1) 密鑰生成,先完成由dA表示(dA∈[1,n-2])的密鑰的隨機(jī)選取,并將dA作為私鑰保存,然后計(jì)算得出公開公鑰p,P=[dA]G。
基于移動終端APP的無介質(zhì)數(shù)字認(rèn)證技術(shù)通過面向客戶端和服務(wù)端的私鑰分割,使用戶在執(zhí)行相關(guān)數(shù)字簽名需求
時(shí),通過計(jì)算客戶端的私鑰分量,在運(yùn)用用戶名+口令等方式驗(yàn)證身份后,計(jì)算服務(wù)端的簽名分量,再通過簽名分量的合成計(jì)算得到最終的簽名數(shù)據(jù),不依賴于硬件介質(zhì),成本低且兼容性強(qiáng)。
本文面向電力企業(yè)提出了一種PKI數(shù)字認(rèn)證技術(shù),使電力信息系統(tǒng)中的不安全問題得以有效解決,以保證信息系統(tǒng)安全穩(wěn)定地運(yùn)行,為電力企業(yè)可信網(wǎng)絡(luò)環(huán)境的構(gòu)建奠定基礎(chǔ),并且完成了一種無介質(zhì)數(shù)字認(rèn)證安全方案的設(shè)計(jì),具體采用SM2算法密鑰分割實(shí)現(xiàn),通過使用私鑰分量實(shí)現(xiàn)協(xié)同簽名過程,介紹了移動終端上無介質(zhì)認(rèn)證技術(shù)以軟件形態(tài)的集成方法,通過在移動端APP集成無介質(zhì)數(shù)字認(rèn)證SDK,無需依賴硬件介質(zhì)極大地簡化了該認(rèn)證技術(shù)的開發(fā)與應(yīng)用過程,同時(shí)有效提升了數(shù)字認(rèn)證中密鑰的安全性,適用于信息系統(tǒng)中的身份認(rèn)證、電子簽名等應(yīng)用,為完善電力信息化系統(tǒng)提供支撐。