南方電網(wǎng)數(shù)字平臺科技(廣東)有限公司、廣東省數(shù)字電網(wǎng)技術(shù)企業(yè)重點(diǎn)實(shí)驗(yàn)室(南方電網(wǎng)數(shù)字電網(wǎng)研究院) 黃 翔 吳文鵬 劉曉靜 溫海輝 黃信信
在電網(wǎng)運(yùn)行和維護(hù)過程中,加強(qiáng)對電網(wǎng)運(yùn)行和維護(hù)的關(guān)注,是目前行業(yè)發(fā)展的一個(gè)重要課題。數(shù)據(jù)保護(hù)和信息加密是數(shù)據(jù)源平臺的基本操作,在達(dá)到數(shù)據(jù)保護(hù)的作用的同時(shí),通過邊緣網(wǎng)絡(luò)減少數(shù)據(jù)上傳云端暴露的風(fēng)險(xiǎn),并且能夠進(jìn)入云數(shù)據(jù)中心保證連接互聯(lián)網(wǎng)的數(shù)據(jù)資源,這樣既可以減少計(jì)算的延遲,也能減少數(shù)據(jù)上傳云端暴露的風(fēng)險(xiǎn),實(shí)現(xiàn)了電力運(yùn)維數(shù)據(jù)安全的加密與保護(hù)[1]。
通過將訪問機(jī)制的重新設(shè)計(jì),將屬性重密碼KP-ABE方法與使用密鑰策略的代理性重密碼PRE方法進(jìn)行適配,從而提供了一個(gè)安全而可使用的數(shù)據(jù)訪問控制方法。
基于數(shù)據(jù)中對于雙重權(quán)限映射機(jī)制的使用,首先是訪問控制的設(shè)計(jì),對數(shù)據(jù)對象上所具有的靈活性,對權(quán)限映射進(jìn)行管理和必要的數(shù)據(jù)控制,從而完成對電力運(yùn)維數(shù)據(jù)的云端數(shù)據(jù)的存儲,而且能夠保有敏感信息,這些敏感信息同樣存儲于公共云中電力運(yùn)維數(shù)據(jù)中心。且在上述的基礎(chǔ)上配置對層次中的虛擬數(shù)據(jù)進(jìn)行去除,冗余信息的排查后再對數(shù)據(jù)分配進(jìn)行RBAC方案的協(xié)商,這種方法能夠在清除冗余數(shù)據(jù)后的訪問信息中對多層次的數(shù)據(jù)進(jìn)行資源服務(wù)的管理,可以處理不同用戶的訪問請求,并對訪問的限制進(jìn)行約束。
通過密碼技術(shù)對訪問結(jié)構(gòu)進(jìn)行了設(shè)計(jì),所以在訪問結(jié)構(gòu)的基礎(chǔ)上基于邊緣計(jì)算模式。該方法能夠在將數(shù)據(jù)上傳到網(wǎng)絡(luò)后,直接對其進(jìn)行處理,從而更好地對實(shí)時(shí)要求的電力運(yùn)行管理數(shù)據(jù)進(jìn)行支持[2]。
邊緣計(jì)算模型的具體為邊緣節(jié)點(diǎn)與密鑰間的變換,邊節(jié)點(diǎn)和密鑰的轉(zhuǎn)化是邊緣計(jì)算的核心,其計(jì)算過程包括以下步驟:首先為電力運(yùn)營數(shù)據(jù)服務(wù)機(jī)構(gòu)建立一個(gè)管理員的初始化模型,然后產(chǎn)生一個(gè)公鑰,公共密鑰在雙線性群中把一個(gè)屬性映射為任意一組的元素。管理員選擇了功率運(yùn)行數(shù)據(jù),并創(chuàng)建了密鑰并隨機(jī)生成數(shù)據(jù)抽取,分別生成數(shù)據(jù)密鑰和運(yùn)維數(shù)據(jù)密鑰。運(yùn)維安全的數(shù)據(jù)公鑰是:
式中:V代為PK,MK,Ds與ck的初始化表示0。
邊沿計(jì)算模型中的密鑰產(chǎn)生是一種產(chǎn)生算法,其是根據(jù)每一種屬性的數(shù)據(jù),選取一條隨機(jī)的金鑰,并將該金鑰與各屬性的金鑰相匹配,選取作為金鑰產(chǎn)生的金鑰Ds,其技術(shù)表達(dá)式是:
式中:r∈ZP,S友示運(yùn)維數(shù)據(jù)用電運(yùn)行資料的正確性,已計(jì)算出具有“電源運(yùn)行管理”數(shù)據(jù)權(quán)限的密鑰。利用公式(2)來完成密鑰的維護(hù)操作數(shù)據(jù),由此在邊緣節(jié)點(diǎn)執(zhí)行對功率維護(hù)數(shù)據(jù)的加密傳送處理。數(shù)據(jù)的擁有者對每一個(gè)邊沿節(jié)點(diǎn)都產(chǎn)生一個(gè)多項(xiàng)式的訪問樹。本項(xiàng)目提出了一種新的基于邊計(jì)算的密文屬性加密方法,并將其應(yīng)用到邊計(jì)算中,從而解決了邊計(jì)算環(huán)境下密文屬性加密的問題。運(yùn)行維護(hù)數(shù)據(jù)采用密鑰存取,通過變換密鑰將終端的一些復(fù)雜的解密操作委托給邊緣節(jié)點(diǎn),極大地提升了系統(tǒng)的運(yùn)行效率。此外,該方案還具有不可更改的特性,可降低網(wǎng)絡(luò)運(yùn)行過程中數(shù)據(jù)泄漏的風(fēng)險(xiǎn),極大地增加數(shù)據(jù)所有者的安全性。邊緣計(jì)算加密模型的構(gòu)件,不僅設(shè)置了數(shù)據(jù)密鑰,也減少了冗余數(shù)據(jù)的非必要計(jì)算,提高加密的運(yùn)行速度。
本文采用匿名化加密算法,對各準(zhǔn)則識別符的屬性值進(jìn)行統(tǒng)計(jì),獲取最大值的準(zhǔn)則識別符屬性設(shè)定通用化屬性;最后,對用戶進(jìn)行匿名化處理,并對其進(jìn)行匿名化處理。
在電力運(yùn)行管理數(shù)據(jù)的有關(guān)指數(shù)中,數(shù)據(jù)準(zhǔn)確性和畸變程度的計(jì)算方法是:
數(shù)據(jù)精度計(jì)算公式為:
式中:λN(Oi,Oj)是數(shù)據(jù)精度;O是區(qū)域U內(nèi)各個(gè)電力運(yùn)維數(shù)據(jù)數(shù)值;|U|是U在U區(qū)間中,最大和最小值之差,也就是用電運(yùn)行和維護(hù)資料的最大間隔。
數(shù)據(jù)失真度的公式如下:
式中:A(Oi,Oj)是分類樹中所具有的子樹數(shù)量;TD是D的分類樹,H(TD)是TD的高度。
在完成電力運(yùn)維數(shù)據(jù)相關(guān)指標(biāo)中的數(shù)據(jù)精度和失真度的計(jì)算后,為了保證數(shù)據(jù)綜合表的精度,對經(jīng)過匿名化處理的電力運(yùn)行維護(hù)數(shù)據(jù)進(jìn)行了歸納,其公式如下:
式中:RT為匿名化處理得到的泛化集;nq為nq條記錄,對數(shù)據(jù)進(jìn)行記錄的同時(shí)完成泛化集的收錄;h為泛化的次數(shù)以及之后要進(jìn)行的預(yù)備泛化;DHGA為A中所存在的泛化樹的原有高度;t[Q]為準(zhǔn)標(biāo)識符值,m與n為抑制元素個(gè)數(shù)。公式(5),IL(RT)產(chǎn)生較高的結(jié)果,說明丟失了更多的信息[3]。
在對數(shù)據(jù)進(jìn)行匿名化的精度和失真度的計(jì)算后,生成的泛化集用于模型的加密環(huán)節(jié),邊緣計(jì)算安全模型分為基礎(chǔ)設(shè)施、網(wǎng)絡(luò)、數(shù)據(jù)和應(yīng)用四個(gè)安全層面,本文對邊緣計(jì)算的加密安全問題進(jìn)行細(xì)化分解。邊緣計(jì)算的安全模型如圖1所示。
圖1 邊緣計(jì)算安全加密模型
邊緣模型在構(gòu)建中不僅建立了問題的細(xì)化流程,也要達(dá)到外來數(shù)據(jù)的攻擊防御需求,數(shù)據(jù)攻擊的優(yōu)勢定義如下:
式中,Adv為優(yōu)勢定義,A為對手發(fā)起的攻擊,w為關(guān)鍵字,Pr()為初始化運(yùn)行算法;c`為挑戰(zhàn)者;k為私鑰。在模型收到挑戰(zhàn)者對模型內(nèi)順序編號的訪問請求進(jìn)行數(shù)據(jù)密文方面的提交,然后對于自身應(yīng)存在的數(shù)據(jù)密文進(jìn)行檢索,而后對于反饋的密鑰進(jìn)行機(jī)制保護(hù),然后通過挑戰(zhàn)者的傳輸檢索其他節(jié)點(diǎn)的數(shù)據(jù)需求,將所檢測到的加密需求,通過虛擬安全設(shè)施進(jìn)行存儲,與此同時(shí),為了提高解密的效率,在解碼過程中,為挑戰(zhàn)者預(yù)留一定的安全加密空間,完成在模型中的安全加密。
在數(shù)據(jù)的安全加密和模型的構(gòu)建完成后,對于加密的數(shù)據(jù)要進(jìn)行完整性的修復(fù)與審計(jì)工作。在電力運(yùn)維數(shù)據(jù)進(jìn)行云端存儲之前,加密的過程中必然要保證數(shù)據(jù)的完整性,所以本文對于電力運(yùn)維數(shù)據(jù)完整性的審計(jì)過程如下。
首先根據(jù)加密數(shù)據(jù)所存儲的云端服務(wù)器進(jìn)行運(yùn)維數(shù)據(jù)的傳輸,進(jìn)而利用動(dòng)態(tài)認(rèn)證器和隨機(jī)掩碼技術(shù)來進(jìn)行數(shù)據(jù)傳輸過程中的加密環(huán)節(jié),這一措施是為了實(shí)現(xiàn)動(dòng)態(tài)審計(jì),而后對于數(shù)據(jù)存儲服務(wù)器中的運(yùn)維數(shù)據(jù)進(jìn)行動(dòng)態(tài)更新,而后,對本地的數(shù)據(jù)進(jìn)行刪除,因此在去除靜態(tài)數(shù)據(jù)的基礎(chǔ)上,完成動(dòng)態(tài)的審計(jì)過程。其次通過隨機(jī)掩碼技術(shù)進(jìn)行審計(jì)的第二個(gè)環(huán)節(jié),但隨機(jī)掩碼技術(shù)存在一些不確定性,所以本文采用密碼技術(shù)與雙線性對中雙線性性質(zhì)相結(jié)合的方式來代替隨機(jī)掩碼技術(shù),實(shí)現(xiàn)隱私保護(hù)。同時(shí),將兩種方法擴(kuò)展,實(shí)現(xiàn)動(dòng)態(tài)數(shù)據(jù)的隱私保護(hù)操作也通過代理重加密算法實(shí)現(xiàn)加密過程中低復(fù)雜度的要求。最后是對于所加密的數(shù)據(jù)進(jìn)行批量審計(jì),當(dāng)有大量運(yùn)維數(shù)據(jù)同時(shí)發(fā)出審計(jì)請求或數(shù)據(jù)被分塊存儲在多個(gè)數(shù)據(jù)中心時(shí),本文為了提高審計(jì)效率,通過提高完整性審計(jì)方案應(yīng)具備的批量審計(jì)的能力,在批量審批的基礎(chǔ)上對于邊緣模型下的數(shù)據(jù)進(jìn)行加密的安全性證明。通過構(gòu)造基于塊認(rèn)證標(biāo)簽散列樹型結(jié)構(gòu)來改進(jìn)存儲模型。從而進(jìn)一步改進(jìn)了雙線性聚合簽名方法,提高安全加密方法批量審計(jì)效率。
在此基礎(chǔ)上,通過對不同方式下的電網(wǎng)運(yùn)行數(shù)據(jù)加密方式的比較,對所提出的與邊緣計(jì)算相結(jié)合的電網(wǎng)運(yùn)行數(shù)據(jù)加密方法進(jìn)行試驗(yàn),對同一攻擊方案下的密文傳輸效率進(jìn)行檢驗(yàn)。為了試驗(yàn)具有簡明性,設(shè)置本文設(shè)計(jì)的基于邊緣計(jì)算的電力運(yùn)維數(shù)據(jù)安全加密方法為實(shí)驗(yàn)組,基于K均值算法的電力運(yùn)維數(shù)據(jù)安全加密方法為對照組Ⅰ,基于離散型算法的電力運(yùn)維數(shù)據(jù)安全加密方法為對照組Ⅱ。
試驗(yàn)基于2核中央處理器、4GB運(yùn)行內(nèi)存,利用Windows 10對供電運(yùn)行服務(wù)提供商的計(jì)算機(jī)進(jìn)行供電運(yùn)行和運(yùn)行數(shù)據(jù)的加密傳送。本試驗(yàn)采用C++語言進(jìn)行測試。在此,利用Wireshark3.4.5來統(tǒng)計(jì)被捕捉到的數(shù)據(jù)包的流量。管理人員使用安卓11(1.2GHz)的手機(jī),負(fù)責(zé)供電運(yùn)營數(shù)據(jù)和供電維護(hù)數(shù)據(jù)的管理。為保證試驗(yàn)電源運(yùn)行過程中的運(yùn)行數(shù)據(jù)的安全,采用了一種基于配對的加密庫。密碼設(shè)定采用類型A對,序列長度是160比特,數(shù)字字段長度是512比特。本文提出一種基于橢圓曲線的數(shù)字簽名方法,該方法用于加密密文,生成簽名,并進(jìn)行認(rèn)證,以達(dá)到128比特對稱密鑰的安全性。
為驗(yàn)證該方法的有效性,在試驗(yàn)中設(shè)置一段針對電網(wǎng)運(yùn)行中的數(shù)據(jù)進(jìn)行加密處理的程序。通過試驗(yàn),選取了20 kB、30kB、40kB、50kB四種尺寸的電源運(yùn)行數(shù)據(jù)文件。比較了兩種常用的加密算法與本論文提出的基于邊界計(jì)算的加密算法,并對最后的加密算法進(jìn)行了驗(yàn)證。當(dāng)采用加密方式傳送的數(shù)據(jù)文件與原來的供電運(yùn)行數(shù)據(jù)文件愈相近時(shí),這種方法的有效性就越高。試驗(yàn)得到的比較結(jié)果見表1。
表1 數(shù)據(jù)加密對比結(jié)果(單位:kB)
從表1可以看出,與其他一般的電力運(yùn)營數(shù)據(jù)加密方法相比,本文所設(shè)計(jì)的將邊緣計(jì)算與電力運(yùn)營管理數(shù)據(jù)進(jìn)行融合的方法,在面對攻擊程序時(shí),仍然可以進(jìn)行數(shù)據(jù)的加密傳輸,并且傳送的數(shù)據(jù)尺寸與原始分組的數(shù)據(jù)十分相近,在原始數(shù)據(jù)包具有50kB時(shí)能夠做到49.8kB的數(shù)據(jù)傳輸,而對照組Ⅰ只能傳輸41.2kB,而對照組Ⅱ智能傳輸39.8kB。試驗(yàn)結(jié)果表明,所提出的基于邊緣計(jì)算的電網(wǎng)運(yùn)行數(shù)據(jù)加密算法具有更高的效率,能夠?qū)﹄娋W(wǎng)運(yùn)行數(shù)據(jù)進(jìn)行更好地加密和傳輸。
本文針對邊緣計(jì)算下電力運(yùn)維數(shù)據(jù)安全進(jìn)行加密,以加密后的數(shù)據(jù)完整性為立足點(diǎn),設(shè)計(jì)了相關(guān)方法。但是,在試驗(yàn)準(zhǔn)備方面仍存在著一些漏洞,即沒有對密碼算法的運(yùn)行時(shí)間進(jìn)行檢驗(yàn)。