張 陵 何丹東 趙普志 石 倩
(1.國(guó)網(wǎng)新疆電力公司 烏魯木齊 830000)(2.國(guó)網(wǎng)新疆電力公司電力科學(xué)研究院 烏魯木齊 830011)
智能電網(wǎng)是通過(guò)對(duì)電力負(fù)荷、設(shè)備故障信號(hào)、在網(wǎng)設(shè)備運(yùn)行數(shù)據(jù)以及電網(wǎng)拓?fù)浣Y(jié)構(gòu)等海量數(shù)據(jù)的實(shí)時(shí)處理實(shí)現(xiàn)在線狀態(tài)檢測(cè)、實(shí)時(shí)故障診斷以及短期和長(zhǎng)期電力負(fù)荷預(yù)測(cè)等諸多電網(wǎng)功能的智能化[1]。因此智能電網(wǎng)對(duì)所處理的海量數(shù)據(jù)的實(shí)時(shí)性和可靠性要求較高。另一方面由于網(wǎng)絡(luò)技術(shù)的高速發(fā)展,豐富的電力數(shù)據(jù)資源分散在網(wǎng)絡(luò)中的各個(gè)軟件系統(tǒng)和服務(wù)平臺(tái)中,長(zhǎng)期得不到充分利用,因此有效匯總廣域環(huán)境下異構(gòu)系統(tǒng)中的各類電力數(shù)據(jù)資源為用戶提供統(tǒng)一的數(shù)據(jù)資源服務(wù)成為亟待解決的問(wèn)題[2~3]。云存儲(chǔ)平臺(tái)具有具有可靠性高、數(shù)據(jù)處理能力強(qiáng)大、靈活可擴(kuò)展和資源利用率高等優(yōu)勢(shì),將其應(yīng)用到電網(wǎng)中,一方面能改善信息中心數(shù)據(jù)處理和存儲(chǔ)的能力,另一方而可以有效支撐智能電網(wǎng)的建設(shè)[3~4]。因此云存儲(chǔ)平臺(tái)成為智能電網(wǎng)領(lǐng)域數(shù)據(jù)存儲(chǔ)的不二選擇。
由于智能電網(wǎng)云存儲(chǔ)平臺(tái)中的數(shù)據(jù)一直處于動(dòng)態(tài)更新?tīng)顟B(tài)中,因此如何保證海量數(shù)據(jù)高效實(shí)時(shí)更新的前提下保證數(shù)據(jù)完整性成為亟待解決的問(wèn)題[5]。目前主流的云存儲(chǔ)數(shù)據(jù)加密驗(yàn)證方案有數(shù)據(jù)完好可證明和數(shù)據(jù)恢復(fù)可證明[6~7]。數(shù)據(jù)完好可證明方案是利用隨機(jī)抽樣和冗余編碼,通過(guò)握手協(xié)議向終端用戶證明數(shù)據(jù)的無(wú)損。數(shù)據(jù)恢復(fù)可證明方案是基于數(shù)據(jù)完整性的檢測(cè)方案[8~10]。文獻(xiàn)[11]采用對(duì)稱密碼技術(shù)構(gòu)造數(shù)據(jù)恢復(fù)可證明方案,并引入文件恢復(fù)功能。文獻(xiàn)[12]基于RSA樹(shù)結(jié)構(gòu)實(shí)現(xiàn)數(shù)據(jù)的動(dòng)態(tài)插入,并面向動(dòng)態(tài)數(shù)據(jù)的更新提出一種數(shù)據(jù)可恢復(fù)的證明方案。文獻(xiàn)[13]在服務(wù)器集群環(huán)境中對(duì)據(jù)完好可證明方案功能進(jìn)行了擴(kuò)展,使其性能得到大幅提高。文獻(xiàn)[14]利用RSA公鑰密碼實(shí)現(xiàn)了對(duì)數(shù)據(jù)塊標(biāo)識(shí)的計(jì)算。文獻(xiàn)構(gòu)建同態(tài)標(biāo)識(shí)實(shí)現(xiàn)重復(fù)驗(yàn)證,并利用Merkle哈希樹(shù)實(shí)現(xiàn)了對(duì)數(shù)據(jù)的動(dòng)態(tài)更新。文獻(xiàn)[15]采用基于短簽名技術(shù)實(shí)現(xiàn)了對(duì)數(shù)據(jù)的可驗(yàn)證同態(tài)簽名。
基于上述研究,本文提出一種基于元數(shù)據(jù)加密的智能電網(wǎng)云存儲(chǔ)平臺(tái)。該平臺(tái)基于面向?qū)ο蟮拇鎯?chǔ)模型,利用數(shù)據(jù)優(yōu)化分布算法保障云存儲(chǔ)平臺(tái)的數(shù)據(jù)處理效率,同時(shí)針對(duì)智能電網(wǎng)海量數(shù)據(jù)實(shí)時(shí)更新的特點(diǎn),采用哈希加密函數(shù)和短簽名策略實(shí)現(xiàn)對(duì)存儲(chǔ)集群中的元數(shù)據(jù)完整性校驗(yàn)。
云存儲(chǔ)平臺(tái)采用基于對(duì)象的存儲(chǔ)架構(gòu)。這種存儲(chǔ)架構(gòu)由客戶端、元數(shù)據(jù)服務(wù)器和對(duì)象存儲(chǔ)器集群成。對(duì)象存儲(chǔ)集群以對(duì)象為單元對(duì)數(shù)據(jù)解析管理。對(duì)象作為最基本的數(shù)據(jù)存儲(chǔ)單元,可以直接為用戶提高數(shù)據(jù)讀取服務(wù),這樣避免元數(shù)據(jù)服務(wù)在數(shù)據(jù)管理過(guò)程中可能造成的性能瓶頸,使得數(shù)據(jù)訪問(wèn)嚇跑了得到提升[16]?;谶@種模式的云存儲(chǔ)平臺(tái)模型如圖1所示。
圖1 存儲(chǔ)平臺(tái)模型
1)設(shè)備層主要由存儲(chǔ)介質(zhì)和網(wǎng)絡(luò)通信設(shè)備組成。該層采用面向?qū)ο蟮拇鎯?chǔ)架構(gòu),通過(guò)集群方式建立底層存儲(chǔ)設(shè)備層。存儲(chǔ)層中包含數(shù)量眾多、位置分散的存儲(chǔ)設(shè)備,通過(guò)高速通信網(wǎng)絡(luò)聯(lián)通。存儲(chǔ)層的存儲(chǔ)管理系統(tǒng)實(shí)現(xiàn)底層存儲(chǔ)設(shè)備的管理、監(jiān)測(cè)以及維護(hù)等相關(guān)工作。
2)管理層主要是對(duì)底層存儲(chǔ)設(shè)備的運(yùn)行進(jìn)行協(xié)調(diào),通過(guò)運(yùn)用集群技術(shù)等相關(guān)技術(shù),對(duì)上層應(yīng)用提供統(tǒng)一的數(shù)據(jù)存取接口。通過(guò)該層的數(shù)據(jù)訪問(wèn)接口,可為上層應(yīng)用構(gòu)建基于對(duì)象存儲(chǔ)的分布式文件系統(tǒng),為云存儲(chǔ)系統(tǒng)提出具有較高安全系數(shù)和性能保障的底層存儲(chǔ)環(huán)境。
3)接口層為云存儲(chǔ)系統(tǒng)服務(wù)的數(shù)據(jù)處理的調(diào)用接口。用戶身份的鑒別和權(quán)限控制等安全性操作都在該層實(shí)現(xiàn)。
4)訪問(wèn)層為外部用戶和外部應(yīng)用提供數(shù)據(jù)存儲(chǔ)、讀取的公共接口。
云存儲(chǔ)平臺(tái)的數(shù)據(jù)來(lái)源主要是電網(wǎng)的智能終端的用電信息數(shù)據(jù)、設(shè)備信息數(shù)據(jù)以及故障信息數(shù)據(jù)等,這些數(shù)據(jù)通過(guò)異構(gòu)系統(tǒng)通過(guò)電力通信網(wǎng)絡(luò)匯集到云存儲(chǔ)平臺(tái)中[17]。當(dāng)用戶所訪問(wèn)的數(shù)據(jù)出現(xiàn)完整性的問(wèn)題時(shí),元數(shù)據(jù)服務(wù)器最為云存儲(chǔ)系統(tǒng)的可信服務(wù)器對(duì)數(shù)據(jù)完整性進(jìn)行驗(yàn)證。
智能電網(wǎng)云存儲(chǔ)平臺(tái)中元數(shù)據(jù)的加密處理一共分為六個(gè)過(guò)程。
1)第一個(gè)過(guò)程是數(shù)據(jù)初始化階段。此階段主要生成密鑰并對(duì)采集數(shù)據(jù)進(jìn)行加密和簽名。
完成加密后對(duì)元數(shù)據(jù)進(jìn)行短簽名操作,生成對(duì)應(yīng)的網(wǎng)絡(luò)簽名信息,其中uj∈G(p)為公鑰?;诙毯灻木酆喜僮鳎上嗤杉瘏^(qū)域的數(shù)據(jù)簽名聚合成統(tǒng)一的區(qū)域簽名。隨后由區(qū)域簽名聚合成云區(qū)域簽名。最后加密后的數(shù)據(jù)和時(shí)間戳標(biāo)識(shí)傳輸至云存儲(chǔ)平臺(tái),簽名信息發(fā)送至可信服務(wù)器。
2)第二個(gè)過(guò)程是數(shù)據(jù)存儲(chǔ)。云存儲(chǔ)平臺(tái)通過(guò)后構(gòu)造哈希數(shù)列的方式,把屬于同一個(gè)采集區(qū)域的數(shù)據(jù)依據(jù)其標(biāo)識(shí)映射入同一個(gè)哈希數(shù)列。并采用LSH方式構(gòu)造數(shù)據(jù)索引。索引的建立過(guò)程如圖2所示。
圖2 索引的建立過(guò)程
式(2)中a表示一個(gè)N維的隨機(jī)向量。v表示元數(shù)據(jù)對(duì)應(yīng)的特征向量。b表示取值區(qū)間在內(nèi)的正實(shí)數(shù)。
3)第三個(gè)過(guò)程是驗(yàn)證請(qǐng)求。由于智能電網(wǎng)云存儲(chǔ)平臺(tái)所處理的數(shù)量極大,對(duì)所有元數(shù)據(jù)的加密過(guò)程進(jìn)行完整性驗(yàn)證會(huì)造成系統(tǒng)負(fù)載過(guò)大。因此只對(duì)提出驗(yàn)證請(qǐng)求的數(shù)據(jù)進(jìn)行驗(yàn)證。終端用戶設(shè)定驗(yàn)證數(shù)據(jù)的兩個(gè)參數(shù),并 將發(fā)送給云存儲(chǔ)平臺(tái)和可信服務(wù)器發(fā)起驗(yàn)證請(qǐng)求。如果則對(duì)所有元數(shù)據(jù)的加密過(guò)程進(jìn)行完整性檢查。
4)第四個(gè)過(guò)程是數(shù)據(jù)檢索。云存儲(chǔ)平臺(tái)接收到終端用戶的數(shù)據(jù)驗(yàn)證請(qǐng)求后,由c1,c2得到對(duì)應(yīng)的key,并對(duì)元數(shù)據(jù)所在的區(qū)域進(jìn)行檢索。
5)第五個(gè)過(guò)程是元數(shù)據(jù)驗(yàn)證??尚欧?wù)器接收到用戶和云存儲(chǔ)平臺(tái)的驗(yàn)證信息,先對(duì)簽名信息進(jìn)行匯總計(jì)算,然后計(jì)算等式:
如果式(3)等式成立,則向用戶返回?cái)?shù)據(jù)完整,否則返回?cái)?shù)據(jù)不完整。
6)第六個(gè)過(guò)程為數(shù)據(jù)的動(dòng)態(tài)更新。在這個(gè)過(guò)程中,由于數(shù)據(jù)量大以及更新頻率較快,因此采用索引表更新的方法來(lái)支持?jǐn)?shù)據(jù)的增刪改操作。
數(shù)據(jù)插入操作中首先對(duì)元數(shù)據(jù)進(jìn)行加密,然后繼續(xù)簽名標(biāo)識(shí),隨后將簽名信息發(fā)給可信服務(wù)器用于更新信息,最后將元數(shù)據(jù)和基于時(shí)間戳的標(biāo)識(shí)發(fā)給云存儲(chǔ)平臺(tái),由云存儲(chǔ)平臺(tái)組成由數(shù)據(jù)數(shù)組,并將數(shù)組映射到對(duì)應(yīng)的哈希區(qū)域中。
數(shù)據(jù)刪除操作中首先是接收待刪除數(shù)據(jù)的標(biāo)識(shí),確定對(duì)應(yīng)的哈希區(qū)域,檢索出元數(shù)據(jù)數(shù)組,將其刪除,最后向可信服務(wù)器發(fā)送其標(biāo)識(shí)并將其簽名信息刪除。
數(shù)據(jù)修改操作是在接收到待修改數(shù)據(jù)的標(biāo)識(shí)后,確定對(duì)應(yīng)的哈希區(qū)域,檢索出元數(shù)據(jù)數(shù)組,將其刪除,并插入修改后的元數(shù)據(jù),然后將修改的元數(shù)據(jù)連同標(biāo)識(shí)發(fā)給可信服務(wù)器,進(jìn)行簽名更新。
對(duì)元數(shù)據(jù)加密過(guò)程的安全性進(jìn)行分析,得出以下結(jié)論。
1)本文所提出元數(shù)據(jù)加密過(guò)程可以保證數(shù)據(jù)在傳輸過(guò)程以及存儲(chǔ)環(huán)境中的機(jī)密性,信道以及云存儲(chǔ)平臺(tái)中地元數(shù)據(jù)都經(jīng)過(guò)加密,能夠較全面地防止數(shù)據(jù)被未授權(quán)訪問(wèn)。
2)本文對(duì)元數(shù)據(jù)地簽名策略在自適應(yīng)選擇明文攻擊下是抗存在性偽造的。如果一個(gè)人能偽造有效簽名,則可推測(cè)他有能力偽造短簽名,但短簽名己被證明在標(biāo)準(zhǔn)模型下具有抵抗自適應(yīng)選擇明文攻擊,所以本文提出的短簽名策略具有較好的抗偽造性。
3)作為元數(shù)據(jù)校驗(yàn)依據(jù)的等式(3)中包含了用戶的公鑰gα,所以可信服務(wù)器對(duì)提出數(shù)據(jù)檢驗(yàn)的用戶ID進(jìn)行確定。
4)即使網(wǎng)絡(luò)私鑰被泄露或破解,但仍無(wú)法對(duì)已經(jīng)傳輸?shù)拇鎯?chǔ)在云存儲(chǔ)平臺(tái)的元數(shù)據(jù)進(jìn)行解密。
5)本文所提出的元數(shù)據(jù)驗(yàn)證可由可信服務(wù)器來(lái)執(zhí)行,并且在驗(yàn)證過(guò)程中可信服務(wù)器只能獲取元數(shù)據(jù)簽名信息,并沒(méi)有加密私鑰,所以不能獲取元數(shù)據(jù)的內(nèi)容。
測(cè)試環(huán)境為3臺(tái)PC組成的Hadoop集群系統(tǒng)。PC配置相同:Intel 2.50Hz酷睿處理器,12GB內(nèi)存,500GB硬盤空間。3臺(tái)機(jī)器分別模擬云存儲(chǔ)平臺(tái)和可信服務(wù)器。依次選取2KB、4KB、……、128KB不同大小的元數(shù)據(jù)塊,每次選取500塊進(jìn)行計(jì)算開(kāi)銷的性能測(cè)試。測(cè)試中分別采用基于同態(tài)標(biāo)簽的校驗(yàn)方法以及線性簽名驗(yàn)證方法進(jìn)行結(jié)果對(duì)比,測(cè)試結(jié)果如圖3所示。由圖3可知,與上述兩種方法對(duì)比,本文所提的加密方法計(jì)算耗時(shí)較短,效率較好。
圖3 加密計(jì)算效率的測(cè)試結(jié)果
本文提出的元數(shù)據(jù)加密算法主要針對(duì)智能電網(wǎng)云存儲(chǔ)平臺(tái)的海量數(shù)據(jù)實(shí)時(shí)更新,因此在加密操作中通過(guò)哈希運(yùn)算對(duì)每個(gè)元數(shù)據(jù)的時(shí)間戳標(biāo)識(shí)進(jìn)行映射,使其基于相同區(qū)域進(jìn)行聚合,從而有效提高元數(shù)據(jù)在更新過(guò)程中的效率。對(duì)三種算法進(jìn)行數(shù)據(jù)更新的測(cè)試對(duì)比,結(jié)果如圖4所示。顯然,本文所提出的加密策略在數(shù)據(jù)更新效率上具有明顯優(yōu)勢(shì)。
圖4 數(shù)據(jù)更新測(cè)試結(jié)果
本文基于對(duì)智能電網(wǎng)數(shù)據(jù)存儲(chǔ)模型的研究,提出了一種基于元數(shù)據(jù)加密的云存儲(chǔ)平臺(tái)的數(shù)據(jù)處理方案。該方案針智能電網(wǎng)數(shù)據(jù)實(shí)時(shí)更新的特點(diǎn),提出短簽名策略的數(shù)據(jù)完整性驗(yàn)證方法,不通過(guò)哈希加密函數(shù)對(duì)元數(shù)據(jù)數(shù)組實(shí)現(xiàn)基于位置的聚合,使其有利于提升數(shù)據(jù)檢索和更新。通過(guò)安全性分析和性能測(cè)試表明,本文所提出的加密方案具有較好的安全性能,同時(shí)有較高的數(shù)據(jù)處理效率。