《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于SM4并行加密的智能電網(wǎng)監(jiān)控與安全傳輸系統(tǒng)
基于SM4并行加密的智能電網(wǎng)監(jiān)控與安全傳輸系統(tǒng)
2016年電子技術(shù)應(yīng)用第11期
余 容1,,黃 劍2,,何朝明1
1.西南交通大學 機械工程學院,,四川 成都610031;2.桂林電子科技大學 信息與通信學院,,廣西 桂林541004
摘要: 隨著電網(wǎng)規(guī)模的日益擴大以及監(jiān)控設(shè)備的逐漸增多,為了高效,、集中地監(jiān)控電網(wǎng)設(shè)備的運行情況,,結(jié)合ModBus和IEC104協(xié)議,設(shè)計了一種智能電網(wǎng)監(jiān)控與安全傳輸系統(tǒng),,實現(xiàn)設(shè)備斷線自動重連機制,,提高系統(tǒng)的穩(wěn)定性,并且以圖形交互界面的形式提供給用戶,,便于用戶直觀地進行數(shù)據(jù)監(jiān)控與設(shè)備管理,。由于數(shù)據(jù)采集量的與日俱增,針對當前系統(tǒng)中數(shù)據(jù)傳輸?shù)陌踩暂^低,、大量數(shù)據(jù)加密傳輸時實時性不高等問題,,結(jié)合SM4加密算法及GPU并行計算的能力,提出一種新的并行加密算法,,并有效應(yīng)用到系統(tǒng)中,,提高數(shù)據(jù)傳輸過程中的安全性與實時性。實驗結(jié)果表明,,此監(jiān)控系統(tǒng)運行穩(wěn)定可靠,,實時性好,安全性高,。
中圖分類號: TP309.2
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2016.11.017
中文引用格式: 余容,,黃劍,何朝明. 基于SM4并行加密的智能電網(wǎng)監(jiān)控與安全傳輸系統(tǒng)[J].電子技術(shù)應(yīng)用,,2016,,42(11):66-69.
英文引用格式: Yu Rong,Huang Jian,,He Chaoming. Smart grid monitoring and secure transmission system based on SM4 parallel encryption[J].Application of Electronic Technique,,2016,42(11):66-69.
Smart grid monitoring and secure transmission system based on SM4 parallel encryption
Yu Rong1,,Huang Jian2,,He Chaoming1
1.School of Mechanical Engineering,Southwest Jiaotong University,,Chengdu 610031,,China,; 2.School of Information & Communication Engineering,Guilin University of Electronic Technology,,Guilin 541004,,China
Abstract: With the growing size of the grid and monitoring equipment, in order to monitor the operation of network equipment efficiently and centrally, this paper designs the smart grid monitoring and secure transmission with ModBus and IEC104 agreement, to achieve re-connection mechanism automatically when devices disconnected, and improve system stability as well. In addition, it′s convenient for user to monitor the data and manage the devices in the form of graphical interface. Due to the increasing amount of data collected, for the low security and not high real-time of amount data transmission in current, this paper puts forward a new parallel encryption algorithm based on SM4 parallel encryption. Applied in the current system, it can improve the security and real-time of amount parallel data transmission efficiently. Experimental results show that the monitoring system possesses real-time and high security stably.
Key words : SM4;parallel encryption,;data monitoring

0 引言

    智能電網(wǎng)通過各種總線協(xié)議將帶有傳感器的物理設(shè)備與計算機系統(tǒng)連接一起,,組成一個綜合監(jiān)控管理系統(tǒng),具有高效性,、可靠性,、便捷性等優(yōu)勢[1]

    雖然現(xiàn)代電力網(wǎng)給社會生活帶來了便捷,,但是現(xiàn)有系統(tǒng)在數(shù)據(jù)的終端采集上還存在很多不足之處,,如現(xiàn)有許多監(jiān)控系統(tǒng)只注重對設(shè)備數(shù)據(jù)的采集而忽略了設(shè)備管理的便捷性;其監(jiān)控系統(tǒng)的穩(wěn)定性不夠,,設(shè)備網(wǎng)絡(luò)斷開后不能自動連接,;當電網(wǎng)規(guī)模擴大,監(jiān)控設(shè)備隨之增多,,數(shù)據(jù)傳輸?shù)膶崟r性降低,。此外,智能電網(wǎng)系統(tǒng)—旦受到惡意攻擊,,系統(tǒng)本身將會遭受嚴重的破壞,,從而給社會生活、工業(yè)生產(chǎn)各方面帶來巨大的損失,。因此,,智能電網(wǎng)系統(tǒng)的安全面臨著更為嚴峻的挑戰(zhàn)[2]。如何建立一個有效的智能電網(wǎng)安全監(jiān)控系統(tǒng),,制定可靠的數(shù)據(jù)安全傳輸策略,,有效地保障信息在釆集傳輸過程中的安全可靠性,已成為當務(wù)之急,。

