文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2015.12.029
中文引用格式: 李文琴,范會聯(lián),文俊浩. 一種抵抗智能電網(wǎng)數(shù)據(jù)注入攻擊的認證密鑰機制[J].電子技術應用,2015,41(12):109-112.
英文引用格式: Li Wenqin,F(xiàn)an Huilian,Wen Junhao. A secure key authentication scheme against false data injection attack in power grid[J].Application of Electronic Technique,2015,41(12):109-112.
0 引言
電力系統(tǒng)的特殊性易遭惡意攻擊,故智能電網(wǎng)CPS系統(tǒng)安全需求非常迫切。目前的系統(tǒng)安全措施簡單,電網(wǎng)信息易被探測篡改。研究者發(fā)明了一系列監(jiān)控機制和狀態(tài)估計算法來監(jiān)測電力系統(tǒng)異常,篡改數(shù)據(jù)看似不太可行,但有研究指出一種壞數(shù)據(jù)注入攻擊(False Data Injection Attack)[1]在理論和實際上都有可能實現(xiàn)。
目前對智能電網(wǎng)系統(tǒng)常見的攻擊是針對傳感器的壞數(shù)據(jù)注入攻擊。該攻擊結合對電網(wǎng)部分結構的感知及對傳感器感知數(shù)據(jù)的惡意操控,避開狀態(tài)估計和不良數(shù)據(jù)檢測的感知,生成壞數(shù)據(jù),制造虛假狀態(tài),導致不當操作,造成損失。本文對此設計了基于電網(wǎng)傳感采集網(wǎng)絡結構的雙層加密模式,下層使用生成樹加密,上層使用配對認證與控制中心動態(tài)更新檢測密鑰方式加密,并使用仿真方法評估該加密方式性能,驗證其可行性、有效性和正確性,分析其抗攻擊的能力。
1 加密方案
針對該攻擊,提出一種基于整個網(wǎng)絡結構的加密機制在傳輸層面進行預防和檢測。
1.1 安全威脅與限制因素
由于電力信息采集傳感器的存儲、計算能力等資源有限,非對稱加密會造成較大系統(tǒng)開銷,故使用國密SM1對稱加密算法進行傳感器到控制中心數(shù)據(jù)傳輸?shù)募用苷J證。但其固定的共享密鑰易被截取,使整個網(wǎng)絡的安全性大大降低。
1.2 加密方案考慮
本文僅考慮有限數(shù)量的傳感設備按由下往上的層次被攻陷的情況。目前有許多針對分布式傳感網(wǎng)絡的加密方案[2],如多層密鑰機制LEAP、q-composite隨機性密鑰預分配方案等,都不太適應電網(wǎng)系統(tǒng)傳感節(jié)點分布的可拓展性、持久性等需求,但多層密鑰、密鑰預分配值得借鑒。電網(wǎng)傳感節(jié)點采用MODBUS通信協(xié)議,極大減小了通信鏈路開銷。有人提出了基于區(qū)域數(shù)據(jù)聚集的遍歷網(wǎng)絡生成樹同態(tài)加密算法Paillier[3],開銷、安全性均可接受,理論上可行,但缺少檢測機制,且無法應對節(jié)點被順藤摸瓜攻陷的情況。
1.3 加密機制
本文鑒于網(wǎng)絡結構特性,結合相關研究成果中的配對密鑰技術[4]運用于數(shù)據(jù)聚集中心,基于預分配密鑰,提出對控制中心和聚集中心進行同步加密的機制,將電網(wǎng)系統(tǒng)劃分為簇間、簇內(nèi)密鑰管理模塊,根據(jù)計算性能不同,完成對稱加密和公鑰加密的結合。
2 基于配對劃分的認證密鑰機制
2.1 簇內(nèi)加密
簇內(nèi)密鑰借鑒生成樹同態(tài)加密算法,針對節(jié)點數(shù)量控制樹的高度,增強區(qū)域內(nèi)互聯(lián)。
2.1.1 流程概述
聚集中心是具有一定計算、管理能力的實體,節(jié)點部署階段預先由簇內(nèi)拓撲結構生成聚集樹,并定時遍歷節(jié)點更新拓撲結構,根據(jù)樹形和深度給節(jié)點分配編號,進行Hash運算生成密鑰發(fā)給節(jié)點,若單點失效且其異常易被其感知,發(fā)送警報給控制中心。
2.1.2 密鑰的生成
預部署時根據(jù)需求安放傳感節(jié)點,顧及網(wǎng)絡結構連通性,確認拓撲圖后,為滿足深度最小、內(nèi)節(jié)點孩子最少的要求,采用寬度優(yōu)先遍歷構造生成樹。接著遍歷確定節(jié)點編號并可進行置換運算,結果保存在聚集中心,采用Hash方式生成對稱加密長度要求的密鑰。
2.1.3 數(shù)據(jù)聚集過程
根據(jù)生成樹結構設置,子節(jié)點傳數(shù)據(jù)給聚集中心時一定經(jīng)過其父節(jié)點, 即父節(jié)點接受子節(jié)點信息并合并到數(shù)據(jù)包,再傳給其父節(jié)點,直到聚集中心。因同態(tài)加密的可行性,父節(jié)點不參與子節(jié)點數(shù)據(jù)包的解密即可操作,只有擁有全部密鑰的聚集中心通過層層解密才可得到原始采集的數(shù)據(jù)。
2.1.4 方案性能限制
該方案不適用節(jié)點數(shù)眾多的區(qū)域,若遇此情況可考慮劃分子區(qū)域等方案;若遇到目的性強的黑客,會在物理層攻破一定數(shù)量的內(nèi)節(jié)點,獲取該領域部署結構,仿照此機制控制節(jié)點,進而偽造密鑰,致使整個區(qū)域被攻破。
2.2 簇間認證方案
本文的認證機制基于各聚集節(jié)點簇間邊界的功率互補特性,針對電網(wǎng)環(huán)境特殊適應性,能增強可靠性,提高識別檢測能力,繼承了配對密鑰(PKE)及隨機密鑰預分配(RKP)的特性。而該機制對運算和存儲的要求不如PKE苛刻,預分配的隨機密鑰也不隨機,卻蘊含該簇周圍連通簇的連接信息。
圖1是簇間認證方案總體流程圖,包括分割節(jié)點、認證信息配置、認證工作、動態(tài)更新節(jié)點分割和配置幾方面。
2.2.1 電網(wǎng)拓撲圖的分割
本文針對電網(wǎng)結構及基于內(nèi)容的密鑰認證特征,采取以重要節(jié)點為中心的劃分方式。通過計算簇間是否有可感知的支線直接相連,得到一個中心度權重的簇節(jié)點排序,根據(jù)網(wǎng)絡規(guī)模、分割平衡、分布完備等需求,結合權重順序選擇權值大的重要節(jié)點作為分割子圖的中心進行圖的劃分。
控制中心根據(jù)各個配對共享密鑰進行簇到控制中心的傳輸,進行圖劃分的目的就是找到對共享密鑰最有利的配對劃分。最終形成的分割應以兩個簇為一組相互認證;在一定可靠性考慮下,折衷通信和計算復雜度開銷,可在重要節(jié)點處加入3個一組呈三角循環(huán)認證。本文僅討論兩兩配對的情況。圖2用IEEE14bus測試數(shù)據(jù)集簡要說明了對網(wǎng)絡拓撲的劃分結果。
2.2.2 密鑰的生成
圖分割完畢后,系統(tǒng)進行記錄并在要擁有盡可能大數(shù)量的直接相連配對簇的目的下假定配對,不強制一對一,網(wǎng)絡結構分布不理想時允許一對多。擁有相連支線的簇采用共享的支線功率作為關鍵計算密鑰。具體來說,IEEE118bus測試樣例的功率精確度足以分辨上百個不同支線,真實電網(wǎng)中的數(shù)據(jù)會更加精確,可采納為密鑰運算的決定因子。
在配對的節(jié)點1和節(jié)點2間,設I1、U1、P1、Q1分別為節(jié)點1的電流、電壓、有功功率和無功功率,節(jié)點2同理,Y=R+jX為節(jié)點間支線的阻抗。對于該對節(jié)點,有:
通常PMU采集到的數(shù)據(jù)不包含電流,并且支線阻抗恒定,所以有式(3)、式(4)作為計算節(jié)點間認證密鑰的依據(jù)。
針對時間變換時功率發(fā)生變化的情況,可在一定時間間隔內(nèi)存儲一個靜態(tài)功率值并進行一定來往的雙方協(xié)商更改,確定下一時段采取的密鑰,則密鑰在配對范圍內(nèi)就不是靜態(tài)的,減弱了單點被攻陷后欺騙另外節(jié)點的可能。
需要注意,支線兩端傳感檢測到的功率值并非完全匹配,含有檢測誤差和波動,即在測不準或有誤差的情況下,采用配對粒度上的狀態(tài)估計方法[5]。狀態(tài)估計量測量與狀態(tài)變量的關系為:
式中,z=(z1,z2,…,zm)T,(zi∈R,i=1,2,…,m)表示估計狀態(tài)量測量,一般包括節(jié)點電壓幅值、節(jié)點注入有功功率和無功功率以及支路有功和無功功率;x=(x1,x2,…,xn)T,(xj∈R,j=1,2,…,n)表示系統(tǒng)的狀態(tài)變量,包括節(jié)點電壓幅值和相角;e=(e1,e2,…,em)T,(ek∈R,k=1,2,…,m)表示量測差,一般認為ek服從均值為0的高斯分布,且cov(e)=Rh(x)是一個表示系統(tǒng)拓撲結構的非線性函數(shù)矩陣。對于一個簡單的直流系統(tǒng)模型來說,其傳感器量測量只包括支路有功功率和節(jié)點注入有功功率,狀態(tài)變量包括節(jié)點電壓相角,節(jié)點電壓幅值均為1p.u。忽略所有的支路阻抗,狀態(tài)估計可以由下面的線性化模型來代替:
2.2.3 加密解密及認證過程
簇節(jié)點采集的信息由密鑰保護,在向控制中心傳輸數(shù)據(jù)的同時也生成密鑰確認信息和其配對進行交換認證,在一次上傳中,一對簇信息交由一方確認同伴身份后解密聚集打包,按控制中心分配的密鑰進行數(shù)據(jù)上傳,雙方輪流承擔該角色。圖3表示了一對簇節(jié)點的密鑰交換及認證過程,由節(jié)點A主動發(fā)起通信和傳輸數(shù)據(jù),可以動態(tài)切換。
2.2.4 配對及配置的更新
簇間連接有多套配對方案,控制中心動態(tài)控制選擇,多樣化保證各簇節(jié)點認證。為加強監(jiān)管,控制中心隨時獲取配對密鑰,由狀態(tài)估計進行閾值下的一致性檢測。動態(tài)更新的時間閾值關系著攻擊者能否成功實施攻擊。為加強機制的能動性,更新間隔越小越好,動態(tài)更新使密鑰具有前向安全性。
2.2.5 存在的問題
該加密方式存在內(nèi)容的誤差造成同步時的密鑰沖突問題,為了接近一致性假設,設計尋找特征進行映射的算法有一定的必要性,暫不在本文討論范圍。若簇對都被攻陷了,黑客攻擊就聰明地避開動態(tài)配對劃分的檢測,此機制就需要更加深入的探討。
此加密機制添加了諸道認證關口,但僅是加大了黑客攻擊的難度,若黑客有足夠耐心和強大計算能力,就不能保證什么系統(tǒng)是無法攻破的。
3 實驗驗證與分析
為驗證該機制的可行性、有效性和正確性及抗攻擊能力,使用了模擬監(jiān)控系統(tǒng)。
3.1 SCADA模擬系統(tǒng)
基于電力系統(tǒng)中監(jiān)控系統(tǒng)即SCADA系統(tǒng)架構,采用IEEE118節(jié)點標準測試樣例在計算機集群上模擬了控制中心、物理節(jié)點、傳感器、控制器幾大部件。為了使該模擬系統(tǒng)能夠真實反應出電網(wǎng)的物理狀態(tài),在物理節(jié)點網(wǎng)絡底層設置了模型計算中心,借助MATPOWER軟件包,采用最優(yōu)電力路徑算法(Optimal Power Flow,OPF[6]),實時更新模擬電網(wǎng)狀態(tài)使其符合物理規(guī)律,且在控制中心建立了狀態(tài)估計機制,包含控制命令轉(zhuǎn)發(fā)、MODBUS協(xié)議構建等一系列真實電網(wǎng)系統(tǒng)的網(wǎng)絡通信、節(jié)點部署的模擬,真實全面地動態(tài)反映電力系統(tǒng)狀態(tài)。故采用此系統(tǒng)驗證本文所述加密機制。
3.2 認證機制實現(xiàn)
由于模型只是簡單對于118節(jié)點進行模擬,節(jié)點數(shù)少,看不出簇間加密效果,故暫且不表述,且簇間加密是基于已有研究成果進行適應性應用,不再探究其性能。對簇間加密模擬,由于實際由TCP/IP作為底層協(xié)議,相關網(wǎng)絡參數(shù)要作一定調(diào)整,且要對理想的傳感數(shù)據(jù)做符合實際情況的誤差波動。
下面進行簡單實驗考察配對節(jié)點間的電力需求波動情況下傳遞的誤差閾值。式(8)為需求波動模型,其中,α為電力需求調(diào)整百分比系數(shù),Pd則是配對節(jié)點其中一個的電力需求功率:
在前面的波動假設下,按照式(3)、式(4)在IEEE14bus測試數(shù)據(jù)集下進行差值估計,圖4展示了在不同電力需求調(diào)整百分比系數(shù)α下的節(jié)點預測的偏離度,在每個系數(shù)下使用了100組隨機數(shù)據(jù)估測,得到的偏離程度是一致的。圖4說明了電力需求波動越小,誤差估計越小,越趨近平穩(wěn)值。在真實情況下,用電高峰期的誤差閾值設置和低峰期的閾值設置可以通過理論計算進行動態(tài)更改。
3.3 虛假數(shù)據(jù)注入攻擊情景模擬
生成虛假向量,有目的性地選擇受攻擊的傳感設備,查看怎樣規(guī)模的設備被攻陷數(shù)量、結構可能會瞞過系統(tǒng)的檢測機制。
3.4 性能分析
該加密方案的獨創(chuàng)性在于減少了密鑰動態(tài)更新的開銷,擺脫了固定算法更新密鑰的可追溯性,增強了網(wǎng)絡結構認證性,對于虛假數(shù)據(jù)注入攻擊有一定的抵御檢測能力。
簇間加密算法的優(yōu)勢在于基于對稱加密實現(xiàn),運算及存儲開銷小,密鑰與內(nèi)容正相關,有不可估量性,認證有獨特性。但缺點在于密鑰建立算法的可靠性,對于支線功率數(shù)據(jù)離散度大、隨機波動頻繁的特性,需設計合適算法、調(diào)整因子,較大網(wǎng)絡可能較難做到精確性,這也是以后的工作研究重點。
4 總結
本文針對智能電網(wǎng)傳感數(shù)據(jù)的壞數(shù)據(jù)注入攻擊,制定了以簇為分界線的兩層認證機制,簇內(nèi)認證加密采用生成樹分擔數(shù)據(jù)聚集任務的方式,以節(jié)點拓撲編號為密鑰計算標準,結合同態(tài)加密的對稱算法進行拓撲遍歷聚合數(shù)據(jù);簇間的認證加密采用密鑰基于內(nèi)容生成的方式進行對稱加密,用配對技術設立認證環(huán)節(jié),控制中心動態(tài)監(jiān)測簇對健康度。該機制能夠有效防御錯誤數(shù)據(jù)注入攻擊。
本文所提方案還有許多可改進之處,后續(xù)工作可圍繞基于內(nèi)容生成密鑰的學習算法展開,制定更穩(wěn)定可實施的加密算法。
參考文獻
[1] Yao Liu,Peng Ning,Michael K.Reiter.False data injection attacks against state estimation in electric powergrids[J].ACM Transactions on Computational Logic,2009,V(N):1-34.
[2] 代航陽.分布式無線傳感器網(wǎng)絡密鑰管理研究[A].2010.
[3] LI F,LUO B,LIU P.Secure information aggregation for smart grids using homomorphic encryption[C].In Smart Grid Communications(SmartGridComm),2010 First IEEE International Conference on.
[4] HUANG,D,MEDHI D.Secure pairwise key establishment in large-scale sensor networks:an area partitioning and multi-group key predistribution approach[J].ACM Transactions on Sensor Networks,2007(8):34.
[5] 于爾鏗.電力系統(tǒng)狀態(tài)估計[M].北京:水利電力出版社.1985.
[6] Dommel, Hermann W,William F.Tinney.Optimal power flow solutions[J].IEEE transactions on power apparatus and systems,1968(10):1866-1876.