吳 云,呂偉東,李春哲,滕曉紅
(1.東北電力大學(xué) 信息工程學(xué)院,吉林 吉林 132012;2.國網(wǎng)遼源供電公司,吉林 遼源 136200;3.東北電力大學(xué) 學(xué)報編輯部,吉林 吉林 132012)
智能電網(wǎng)就是電網(wǎng)的智能化,旨在為電力用戶提供更為穩(wěn)定、可靠的電能[1].伴隨智能電網(wǎng)和通信技術(shù)的不斷發(fā)展,電力用戶與電力公司間的雙向通信成為可能,其中用戶側(cè)的智能電表是雙向通信中的關(guān)鍵部件[2].然而,在智能電表為電力用戶和電力企業(yè)帶來便利的同時,也同樣給電力用戶帶來了隱私威脅.智能電表數(shù)據(jù)中蘊藏著較多用戶的隱私信息,一旦被攻擊者掌握,將會給電力用戶造成難以估量的損失[3].同時,在用戶用電數(shù)據(jù)實時采集的過程當中,海量數(shù)據(jù)的遠程發(fā)送所造成的匯聚效應(yīng)[4]勢必將給通信網(wǎng)絡(luò)及數(shù)據(jù)中心帶來巨大的負擔(dān),這對智能電網(wǎng)通信的安全性和準確性提出了較高要求[5~6].數(shù)據(jù)聚合技術(shù)可以顯著減少智能電網(wǎng)中通信、計算與存儲開銷,因此結(jié)合隱私保護的聚合方案成為解決智能電網(wǎng)中海量數(shù)據(jù)安全通信問題的一個重要手段[7].
同態(tài)加密方法正是采用了數(shù)據(jù)聚合技術(shù),非常適合應(yīng)用在智能電網(wǎng)家庭用電數(shù)據(jù)的保護,不僅具有良好的加密效果,同時可很好的降低通信、計算開銷.1999年,Paillier[8]首次提出加法同態(tài)加密算法,人們稱之為Paillier算法,此后人們紛紛對Paillier算法展開研究,并逐漸應(yīng)用在各個場景下.其中,Li等[9]結(jié)合聚合樹的思想,將同態(tài)加密應(yīng)用到智能電網(wǎng)安全信息的聚合方案當中,但樹結(jié)構(gòu)網(wǎng)絡(luò)并不能適用于智能電網(wǎng).Erkin和Tsudik[10]對Paillier算法進行了修改,提出了一個智能電網(wǎng)數(shù)據(jù)的聚合方案,但此方法需要每個智能電表提前被分配公鑰的一個分量,這樣就要求發(fā)送數(shù)據(jù)過程中,每個智能電網(wǎng)都必須參與,否則無法完成解密,并將極大的增加通信開銷.
針對上述問題,本文先利用盲簽名算法與密鑰分配相結(jié)合的身份認證方式,依靠本地聚合器實現(xiàn)對電表數(shù)據(jù)的實時(每隔十五分鐘一次)讀取,再采用匿名化處理與Paillier同態(tài)加密的方法,將當天該區(qū)域內(nèi)的用電數(shù)據(jù)發(fā)往數(shù)據(jù)中心.形成一套更為完整的智能電表數(shù)據(jù)隱私保護方案,將大大提高數(shù)據(jù)的安全性.
智能電表實時數(shù)據(jù)隱私保護的一般模型,如圖1所示.圖中主要涉及5個組成部分:智能電表(Smart Meter,SM)、區(qū)域網(wǎng)關(guān)(Regional Gateway,RG)、本地聚合器(Local Aggregator,LAG)、數(shù)據(jù)中心(Data Center,DC)和可信第三方(Trusted Third Party,TTP).
圖1 系統(tǒng)模型
1.1.1 智能電表
智能電表是智能電網(wǎng)的智能終端,它已經(jīng)不是傳統(tǒng)意義上的電能表,智能電表除了具備傳統(tǒng)電能表基本用電量的計量功能以外,為了適應(yīng)智能電網(wǎng)和新能源的使用它還具有雙向多種費率計量功能、用戶端控制功能、多種數(shù)據(jù)傳輸模式的雙向數(shù)據(jù)通信功能、防竊電功能等智能化的功能[11],智能電表代表著未來節(jié)能型智能電網(wǎng)最終用戶智能化終端的發(fā)展方向[12].
1.1.2 區(qū)域網(wǎng)關(guān)
智能電表和智能電網(wǎng)之間的信息交互接口[13],智能電表通過區(qū)域網(wǎng)關(guān)將用戶用電數(shù)據(jù)安全地發(fā)送到本地聚合器,是一定范圍內(nèi)的智能電表進行聚合的必經(jīng)之路.
1.1.3 本地聚合器
本地聚合器是連接終端、計算機或通信設(shè)備的中心連接點設(shè)備,用來抄寫智能電表數(shù)據(jù)并定時把電表數(shù)據(jù)通過有線網(wǎng)發(fā)送到電力公司的數(shù)據(jù)中心,實現(xiàn)智能電表與數(shù)據(jù)中心的實時在線連接.本地聚合器使得遠程抄表的效率、費用以及數(shù)據(jù)完整率、數(shù)據(jù)共享等方面得到很大改善[14].
1.1.4 數(shù)據(jù)中心
數(shù)據(jù)中心是智能電表數(shù)據(jù)的處理和存儲中心,為電力公司的供配電提供重要數(shù)據(jù)支持[15].對智能電表數(shù)據(jù)的采集主要出于兩個目的:一是定期的用電信息采集,以便收繳計費;二是對用戶實時用電數(shù)據(jù)進行分析來調(diào)整電量供應(yīng),避免多余發(fā)電和促進電力有效可靠傳輸.
1.1.5 可信第三方
可信第三方與數(shù)據(jù)中心之間的通信需要是絕對安全的,負責(zé)為系統(tǒng)生成各項參數(shù)及密鑰,它同時具有強大的計算能力,可以實現(xiàn)對智能電表數(shù)據(jù)的快速計算[16].
Paillier算法是由以下部分構(gòu)成:
L(u)=(u-1)/n;
(3)數(shù)據(jù)解密:將密文c恢復(fù)成明文m:
智能電表的使用促進了電力系統(tǒng)信息化的發(fā)展,使得用戶側(cè)和數(shù)據(jù)中心之間的雙向通信成為可能.總購電量、累計用電量、剩余電量和購電次數(shù)等指標是數(shù)據(jù)中心比較關(guān)注的一些數(shù)據(jù),因此,本地聚合器會定期向區(qū)域內(nèi)的智能電表讀取一次數(shù)據(jù),并在數(shù)據(jù)庫中進行短暫存儲后發(fā)向數(shù)據(jù)中心.但在數(shù)據(jù)的讀取和傳輸過程都存在一定的安全隱患,因此需要選擇合適的隱私保護方法來提高數(shù)據(jù)的安全性.本文方案在智能電表與本地聚合器之間(即數(shù)據(jù)讀取階段)將對密鑰分配過程進行盲化處理,以確保區(qū)域內(nèi)所有參與數(shù)據(jù)讀取的用戶身份的合法性;在本地聚合器與數(shù)據(jù)中心之間(數(shù)據(jù)的傳輸階段)采用匿名化處理和Paillier同態(tài)加密相結(jié)合的方法完成對數(shù)據(jù)的聚合加密,提高了用戶隱私信息的安全性.最后,本地聚合器將聚合后的數(shù)據(jù)發(fā)往數(shù)據(jù)中心,在建立通信會話過程中,智能電表并不會使用真實身份,而是由可信第三方負責(zé)生成一個臨時ID,只針對該次會話有效,數(shù)據(jù)到達數(shù)據(jù)中心后完成解密操作.
在接入電網(wǎng)之前,用戶需要在本地聚合器進行注冊.用戶Ui將具體的身份信息提交給本地聚合器,由本地聚合器對用戶身份的合法性進行判斷,若驗證通過,則給智能電表SMi頒發(fā)含有唯一身份編號numi和公私鑰(yi,xi)的入網(wǎng)許可證書permiti,而permiti=Sigxg(Pτ),并且本地聚合器會將Ui、numi和permiti存儲在自己的數(shù)據(jù)庫中.
mi為智能電表的原始數(shù)據(jù),ti是精確的時戳,發(fā)送過程如下:
(5)區(qū)域網(wǎng)關(guān)接收到消息后,存儲k3,將廣播消息Lj發(fā)給智能電表;
在聚合數(shù)據(jù)階段,本地聚合器采用匿名化處理和Paillier同態(tài)加密相結(jié)合的方法完成對數(shù)據(jù)的聚合加密,并將聚合數(shù)據(jù)發(fā)送給數(shù)據(jù)中心,具體步驟如下:
(1)本地聚合器以如下方式聚合同態(tài)加密數(shù)據(jù)得到E(Mt)
(2)數(shù)據(jù)中心驗證聚合簽名后,將加密數(shù)據(jù)E(Mt)恢復(fù)成明文
其中:L(u)=(u-1)/n,Mt為本地聚合器中的一個用電數(shù)據(jù);
(3)數(shù)據(jù)中心得到全部用電數(shù)據(jù)后,即可對整個智能電網(wǎng)的運行進行規(guī)劃與調(diào)整.
本文提出的數(shù)據(jù)加密方案應(yīng)當滿足以下幾個前提:
(1)可信第三方是絕對安全可信的實體,這是所有算法執(zhí)行的基礎(chǔ)和前提.
(2)橢圓曲線和有限域上的離散對數(shù)問題在多項式時間下是難解的.
(3)智能電表中擁有防篡改存儲設(shè)備,讀寫數(shù)據(jù)只能由自身執(zhí)行,其它任何設(shè)備無法篡改信息.
(4)本地聚合器具有較高的安全性,需要確保當日數(shù)據(jù)不遭竊取和丟失.
本文提出的智能電表數(shù)據(jù)加密方案具有抵抗重放攻擊的能力,一旦惡意攻擊者截獲了某個智能電表SMi發(fā)給區(qū)域網(wǎng)關(guān)的消息c3,重復(fù)發(fā)送該消息給區(qū)域網(wǎng)關(guān),則區(qū)域網(wǎng)關(guān)能夠檢測出該消息的正確性.此外,還具有匿名性和機密性的特點.由于數(shù)據(jù)傳輸?shù)恼麄€過程中,一直使用的身份信息是一個臨時ID,未曾透露出用戶的身份,因此具有匿名性;在數(shù)據(jù)傳輸過程中,即使某一惡意攻擊者截獲了用戶發(fā)送的報文,該惡意攻擊者仍然無法獲得數(shù)據(jù)mi,體現(xiàn)了方案的機密性特征.
表1 密碼學(xué)運算符執(zhí)行時間
圖2 計算開銷的比較
本方案不僅在數(shù)據(jù)安全性上有很好的保障,在加密過程中的計算開銷也要優(yōu)于普通數(shù)據(jù)加密方法.通過在RAM為8GB,CPU為AMD 羿龍ⅡX4 3.2GHz的平臺上測試,得出密碼學(xué)運算符執(zhí)行所消耗的時間.其中,計算時間較長,運算包括雙線性對計算時間Tp、Hash函數(shù)計算時間TMTP、指數(shù)計算時間Texp以及對Paillier算法的加解密計算時間TE和TD,它們的具體執(zhí)行時間如表1所示.令每個本地聚合器所覆蓋的智能電表個數(shù)用a表示,計算了方案執(zhí)行過程中各實體總的計算開銷,將其與傳統(tǒng)數(shù)據(jù)加密方法[17]進行比較,如圖2所示.
通過圖2的比較可以看出,本文所提出的智能電表數(shù)據(jù)隱私保護方案不僅具有更高的隱私保護強度,同時隨著參與聚合用戶數(shù)量的增加,系統(tǒng)對計算開銷的降低效果也越來越顯著,做到了隱私保護的有效性和經(jīng)濟性兼顧.
本文結(jié)合智能電表所處的實際環(huán)境,提出了一個智能電表數(shù)據(jù)的隱私保護方案,可將遠程終端將采集到的用戶用電數(shù)據(jù)安全、高效地發(fā)送到數(shù)據(jù)中心.方案對密鑰分配方案進行盲化處理,確保了參與數(shù)據(jù)聚合的用戶身份的合法性;運用了匿名化的處理手段,有效地保護了用戶身份隱私;采用了Paillier算法,在加密數(shù)據(jù)的同時,也有效地降低了系統(tǒng)的計算開銷.