1 系統(tǒng)總體設(shè)計方案

    設(shè)備數(shù)據(jù)監(jiān)控系統(tǒng)設(shè)計成分層結(jié)構(gòu)分為感知層,、網(wǎng)絡(luò)層和應(yīng)用層,每層分別實現(xiàn)各自的功能,,整體框架圖如圖1所示,。

ck4-t1.gif

    (1)感知層:主要是基于ModBus和IEC104協(xié)議的數(shù)據(jù)采集系統(tǒng)。系統(tǒng)通過讀取站點配置文件,,創(chuàng)建采集線程,,采集線程不斷地采集各個ModBus和IEC104設(shè)備的數(shù)據(jù),并通過網(wǎng)絡(luò)層傳輸給中心管理系統(tǒng),。

    (2)網(wǎng)絡(luò)層:主要是基于GPU的SM4并行數(shù)據(jù)加密傳輸系統(tǒng),。通過改進的并行加密技術(shù)對采集到的數(shù)據(jù)進行加密處理,,提高數(shù)據(jù)加密的安全性和實時性,。

    (3)應(yīng)用層:主要包含中心數(shù)據(jù)監(jiān)控系統(tǒng)和設(shè)備控制系統(tǒng),。數(shù)據(jù)監(jiān)控系統(tǒng)實現(xiàn)對采集到的數(shù)據(jù)存儲、顯示等,,設(shè)備控制系統(tǒng)實現(xiàn)對ModBus設(shè)備和IEC104設(shè)備的統(tǒng)一控制功能,。

2 智能電網(wǎng)監(jiān)控系統(tǒng)實現(xiàn)

2.1 ModBus和IEC104協(xié)議

    ModBus通信采用C/S通信方式。目前,,工業(yè)中將 ModBus通過以太網(wǎng)結(jié)合TCP/IP協(xié)議組成ModBus TCP/IP網(wǎng)絡(luò)進行通信[3],,其應(yīng)用數(shù)據(jù)單元(ADU)由供TCP/IP專用的ModBus應(yīng)用協(xié)議頭(MBAP)和通用的協(xié)議數(shù)據(jù)單元(PDU)組成[4]

    IEC104協(xié)議是為解決電力控制和高速網(wǎng)絡(luò)傳輸?shù)男枨笾贫ǖ囊环N采用TCP/IP網(wǎng)絡(luò)協(xié)議進行傳輸?shù)耐ㄐ艆f(xié)議[5],。該協(xié)議采用C/S通信方式,。客戶端發(fā)送數(shù)據(jù)請求,,而服務(wù)端進行應(yīng)答請求,;服務(wù)端也可以直接發(fā)送控制命令來修改客戶端的數(shù)據(jù),實現(xiàn)雙向讀寫[6],。

2.2 數(shù)據(jù)采集控制模塊實現(xiàn)

    數(shù)據(jù)采集模塊是采集系統(tǒng)的核心,,該模塊讀取MsSQL數(shù)據(jù)庫中的modbus_table和iec104_table配置表,配置表中保存了站點設(shè)備的配置信息,。數(shù)據(jù)采集控制系統(tǒng)的主線程根據(jù)讀取到的配置記錄初始化內(nèi)存數(shù)據(jù),,并創(chuàng)建ModBus數(shù)據(jù)采集線程、IEC104數(shù)據(jù)采集線程和設(shè)備控制線程,。采用多線程的結(jié)構(gòu),,可以實現(xiàn)設(shè)備的并行采集的功能。ModBus數(shù)據(jù)采集模塊的主線程流程圖如圖2所示,。

