吳金宇, 朱文, 陶文偉, 蘇揚(yáng), 張富川, 仇偉杰
(中國(guó)南方電網(wǎng)有限責(zé)任公司, 廣東, 廣州 510530)
隨著智能電網(wǎng)新技術(shù)高速發(fā)展,電力監(jiān)控系統(tǒng)已延伸至公網(wǎng),但防火墻與縱向加密裝置缺乏身份認(rèn)證控制,安全強(qiáng)度不足。為防御網(wǎng)絡(luò)安全威脅和操作安全風(fēng)險(xiǎn),解決電力監(jiān)控系統(tǒng)因數(shù)字變革帶來的安全問題[1-6],有較多學(xué)者對(duì)身份認(rèn)證方法進(jìn)行研究。張之森等[5]研究基于HMAC和TEA算法的CAN總線身份認(rèn)證方法,該方法的身份信息在加密后抗攻擊能力不高;杜心雨等[6]研究LTE-A網(wǎng)絡(luò)中基于動(dòng)態(tài)組的有效的身份認(rèn)證方法,但該方法在身份認(rèn)證時(shí)容易接受錯(cuò)誤信息。
為了提高加密后明文的抗攻擊能力,降低錯(cuò)誤認(rèn)證信息的接收率,本文研究基于PKI數(shù)字證書技術(shù)的電力監(jiān)控系統(tǒng)控制指令身份認(rèn)證方法。設(shè)計(jì)電力監(jiān)控系統(tǒng)核心功能;采用RSA算法實(shí)現(xiàn)非對(duì)稱密碼體制的加密解密,生成公私和鑰對(duì);設(shè)計(jì)數(shù)字證書操作周期;利用PKI數(shù)字證書技術(shù)驗(yàn)證實(shí)體身份信息和公私鑰匹配程度,構(gòu)建可檢索的實(shí)體數(shù)字證書,實(shí)現(xiàn)電力監(jiān)控系統(tǒng)的安全防護(hù)和管理。實(shí)驗(yàn)結(jié)果證明本文方法加密后明文的抗攻擊能力較強(qiáng),事務(wù)響應(yīng)速率較快,錯(cuò)誤拒絕率較高。
(1) 對(duì)網(wǎng)絡(luò)傳輸?shù)膱?bào)文進(jìn)行實(shí)時(shí)解析和過濾,支持識(shí)別電力系統(tǒng)常見的工控協(xié)議,包括IEC61850、IEC60870-101/102/104/103、tase2、dl476、MODBUS、OPC等工控協(xié)議的解析和過濾。
(2) 支持識(shí)別常用的TCP/IP協(xié)議,包括HTTP、SFTP、SMTP、FTP、RPC等協(xié)議;通過匹配規(guī)則對(duì)控制報(bào)文進(jìn)行識(shí)別,并且根據(jù)預(yù)設(shè)的策略進(jìn)行響應(yīng),如阻斷異??刂茍?bào)文[7-8]。
(3) 可定制開發(fā)針對(duì)特定協(xié)議的安全檢測(cè),實(shí)現(xiàn)如黑白名單控制、關(guān)鍵字過濾等。
數(shù)據(jù)擺渡包括文件交換、數(shù)據(jù)庫(kù)同步、FTP訪問、數(shù)據(jù)庫(kù)訪問、郵件傳輸?shù)裙δ堋?/p>
基于MAC、IP、傳輸協(xié)議、端口以及操作方式的綜合報(bào)文過濾與訪問控制。
系統(tǒng)支持接收安全控制中心發(fā)送的策略,并支持與現(xiàn)有的態(tài)勢(shì)感知系統(tǒng)聯(lián)動(dòng),包括接收策略、同步告警日志等。
設(shè)備與設(shè)備之間支持雙向身份認(rèn)證,可以實(shí)現(xiàn)主機(jī)的安全接入。裝置內(nèi)部,調(diào)用加密芯片的加密接口,滿足需要的加解密計(jì)算過程。
網(wǎng)絡(luò)模式支持無IP地址透明工作方式,支持網(wǎng)絡(luò)地址轉(zhuǎn)換,對(duì)外屏蔽內(nèi)網(wǎng)信息,保證標(biāo)準(zhǔn)應(yīng)用的透明接入。
通過PKI數(shù)字證書技術(shù),實(shí)現(xiàn)系統(tǒng)控制指令的身份認(rèn)證。
按照國(guó)際通用安全標(biāo)準(zhǔn)進(jìn)行電力監(jiān)控系統(tǒng)的控制指令身份認(rèn)證,嚴(yán)格遵守ITU-TX.509標(biāo)準(zhǔn),并通過保密性較強(qiáng)的RSA算法實(shí)現(xiàn)公鑰/私鑰的加密管理。具體系統(tǒng)的PKI數(shù)字證書認(rèn)證功能[9-10]如圖1所示。
圖1 PKI數(shù)字證書認(rèn)證功能
采用三因子RSA算法生成公私鑰對(duì),同時(shí)向加密設(shè)備或硬盤中保存私鑰,同時(shí)具有私鑰與公鑰是否匹配的驗(yàn)證功能。利用數(shù)字證書管理為身份認(rèn)證提供幫助,并通過身份認(rèn)證驗(yàn)證數(shù)字證書的合法性,實(shí)現(xiàn)電力監(jiān)控系統(tǒng)控制指令。
由于密碼體制中具有對(duì)稱與非對(duì)稱兩種形式,因此本文對(duì)兩種密碼體制進(jìn)行分析,其中對(duì)稱密碼為私有鑰加密,非對(duì)稱密碼為公有密鑰加密。通過研究得知非對(duì)稱密碼體制的安全性更高,同時(shí)可以降低密鑰管理的難度。因此通過三因子RSA算法實(shí)現(xiàn)非對(duì)稱密碼體制的密鑰加密解密,生成公私鑰對(duì)。
2.2.1 對(duì)稱密碼體制
對(duì)稱密碼體制的基本特性是加密與解密的密鑰一致,通過如下方式生成對(duì)稱加密密鑰。
(1) 設(shè)加密密鑰為k,明文消息為m,加密算法為E,當(dāng)明文消息m被算法E與密鑰k加密后,產(chǎn)生的密文由式(1)表示:
c=Ek(m)
(1)
由于加解密鑰一致,雙方在進(jìn)行通信時(shí)必須將兩者的共同密鑰進(jìn)行保存,當(dāng)用戶群體多大時(shí),密鑰的分配與保存容易發(fā)生問題。
2.2.2 非對(duì)稱密碼體制
非對(duì)稱密碼體制能夠有效改進(jìn)對(duì)稱密碼體制中的缺陷。在非對(duì)稱密碼體制中,加密與解密過程相互獨(dú)立,會(huì)同時(shí)生成兩把不同密鑰,其能夠使雙方在不安全的信道中實(shí)現(xiàn)安全通信。
通過式(2)、式(3)表示非對(duì)稱密碼體制的加密與解密過程:
c=EPKB[m]
(2)
m=DSKB[c]
(3)
非對(duì)稱密碼體制在進(jìn)行加密解密時(shí)需要符合以下條件:
(1) 發(fā)送者A利用B的公鑰加密信息m,生成密文c,即c=Epkb[m]在計(jì)算時(shí)相對(duì)簡(jiǎn)便;
(2) 竊聽者無法利用B的公開鑰PKB獲取私鑰SKB;
(3) 可更改加密解密順序,即(m)EPKB[DSKB(m)]=DSKB[EPKB(m)]。
從安全角度可以看出,非對(duì)稱密碼體制的安全性明顯更高,同時(shí)可以降低密鑰管理的難度。通過三因子RSA算法實(shí)現(xiàn)非對(duì)稱密碼體制的密鑰加密解密。
2.2.3 基于三因子RSA算法的加密解密
三因子RSA算法具體通過如下過程實(shí)現(xiàn)該算法:
(1) 挑選3個(gè)保密大素?cái)?shù)a1、a2、a3;
(2) 計(jì)算乘積模數(shù)n=a1×a2×a3,且φ(n)=(a1-1)×(a2-1)×(a3-1),其中φ(n)表示n的歐拉函數(shù)值;
(3) 選取一個(gè)整數(shù)e,使該整數(shù)滿足1 (4) 設(shè)e在模φ(n)下的模逆元素為d,對(duì)d進(jìn)行計(jì)算,使d滿足d×e=1 modφ(n); (5) 將{e,n}作為公開鑰,{a1,a2,a3,d,n}作為秘密鑰,并對(duì)a1、a2、a3與d進(jìn)行保密; (6) 在進(jìn)行加密時(shí),將待加密的明文劃分為多個(gè)組,并將分組m進(jìn)行加密:c=memodn; (7) 通過式(4)對(duì)密文c進(jìn)行解密: m=cdmodn (4) 通過上述步驟完成非對(duì)稱公鑰和密鑰的生成,實(shí)現(xiàn)密文的加密與解密。在后續(xù)身份認(rèn)證過程中還需要利用PKI數(shù)字證書技術(shù)驗(yàn)證私鑰與公鑰是否匹配。 通過3個(gè)階段設(shè)計(jì)數(shù)字證書的生命周期,分別為證書申請(qǐng)、證書使用以及證書注銷。通過數(shù)字證書的研究,可以有效驗(yàn)證非對(duì)稱密鑰的主人,為電力監(jiān)控系統(tǒng)控制指令身份認(rèn)證提供有力依據(jù)。 2.3.1 證書申請(qǐng)階段 當(dāng)電力監(jiān)控系統(tǒng)提供控制中心認(rèn)證服務(wù)之前,需要先進(jìn)入認(rèn)證中心進(jìn)行數(shù)字證書申請(qǐng),可通過不同方式完成證書注冊(cè),例如全部處理都通過CA與實(shí)體之間流動(dòng),將RA視為不存在。當(dāng)實(shí)體身份信息完成驗(yàn)證后,通過管理員確認(rèn)實(shí)體,并對(duì)權(quán)限進(jìn)行合理分配,通過這些身份信息構(gòu)建實(shí)體的數(shù)字證書。 2.3.2 證書使用階段 若已完成私鑰、公鑰證書的發(fā)放,則必須開始進(jìn)行證書的使用,具體使用過程如下。 (1) 證書檢索。在為接收者加密數(shù)據(jù)時(shí),必須要對(duì)每個(gè)接收者的加密證書進(jìn)行檢索。 (2) 證書驗(yàn)證。通過證書驗(yàn)證可以評(píng)價(jià)某個(gè)證書是否合法,這一驗(yàn)證操作在證書準(zhǔn)許加密之前完成,主要根據(jù)以下方面驗(yàn)證證書:① 完整性;② 是否由可靠CA發(fā)布;③ 是否在有效期內(nèi);④ 是否被撤銷。 2.3.3 證書注銷階段 通過證書注銷階段完成數(shù)字證書的生命周期,該階段具體包含以下內(nèi)容。 (1) 停止活動(dòng):擁有該證書的終端無法使用CA中心提供的服務(wù)。 (2) 證書復(fù)原:向具備新有效期的證書賦予同一公鑰。 (3) 證書更新:制造一個(gè)新的密鑰,并頒發(fā)一個(gè)新的證書。 實(shí)現(xiàn)電力監(jiān)控系統(tǒng)控制指令身份認(rèn)證包括身份認(rèn)證和權(quán)限認(rèn)證。具體認(rèn)證步驟如圖2所示。 圖2 認(rèn)證流程圖 如圖2所示,電力監(jiān)控系統(tǒng)控制指令身份認(rèn)證過程主要是驗(yàn)證證書的身份和權(quán)限是否有效,并驗(yàn)證私鑰是否匹配,以實(shí)現(xiàn)身份認(rèn)證。 在數(shù)據(jù)加密前,要利用PKI數(shù)字證書技術(shù)根據(jù)ITU-TX.509標(biāo)準(zhǔn)驗(yàn)證實(shí)體身份信息合法性、完整性、CA發(fā)布人信任度、有效期。當(dāng)實(shí)體身份信息完成驗(yàn)證后,通過管理員確認(rèn)實(shí)體,并對(duì)權(quán)限進(jìn)行合理分配,通過這些身份信息構(gòu)建實(shí)體的數(shù)字證書。 數(shù)字證書驗(yàn)證通過后,采用三因子RSA算法生成公私鑰對(duì),同時(shí)向加密設(shè)備或硬盤中保存私鑰;驗(yàn)證私鑰與公鑰是否匹配;在加密數(shù)據(jù)時(shí),必須要對(duì)每個(gè)接收者的加密證書進(jìn)行檢索,通過這種方式可保護(hù)發(fā)送方的數(shù)據(jù),同時(shí)還能夠?qū)邮辗竭M(jìn)行密鑰管理。 完成上述步驟后輸入私鑰密碼、私鑰文件名、證書文件名以及隨機(jī)字符串,通過數(shù)字認(rèn)證加密,輸出認(rèn)證結(jié)果。 將本文方法應(yīng)用至南方電網(wǎng)數(shù)字電網(wǎng)研究院有限公司電力監(jiān)控系統(tǒng)中,電力監(jiān)控系統(tǒng)中的操作具有一定權(quán)限,需要進(jìn)行身份認(rèn)證。在測(cè)試環(huán)境由內(nèi)置密碼模塊的IPC服務(wù)器向 SIP 服務(wù)器發(fā)送注冊(cè)請(qǐng)求,在測(cè)試中使用4臺(tái)IPC 向 SIP服務(wù)器連續(xù)發(fā)送包括60 000個(gè)用戶待認(rèn)證身份請(qǐng)求,驗(yàn)證本文方法對(duì)該系統(tǒng)用戶的身份認(rèn)證能力。選取文獻(xiàn)[7]方法、文獻(xiàn)[8]方法作為比較方法。分析不同方法對(duì)不同大小明文處理后的密鑰長(zhǎng)度,結(jié)果如圖3所示。 圖3 不同方法加密后密鑰長(zhǎng)度分析 根據(jù)圖3可知,本文方法的密鑰長(zhǎng)度最高僅為256 bit,與其他方法相比,本文方法生成密鑰較小,可以降低密鑰管理的難度,為系統(tǒng)運(yùn)行減少負(fù)擔(dān)。 分析不同方法對(duì)不同大小明文的公私鑰對(duì)匹配時(shí)效,測(cè)試結(jié)果如圖4所示。 圖4 公私鑰對(duì)匹配時(shí)效 由圖4可知,本文方法的公私鑰對(duì)匹配時(shí)效性較高,匹配時(shí)間低于25 ms。 分析應(yīng)用本文方法前后對(duì)攻擊的抵抗能力,分析結(jié)果如表1所示。 表1 抗攻擊性能分析 根據(jù)表1可知,應(yīng)用本文方法能夠明顯改善抗攻擊性能,由此說明本文方法中的加密性能較強(qiáng)。 分析應(yīng)用本文方法在不同身份認(rèn)證數(shù)量下,用戶與系統(tǒng)在處理證書獲取事務(wù)時(shí)的響應(yīng)速率,分析結(jié)果如圖5所示。 圖5 證書獲取速率分析 根據(jù)圖5可知,采用本文方法認(rèn)證身份,用戶與系統(tǒng)對(duì)證書獲取速率均保持在50 s以下,響應(yīng)速度較高。 在認(rèn)證系統(tǒng)中, IPC 需要先向 CA 申領(lǐng)證書, 再向安管平臺(tái)上的 SIP 服務(wù)器發(fā)送注冊(cè)請(qǐng)求,認(rèn)證 IPC 證書是否可信,如果證書不可信仍通過認(rèn)證即為認(rèn)證錯(cuò)誤。認(rèn)證的錯(cuò)誤拒絕率越高,說明認(rèn)證效果越好。比較不同方法身份認(rèn)證時(shí)的錯(cuò)誤拒絕、接收率變化情況,如圖6所示。 (a) 錯(cuò)誤拒絕率分析 根據(jù)圖6(a)可知,本文方法的錯(cuò)誤拒絕率始終保持在85%以上,具有較高的身份認(rèn)證錯(cuò)誤拒絕能力。由圖6(b)可知,本文方法的錯(cuò)誤接收率始終維持在0.5以下,說明本文方法能夠合理控制身份認(rèn)證的錯(cuò)誤信息。 本文研究基于PKI數(shù)字證書技術(shù)的電力監(jiān)控系統(tǒng)控制指令身份認(rèn)證方法。通過PKI數(shù)字證書技術(shù)進(jìn)行控制指令身份認(rèn)證,并詳細(xì)闡述了完整的身份認(rèn)證過程。實(shí)驗(yàn)驗(yàn)證了本文方法的合理性,獲取方法應(yīng)用后的效果。在未來研究階段,可借助當(dāng)前研究成果,繼續(xù)設(shè)計(jì)更完美的身份認(rèn)證方式。2.3 PKI數(shù)字證書操作階段
2.4 實(shí)現(xiàn)電力監(jiān)控系統(tǒng)控制指令身份認(rèn)證
3 實(shí)驗(yàn)分析
4 總結(jié)