楊春皓
(國網山西省電力公司萬榮縣供電公司,山西 運城 044000)
隨著人工智能技術和物聯網技術的不斷發展,智能電網正在逐步取代傳統的電力系統。智能變電站是智能電網的重要組成部分,它采用現代信息技術、物聯網技術和人工智能技術,將傳統的變電站升級為智能化、自適應、可靠、高效及環保的新型電力設施[1]。目前,智能變電站通過物聯網技術將各種傳感器、計量裝置等連接起來,并將數據上傳到云端,從而實現設備間的數據共享和交換,實時監測電力系統狀態。這其中智能變電站的通信安全就顯得尤為重要,一旦通信過程中遭受攻擊造成數據損壞或者數據篡改,就會嚴重影響電力系統的安全、穩定運行[2]。目前,智能變電站立足于IEC 62351標準制定的通信防御,還存在一定的缺陷,因此提出一種多階段傳輸方案,以完善智能變電站通信防護體系,為智能變電站的安全運行提供更好的保障。
目前,智能變電站通信網絡主要是基于IEC 61850標準構建的“三層兩網”結構,如圖1所示。

圖1 智能變電站通信網絡結構
“三層”包括過程層、間隔層和站控層。過程層主要負責與信息采集設備之間完成數字化信息的轉換與互聯;間隔層主要是完成對過程層上傳的數字信號進行分析,并將分析結果傳輸給站控層;站控層主要負責將站內信號和信息發送至遠方調度,以供調度中心可以實現對全站信息的實時監控[3]。
“兩網”包括過程層網絡和站控層網絡。過程層網絡主要負責過程層與間隔層的網絡連接,實現保護測控裝置與過程層各類接口裝置、傳感器以及執行元器件間的數據共享與應用;站控層網絡主要負責站控層和間隔層的網絡連接,實現保護測控裝置和站控層智能電子設備(Intelligent Electronic Device,IED)的數據共享與應用以及間隔層IED間的信息共享[4]。
目前,外部攻擊是智能變電站通信過程中會遭受的最主要威脅,并且存在遞進的3個階段:一是發掘合適的智能變電站通信網絡攻擊路徑;二是隱匿于智能變電站系統,實現機密信息的竊取,為后續攻擊提供依據;三是對智能變電站通信通道薄弱環節展開攻擊,達到破壞或中斷變電站業務的效果。其中,攻擊的具體方式包括對智能變電站正常指令的篡改、擾亂身份驗證、釋放拒絕服務(Denial of Service,DoS)攻擊、利用面向通用對象的變電站事件(Generic Object Oriented Substation Event,GOOSE)報文漏洞干涉通信準確性等。
目前,智能變電站通信安全的防御策略基于IEC 62351標準制定,其針對3階段外部攻擊分別有對應的舉措。例如:針對攻擊路徑發掘,智能變電站通過部署安全隔離裝置、防火墻和入侵檢測裝置等技術加以防范;針對機密信息竊取,智能變電站通過采用加密技術加以抵御;針對通信通道攻擊,智能變電站通過過采用消息完整性驗證、身份認證、數字簽名以及新鮮因子等技術加以防護[5]。然而依據IEC 62351標準制定的安全防護仍然存在不足,具體如下:一是標準指定的安全算法對智能變電站系統IED計算和處理能力有著較高的要求,否則會影響系統通信的實時性;二是標準缺乏對系統用戶身份更為嚴格的認證要求;三是標準缺少抵御GOOSE報文遭受篡改和重放等攻擊的應對手段。
針對智能變電站易受攻擊的模式以及現有通信防御的不足,著重將通信信息分割成3個階段傳輸,分別實現報文的通信主體身份認證、加密校驗以及完整性驗證,以保障智能變電站的通信安全。智能變電站通信信息多階段傳輸的安全效能如表1所示。

表1 智能變電站通信信息多階段傳輸的安全效能
關于報文通信主體身份安全認證,主要分為4個步驟,如圖2所示。

圖2 報文通信主體身份安全認證示意圖
第一步,將發送端的主體身份信息通過SM3、SM2加密算法,生成數字簽名值。
第二步,提取數字簽名數值中的身份標識以及當前時間戳t1,打包發送至通信接收端。
第三步,接收端分離打包信息,依次分離出t1、身份標識、數字簽名數值。如果分離結束的時間戳t2相較于此前接收到的時間戳t1,用時超過預先設定的分離時間,將駁回身份認證并發出驗證失敗警告;如果在預設時間內,則繼續進行驗證。
第四步,接收端使用驗簽公鑰對分離出的數字簽名值進行驗證,如果驗證通過,則主體身份通過認證;如果不能通過,則停止驗證并發出驗證失敗警告。
關于報文加密校驗,主要分為 6個步驟,如圖3所示。

圖3 報文加密校驗示意圖
第一步,以發送端記錄的雙方通信次數為輸入值,依據特定函數計算生成一個函數值X。
第二步,發送端將通信信息的明文通過SM2加密算法,生成密文。
第三步,發送端將函數值X、密文、當前時間戳t3打包發送至通信接收端。
第四步,接收端對打包信息進行分離,依次分離出t3、信息密文、函數值X。如果分離結束的時間戳t4相較于此前接收到的時間戳t3,用時超過預先設定的分離時間,將駁回身份認證并發出驗證失敗警告;如果在預設時間內,則繼續進行驗證。
第五步,以接收端記錄的雙方通信次數為輸入值,同樣依據輸入端使用的特定函數計算生成一個函數值Y,如果X=Y,則對密文進行解密;如果X≠Y,則發出驗證失敗警告。
第六步,接收端使用解密私鑰對密文進行解密計算,從而獲得信息明文。
關于報文完整性驗證,主要分為 6 個步驟,如圖4所示。

圖4 報文完整性驗證示意圖
第一步,將發送端的信息明文通過SM3加密算法,生成消息摘要值M。
第二步,對摘要值M通過加密SM2算法計算,獲得對應的數字簽名值。
第三步,發送端將數字簽名值、當前時間戳t5打包發送至通信接收端。
第四步,接收端對打包信息進行分離,依次分離出t5、數字簽名值。如果分離結束的時間戳t6相較于此前接收到的時間戳t5,用時超過預先設定的分離時間,將駁回身份認證并發出驗證失敗警告;如果在預設時間內,則繼續進行驗證。
第五步,接收端使用驗簽公鑰對分離出的數字簽名值進行驗證。如果驗證通過,則可獲得消息摘要值M;如果不能通過,則停止驗證并發出驗證失敗警告。
第六步,將接收端還原的信息明文通過SM3加密算法,生成消息摘要值N,如果M=N,則說明GOOSE報文發送完整;如果M≠N,則發出驗證失敗警告。
智能變電站作為電力系統的樞紐,其通信安全十分重要。針對變電站現有的通信隱患,提出的多階段信息傳輸方案會對智能變電站各項指令以及電力參數的傳輸提供安全防護,為從事智能變電站通信工作的人員提供積極的參考,從而推動智能變電站的可靠運行。