ck4-t2.gif

    為了確保數(shù)據(jù)采集的完整性,,在采集線程中引入了斷線重連機制。一旦建立的TCP/IP連接發(fā)生斷開情況,,則立刻刷新連接,,重新建立TCP/IP連接,繼續(xù)發(fā)送采集請求,??刂凭€程在啟動后一直處于監(jiān)聽狀態(tài),等待上層管理系統(tǒng)發(fā)來控制命令,。接到控制命令后,,解析出是ModBus控制指令還是IEC104控制指令,隨后對相應(yīng)設(shè)備發(fā)起控制命令,。

    ModBus通信是基于TCP/IP協(xié)議,。首先,,查看連接狀態(tài),如果處于斷開狀態(tài),,則調(diào)用connect_site()函數(shù)進行連接,,并更改狀態(tài)為采集狀態(tài)。當處于采集狀態(tài)時,,通過調(diào)用read_site_register()和read_site_bit()函數(shù)進行數(shù)據(jù)采集,,采集流程圖如圖3所示。若采集返回出錯,,則重新設(shè)置連接狀態(tài),,等待下次循環(huán)重新建立連接并采集數(shù)據(jù)。當處于關(guān)閉狀態(tài)時,,通過調(diào)用close_site()函數(shù)關(guān)閉TCP/IP連接并釋放相應(yīng)的資源,。

ck4-t3.gif

    IEC104數(shù)據(jù)采集線程的流程圖如圖4所示。首先建立TCP連接,。然后初始化IEC104幀,,發(fā)起總召喚命令,啟動數(shù)據(jù)傳輸功能并等待數(shù)據(jù)的到來,。當收到數(shù)據(jù)時,,驗證報文的合法性,通過驗證的報文進入報文解析處理函數(shù),,然后根據(jù)報文具體功能回復相應(yīng)命令,;沒有通過驗證的報文直接丟棄。

ck4-t4.gif

2.3 設(shè)備控制模塊實現(xiàn)

    根據(jù)ModBus設(shè)備和IEC104設(shè)備控制命令的格式及特點對其進行了一次封裝,,提供給用戶統(tǒng)一的控制命令接口,,其控制命令格式如圖5所示。

ck4-t5.gif

    (1)設(shè)備ID:表示目標設(shè)備的ID號,,所有的ModBus設(shè)備和IEC104設(shè)備統(tǒng)一進行編號,。

    (2)控制類型:當目標設(shè)備是ModBus設(shè)備時, 0表示寫寄存器,,1表示寫線圈,;當目標設(shè)備是IEC104設(shè)備時,0表示遙調(diào)命令,,1表示遙控命令,。

    (3)目標地址:表示目標設(shè)備待操作的地址。

    (4)數(shù)值:表示對目標地址進行寫操作的數(shù)值,。

    (5)控制標志:用來表明本次控制操作的狀態(tài),,0表示選擇狀態(tài),1表示控制狀態(tài),,2表示撤銷狀態(tài),。

    設(shè)備控制模塊主要由一個單獨的控制線程實現(xiàn)對ModBus設(shè)備和IEC104設(shè)備的統(tǒng)一控制,。控制線程在啟動后一直處于監(jiān)聽狀態(tài),,等待管理系統(tǒng)發(fā)來的控制命令,。接到控制命令后,解析出是ModBus還是IEC104設(shè)備的控制指令,,隨后構(gòu)造相應(yīng)的控制命令幀,,從而發(fā)起控制命令,,具體流程如圖6所示,。

ck4-t6.gif

3 基于GPU的SM4并行加密

    SM4 是一種分組密碼算法,其分組長度和密鑰長度均為128 bit,。加解密算法與密鑰擴張算法都采用32輪非線性迭代結(jié)構(gòu)[7],。在數(shù)據(jù)量較大的情況下,使用SM4串行加密的耗時成為了采集系統(tǒng)實時傳輸?shù)钠款i,。本文利用GPU[8]并行計算能力與SM4算法的結(jié)構(gòu)特點,,設(shè)計了基于GPU的SM4并行數(shù)據(jù)加密模塊,將采集到的數(shù)據(jù)傳送給GPU,,GPU把加密后的結(jié)果送給數(shù)據(jù)轉(zhuǎn)發(fā)模塊,,提高了加密運算的實時性。

    SM4并行加密模塊流程圖如圖7所示,。首先,,在CPU執(zhí)行一次密鑰擴展,生成輪密鑰,。然后,,將輸入數(shù)據(jù)和擴展密鑰存儲到GPU全局存儲空間內(nèi)。輸入數(shù)據(jù)分成每塊128 bit,,通過調(diào)用cryptKernel核函數(shù)[9,,10]實現(xiàn)每個GPU線程對數(shù)據(jù)塊的并行加密。最后,,加密輸出的密文數(shù)據(jù)將再次被寫到全局設(shè)備存儲器內(nèi),,隨后,CPU程序?qū)⑤敵鰯?shù)據(jù)結(jié)果從GPU 的全局設(shè)備存儲器內(nèi)取回,,整個加密過程完成,。

ck4-t7.gif

4 系統(tǒng)測試與分析

    為了測試系統(tǒng)的功能與性能,在主機上運行數(shù)據(jù)模擬器應(yīng)用程序,,作為客戶端,,用來產(chǎn)生ModBus和IEC104數(shù)據(jù)。以ModBus模擬器為例,,運行數(shù)據(jù)采集系統(tǒng)對模擬器數(shù)據(jù)進行采集,,通過中心數(shù)據(jù)管理系統(tǒng)顯示采集到的數(shù)據(jù),,如圖8所示。

ck4-t8.gif

    通過運行設(shè)備控制應(yīng)用程序,,實現(xiàn)對ModBus或IEC104設(shè)備的控制,。運行設(shè)備控制程序后,就可以在“〉”提示符下輸入控制命令,。下面分別對ModBus設(shè)備寫線圈,、寫寄存器命令和對IEC104發(fā)起遙控命令,測試結(jié)果如圖9所示,。

ck4-t9.gif

    以第二條命令為例,。第二條命令是實現(xiàn)對ModBus設(shè)備寄存器值的寫操作,即對1號設(shè)備地址為21的寄存器進行寫數(shù)值“12”操作,,返回值為零,,表明寫寄存器操作執(zhí)行成功。為了驗證命令的執(zhí)行情況,,通過對比模擬器在執(zhí)行命令的前后狀態(tài),,可以發(fā)現(xiàn)地址為21的寄存器值發(fā)生相應(yīng)的變化,如圖10所示,。

ck4-t10.gif

5 總結(jié)

    本文設(shè)計了一種智能電網(wǎng)監(jiān)控與安全傳輸系統(tǒng),,采用與TCP/IP協(xié)議結(jié)合緊密的ModBus和IEC104協(xié)議進行數(shù)據(jù)采集,便于數(shù)據(jù)傳輸,,并在系統(tǒng)中引入斷線自動重連機制,,完善系統(tǒng)功能。為了確保和提高批量數(shù)據(jù)傳輸過程中的安全性與實時性,,有效結(jié)合SM4加密算法與GPU并行計算,,提出基于GPU并行計算的SM4加解密基本架構(gòu)。現(xiàn)場實驗測試表明,,系統(tǒng)運行狀況良好,,可有效提高數(shù)據(jù)傳輸時的安全性與實時性,最終,,實現(xiàn)對設(shè)備數(shù)據(jù)進行實時采集與并行加密傳輸?shù)墓δ?,為工業(yè)監(jiān)控系統(tǒng)提供了核心模塊。

參考文獻

[1] 劉漢宇,,牟龍華.微電網(wǎng)CPS體系架構(gòu)及其物理端研究[J].電力自動化設(shè)備,,2012,32(5):34-37.

[2] 徐琳,,溫蜜,,李晉國.智能配電網(wǎng)中具有隱私保護的數(shù)據(jù)安全認證方案[J].電子技術(shù)應(yīng)用,2015(12):98-101.

[3] 金德剛,吳自然,,吳桂初.基于Modbus/TCP的數(shù)字式電流互感器設(shè)計[J].電子技術(shù)應(yīng)用,,2014,40(6):93-95.

[4] 高秀蘭.基于Modbus TCP/IP通訊綜合監(jiān)控系統(tǒng)的實現(xiàn)[J].儀表技術(shù)與傳感器,,2015(10):104-106.

[5] 陶學軍,,徐奉友,王艷領(lǐng).IEC 60870-5-104協(xié)議在光伏電站中的應(yīng)用[J].機電工程技術(shù),,2014(3):40-44.

[6] 馬曉紅,,管荑,林祺蓉.104規(guī)約在調(diào)度自動化系統(tǒng)中的應(yīng)用[J].山東電力技術(shù),,2011(6):002.

[7] WANG K,,PENG D,SONG L,,et al.Implementation of Modbus communication protocol based on ARM Coretx-M0[C].System Science and Engineering(ICSSE),,2014 IEEE International Conference on.IEEE,,2014:69-73.

[8] KANDROT E,,SANDERS J.CUDA by example:an introduction to general-purpose GPU programming[M].Amsterdam:Addison-Wesley Longman,2010.

[9] IWAI K,,NISHIKAWA N,,KUROKAWA T.Acceleration of AES encryption on CUDA GPU[J].International Journal of Networking and Computing,2012,,2(1):131-145.

[10] Shane Cook.CUDA并行程序設(shè)計GPU編程指南[M].蘇統(tǒng)華,,李東,譯.北京:機械工業(yè)出版社,,2014.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。