陸翔宇 李 蕊 羨慧竹 丁 寧 劉士峰(中國電網(wǎng)北京電力科學(xué)研究院 北京 100162)
當(dāng)前電網(wǎng)與物聯(lián)網(wǎng)[1]的聯(lián)系越來越緊密,這要求在電力企業(yè)和智能電能表之間建立支持雙向通信的基礎(chǔ)設(shè)施,且能夠自動制定決策。一般情況下,智能電能表將測量的細粒度用電數(shù)據(jù)發(fā)送至電力企業(yè),并接收電力企業(yè)的指令。但對于普通用戶來說,細粒度用電數(shù)據(jù)的采集和存儲會帶來安全隱私問題[2]。
對于用電數(shù)據(jù)安全性問題,一般使用數(shù)據(jù)聚合技術(shù)來隱藏個體電表讀數(shù),同時減少高頻計量數(shù)據(jù)在網(wǎng)絡(luò)中產(chǎn)生的分組業(yè)務(wù)[3]。其理念是數(shù)據(jù)包從電能表路由至網(wǎng)關(guān)時,在網(wǎng)絡(luò)內(nèi)執(zhí)行聚合,每個中間電能表執(zhí)行一次聚合。但這會使得特定電能表的私人數(shù)據(jù)暴露給網(wǎng)絡(luò)中的另一個電能表,因為聚合是在未加密電能表讀數(shù)上執(zhí)行的。為解決該問題,一些研究者建議使用部分同態(tài)加密(Partial Homomorphic Encryption,PHE)[4-5]、全同態(tài)加密(Fully Homomorphic Encryption,FHE)[6-7]、安全多方計算(Secure Multiple Party Computation,SMPC)[8-9],以隱私保護的方式在隱藏數(shù)據(jù)上執(zhí)行特定的算術(shù)運算。文獻[10]以Paillier同態(tài)加密與盲因子相結(jié)合的方式對用戶的多維數(shù)據(jù)進行加密,使得即使攻擊者獲得了解密密鑰也無法解密單個用戶的加密信息,更加體現(xiàn)了數(shù)據(jù)聚合的本質(zhì)。
在同態(tài)加密系統(tǒng)[11]中,PHE被廣泛用于簡單聚合,支持加密數(shù)據(jù)上的加法運算,但PHE無法在加密數(shù)據(jù)上執(zhí)行其他運算,這可能會影響到其他配電側(cè)操作,例如狀態(tài)估計、直接負荷控制等。FHE和SMPC系統(tǒng)支持加密數(shù)據(jù)上的加法和乘法運算,提高了應(yīng)用的靈活性,同時保護用戶隱私。但FHE系統(tǒng)會產(chǎn)生較大的密文和較長的計算時間,特別在應(yīng)用乘法時更是如此。這使其不適用于高級計量基礎(chǔ)設(shè)施(Advanced Metering Infrastructure,AMI)網(wǎng)絡(luò)中的內(nèi)聚合。SMPC方法是輕量級方法,但其要求大量消息傳遞,而AMI網(wǎng)絡(luò)中不支持所有成員之間的直接通信,因此可行性不高。
為此,本文提出解決上述問題的必要機制,提出基于安全MPC的協(xié)議,大幅降低了消息傳遞復(fù)雜度,主要工作和創(chuàng)新總結(jié)如下:1) 為了將FHE系統(tǒng)適應(yīng)到AMI網(wǎng)絡(luò),提出了當(dāng)使用TCP作為底層傳輸協(xié)議時,降低密文大小并處理分組重組問題[12]的機制。由于TCP預(yù)先不知道分組的大小,無法對到達接收器的流進行切割。為此,提出一個解決方案,在傳輸層之上加入了一個新的表示層,以在發(fā)送方包含分組大小信息。2) 為了使SMPC適配AMI網(wǎng)絡(luò),本文提出降低消息復(fù)雜度的機制。經(jīng)典的SMPC協(xié)議使用密鑰共享技術(shù),每輪數(shù)據(jù)采集在電能表之間交換子密鑰,缺點是該協(xié)議會消耗大量帶寬。為此,提出隱私感知的通信協(xié)議,以降低帶寬需求。具體來說,電能表使用偽隨機數(shù)生成器(PRNG)在本地計算子密鑰。由此,電能表不需要在每輪數(shù)據(jù)采集前交換子密鑰,提高了帶寬和其他網(wǎng)絡(luò)資源的使用效率。
鑒于智能電能表數(shù)據(jù)的關(guān)鍵性,本文使用TCP以確??煽啃?。此外,使用FHE在TCP連接上傳輸數(shù)據(jù)包時,在接收端會產(chǎn)生分組重組問題。具體來說,TCP連接中的數(shù)據(jù)流由TCP報頭中的窗口尺寸(Window Size,WS)字段所控制。報文段的接收方表明愿意接收多少字節(jié)的數(shù)據(jù),該報文段的發(fā)送方所發(fā)送的數(shù)據(jù)不會超出WS字段中聲明的數(shù)值。由此對連接的每個方向的數(shù)據(jù)流進行調(diào)節(jié),以使得主機不會收到超出其處理能力的數(shù)據(jù)(即流控制)。但在該調(diào)節(jié)中,由于WS值的改變,可能會造成要傳輸?shù)姆纸M的一些部分處于不同報文段,特別對于較大的分組更是如此。這種情況常會發(fā)生在FHE系統(tǒng)中,因為較大的密文被分割為許多報文段。在接收端,需要從采集到的報文段中對分組進行重組,以將其與來自其他子電表的其他分組聚合。這種情況下,接收方(電表)不知道特定發(fā)送方所發(fā)送的分組的大小,因此無法確定從哪里切割字節(jié)流(包含多個報文段)。需要指出的是,當(dāng)子表有著不同數(shù)量的子表時,每個接收方的子表可能發(fā)送不同大小的分組。這就是分組重組問題。為克服該問題,本文提出一個協(xié)議,使接收方電表能夠知道其將要接收的分組總大小。該協(xié)議在TCP層之上的表示層中開發(fā),如圖1所示。提出的分組重組協(xié)議(PRP)使聚合電能表能夠從報文段中重組分組。該協(xié)議在發(fā)送端向分組添加了一個包含分組大小的最小報頭,并在接收端移除該報頭、讀取分組大小、收集該大小的字節(jié)以重組分組。
由此,一個PRP分組包含PRP報頭和應(yīng)用層分組,保持報頭最小化(4字節(jié)),其中包括了應(yīng)用層分組大小和電表標識符。接收方電表總是先接收第一個報文段,因為TCP確保了字節(jié)流的有序傳遞。由此,電表能夠通過其接收的第一個報文段中的報頭信息,知道整個分組大小。
PRP實現(xiàn)了兩個重要函數(shù):Send和Receiver。Send函數(shù)由應(yīng)用層調(diào)用,用于將電表的應(yīng)用層分組發(fā)送至另一個電表。當(dāng)接收緩沖區(qū)中存在分組時,傳輸層調(diào)用Receiver函數(shù)。算法1給出了Receiver函數(shù)的偽代碼。該算法首先檢查是否存在專用于分組來源(from)的緩沖區(qū)(buffer)。若不存在這樣的buffer,則按接收的報文段(segment)大小創(chuàng)建buffer,并將segment推入該buffer。若segment的大小超過buffer,則將超額字節(jié)放入字節(jié)數(shù)組residualBytes。若buffer已滿,則從buffer中的segments中創(chuàng)建應(yīng)用層分組(appPacket)。將appPacket發(fā)送至應(yīng)用層,并從bufferMap(即緩存映像,其中包含各個分段的可用性信息)中刪除專用于from的buffer。若residualBytes數(shù)組中存在任何數(shù)據(jù),則從residualBytes中創(chuàng)建分段resSegment,并調(diào)用Receiver(resSegment,from)函數(shù),以遞歸方式處理多余字節(jié)。
算法1PRP的接收方函數(shù)
1. buffer←bufferMap.RetrieveBuffer(from)
2.ifbuffer==nullthen
3. header←segment.GetPRPHeader()
4. buffer←CreateBuffer(header.GetPacketSize())
5.endif
6. residualBytes←buffer.Add(segment)
7.ifbuffer.IsFull()then
8. appPacket←CreateAppPacket(buffer)
9. ReportUpperLayer(appPacket)
10. bufferMap.RemoveBuffer(from)
11.ifresidualBytes.Size()≠0then
12. resSegment←CreateSegment(residualBytes)
13. Receiver(resSegment, from)
14.endif
15.endif
安全多方計算使用密鑰共享來實現(xiàn)數(shù)據(jù)聚合。密鑰共享與PHE&FHE的區(qū)別在于隱藏數(shù)據(jù)的方式不同。密鑰共享中,將1個密鑰分割為若干個子密鑰,并分發(fā)至一組參與者,以使得密鑰無法被重建(除非一定數(shù)量的參與者合謀)。而在PHE或FHE中,只要獲得私鑰,就可以對使用與該私鑰相對應(yīng)的公鑰加密的任何消息進行解密。
如2.1節(jié)所述,SMPC要求在所有節(jié)點間通信(需要交換n(n-1)條消息),這不但會增加通信復(fù)雜度,而且無法在AMI網(wǎng)絡(luò)拓撲中實施。需要對SMPC進行修改,使其可用于AMI網(wǎng)狀網(wǎng)絡(luò)拓撲,且不會顯著增加開銷。為此,本文參照了文獻[14]的理念。讓每組兩個電表協(xié)商一個共享密鑰(而非交換子密鑰),使用該密鑰作為偽隨機數(shù)字生成器(Pseudo Random Number Generator,PRNG)的初始輸入,在本地計算出將要從其他電表接收到的子密鑰。密鑰可在電表上預(yù)先加載,或使用Diffie-Hellman密鑰交換協(xié)議[15]進行私鑰共享。
圖2給出了協(xié)議的基本概況,其中:g表示一個多項式;priv表示電能表私鑰;pub表示電能表公鑰;Req()為網(wǎng)關(guān)請求函數(shù)。
圖2 本文協(xié)議的基本框架
(1)
由此可推導(dǎo)出多項式Fi(X):
(2)
根據(jù)式(2),電表i可通過將式中的X替換為xi,計算出該電表的子密鑰?,F(xiàn)在已計算出所有子密鑰,將其加在一起,并將結(jié)果發(fā)送至網(wǎng)關(guān)。網(wǎng)關(guān)在接收到的Fi數(shù)值上建立多項式。該多項式的常數(shù)項為所有ri值的總和。
由于SMPC的特性,每個電表計算子密鑰之和(包括由其他電表計算出的子密鑰),并直接將其發(fā)送至網(wǎng)關(guān)。網(wǎng)關(guān)驗證接收到的分組的簽名,并在子密鑰上推導(dǎo)出新的多項式,該多項式的常數(shù)項為電表讀數(shù)聚合值。最后,網(wǎng)關(guān)簽名并將聚合值發(fā)送至電力企業(yè)。
但AMI網(wǎng)絡(luò)為多跳網(wǎng)絡(luò),可在網(wǎng)絡(luò)節(jié)點之間定義分層關(guān)系。由此,本文利用了網(wǎng)絡(luò)內(nèi)處理,并對協(xié)議進行了修改,使其以多跳的方式工作。具體來說,本文作了以下改動:由網(wǎng)關(guān)計算的拉格朗日多項式可由每個電表計算得出。這些電表計算其子密鑰之和(圖2中的Fi),并將其乘以相關(guān)的拉格朗日多項式li(0)。然后,電表簽名并將其發(fā)送至其父電表,父電表驗證進行過乘法運算的子密鑰總和的簽名,并將其與自身經(jīng)過乘法運算的密鑰進行聚合。父電表對結(jié)果簽名,并發(fā)送至其自身的父電表。該過程一直持續(xù)至網(wǎng)關(guān),網(wǎng)關(guān)驗證做過乘法運算后的子密鑰總和,并將其與自身做過乘法的密鑰相聚合。最后,網(wǎng)關(guān)對結(jié)果簽名并發(fā)送至電力企業(yè)。使用該協(xié)議,可進一步降低網(wǎng)關(guān)處的總帶寬使用和計算開銷。
本文使用網(wǎng)絡(luò)模擬器ns-3對提出的協(xié)議進行了性能評價。創(chuàng)建大小為N的隨機多跳網(wǎng)絡(luò)拓撲,其中N∈{36,49,64,81,100}。對于每個拓撲,1個網(wǎng)狀節(jié)點作為網(wǎng)關(guān)/數(shù)據(jù)采集器,N-1個網(wǎng)狀節(jié)點則作為智能電能表,智能電能表每60 s向網(wǎng)關(guān)周期性地發(fā)送報告。假定智能電能表生成的數(shù)據(jù)大小為16位,該大小足以支持電能讀數(shù)。同時,假定網(wǎng)絡(luò)將全局時鐘同步以具有可靠的時間戳機制。對于每個N,本文建立了30個隨機網(wǎng)絡(luò)拓撲,并給出了這些隨機網(wǎng)絡(luò)拓撲的均值。對于TCP,設(shè)最大報文段(Maximum Socket Segmentation,MSS)長度為1 500個字節(jié)。
文獻[16]為SG AMI網(wǎng)絡(luò)定義了兩種數(shù)據(jù)聚合機制。本文實施了這兩種機制:端到端(End to End,EtoE)聚合和逐跳(Hip by Hip,HbyH)聚合。在HbyH聚合中,由網(wǎng)關(guān)電表得到網(wǎng)絡(luò)的最小生成樹,如圖3所示。網(wǎng)關(guān)電能表基于該聚合網(wǎng)絡(luò)樹,制定每個電能表的父子關(guān)系。網(wǎng)絡(luò)中的葉電表將其電表讀數(shù)周期性地發(fā)送至父電表,父電表將其自身讀數(shù)與從子電表接收到的讀數(shù)聚合在一起,其后將得出的數(shù)值再發(fā)送至其自身的父電表,持續(xù)該過程直至到達網(wǎng)關(guān)電表。最后,網(wǎng)關(guān)將其讀數(shù)與從子電表接收到的聚合讀數(shù)再進行聚合,并將結(jié)果發(fā)送至電力企業(yè)。在EtoE聚合中,所有電表直接將其讀數(shù)發(fā)送至網(wǎng)關(guān)。網(wǎng)關(guān)將自身讀數(shù)與從其他電表接收到的讀數(shù)進行聚合,并將結(jié)果發(fā)送至電力企業(yè)。
圖3 聚合網(wǎng)絡(luò)樹示意圖
本文仿真中,在EtoE和HbyH聚合中均采用了SV方案和SMPC協(xié)議,SV方案[17]屬于公鑰密碼族,包括密鑰生成、加密、解密、加法/乘法和重新加密函數(shù),生成密鑰對為公鑰和私鑰。其獨特之處在于公鑰的一部分被用于進行重新加密,且密鑰以KB為單位,遠大于傳統(tǒng)方案中以位為單位的密鑰。文獻[18]是SV方案的一種改進,主要優(yōu)化了計算復(fù)雜度和信道帶寬分配方面,其方案主體架構(gòu)不變。因此,SV方案已被證明在AMI網(wǎng)絡(luò)的隱私計算中具有較好的效果。對于EtoE和HbyH聚合,SV方案[17-18]和SMPC協(xié)議分別表示為SV-EtoE、SV-HbyH、SMPC-EtoE和SMPC-HbyH。本文將SV方案和SMPC協(xié)議的性能與利用Pallier PHE[10]的基準進行了比較,以分析FHE方法與PHE方法的性能差異:1) Paillier&EtoE聚合(Pai-EtoE),該測試中,利用Paillier密碼[10]系統(tǒng)對電表讀數(shù)進行加密,并直接發(fā)送至網(wǎng)關(guān);2) Paillier&HbyH聚合(Pai-HbyH),該測試中,利用Paillier密碼系統(tǒng)對電表讀數(shù)進行加密,并在中間電能表處進行數(shù)據(jù)聚合。
在性能評價中,本文使用了以下度量:
1) 分組投遞率(Packet Delivery Rate,PDR):傳遞到網(wǎng)關(guān)的分組數(shù)與SMs發(fā)送的分組數(shù)之間的比率。
2) 吞吐量(Through Put,TP):網(wǎng)關(guān)每秒接收到的總數(shù)據(jù)量。
3) 平均數(shù)據(jù)采集完成時間(Completion Time,CT):一輪數(shù)據(jù)采集中,在網(wǎng)關(guān)處接收所有SMs的所有電能讀數(shù)所耗費的平均時長。CT在應(yīng)用層測量,因此考慮到了密碼系統(tǒng)/拉格朗日插值的運算。
在評價PDR時僅考慮EtoE聚合機制,因為HbyH機制采用了網(wǎng)絡(luò)內(nèi)計算,從而降低了吞吐量,因此網(wǎng)關(guān)吞吐量無法與EtoE相比。
本文僅針對EtoE機制測量了PDR。如圖4所示,對于所有方法,在81節(jié)點拓撲之前,PDR幾乎都是100%。在64節(jié)點拓撲之后,Pai-EtoE和SV-EtoE方法的PDR出現(xiàn)非常小幅的下降。這是因為這些方法中生成的分組大小比SMPC-EtoE要大,數(shù)據(jù)越大,則發(fā)生擁塞的可能性越高??傮w來看,在提出的方法中增加電表數(shù)量,不會造成PDR性能的顯著降低。
通過吞吐量(TP)性能可分析所提方法的帶寬使用情況,目標是盡量減少帶寬使用,以容納其他類型的流量。圖5和圖6分別給出了EtoE和HbyH機制的吞吐量。總體來看,HbyH的TP值低于EtoE的TP值,這是因為在HbyH機制中,網(wǎng)關(guān)接收來自其子電表的讀數(shù);而在EtoE機制中,網(wǎng)關(guān)接收來自網(wǎng)絡(luò)中所有其他電表的讀數(shù)。
如圖5所示,EtoE的TP值會隨著網(wǎng)絡(luò)中電表數(shù)量的增加而上升。這些方法基于其生成的數(shù)據(jù)包的大小而產(chǎn)生TP,因此,SMPC-EtoE產(chǎn)生最小TP是符合預(yù)期的,因為與其他方法相比,SMPC-EtoE生成的數(shù)據(jù)包較小。
圖6給出了HbyH機制下的TP值。對于所有方法,36和49節(jié)點拓撲的TP值幾乎沒有變化,然后在81節(jié)點拓撲之前不斷下降,最后在100節(jié)點拓撲處開始上升。電能表直接將讀數(shù)發(fā)送至網(wǎng)關(guān),因此電能表數(shù)量和網(wǎng)絡(luò)內(nèi)分組投遞延遲是影響TP值的重要因素。隨著網(wǎng)絡(luò)中電能表數(shù)量的增加,網(wǎng)關(guān)接收聚合電能表讀數(shù)所需的時長也會增加,但網(wǎng)關(guān)的子電表的數(shù)量并沒有以相同比例增加,這就造成TP的下降。100節(jié)點拓撲時TP的增加是得益于網(wǎng)絡(luò)子電表數(shù)量的顯著增加。出于同樣原因,SMPC-HbyH再次得到了最低的TP值。
對于一些AMI應(yīng)用(例如需求/響應(yīng)),平均數(shù)據(jù)采集完成時間是一個重要度量。圖7和圖8分別給出了EtoE和HbyH機制的仿真結(jié)果。從中可以觀察到,對于所有方法,CT值均隨網(wǎng)絡(luò)規(guī)模增加而上升。此外還可發(fā)現(xiàn),SV方法無法以60 s的間隔進行電表讀數(shù)采集。因此,本文運行了另一個仿真,將電表讀數(shù)采集間隔設(shè)為120 s,以分析其對CT的影響。圖中使用了-60s和-120s后綴以進行區(qū)分。與SV-EtoE/HbyH-60s和SV-EtoE/HbyH-120s方法相比,Pai-EtoE/HbyH和SMPC-EtoE/HbyH完成一輪數(shù)據(jù)采集的時間更少,這是因為Paillier密碼系統(tǒng)和PRNG生成的數(shù)據(jù)包比SV方案要小得多。數(shù)據(jù)包增大,將導(dǎo)致TCP根據(jù)窗口大小將數(shù)據(jù)分割為較小的分組,這就增加訪問信道進行數(shù)據(jù)傳輸時的沖突概率,每次沖突都會增加退避等待時間,從而導(dǎo)致更長的采集完成時間。
圖7 EtoE機制下的CT值
圖8 HbyH機制下的CT值
與Pai-EtoE/HbyH相比,SMPC-EtoE/HbyH需要更多時間,因為電表需要從網(wǎng)關(guān)接收ck,以計算將要從網(wǎng)絡(luò)中其他電表接收到的子密鑰。該程序增加了SMPC-EtoE/HbyH的數(shù)據(jù)采集完成時間。在比較數(shù)據(jù)采集機制時,與HbyH機制相比,EtoE完成一輪采集的時間較長,這是因為大量電表要將讀數(shù)發(fā)送至同一個電表(即網(wǎng)關(guān))。同時將讀數(shù)發(fā)送至網(wǎng)關(guān)的電表,會造成EtoE機制的退避等待時間比HbyH機制更長。而在HbyH機制中,在中間聚合電表處對電表讀數(shù)進行聚合,與EtoE機制中采集電表數(shù)據(jù)的網(wǎng)關(guān)相比,這些聚合電表接收相對較少數(shù)量的電表讀數(shù),由此降低了訪問介質(zhì)的爭用,從而減少沖突。
如圖7和圖8所示,SV-EtoE/HbyH-120s方法能夠在120 s內(nèi)完成數(shù)據(jù)采集。在兩種機制下,60 s和120 s方法均表現(xiàn)出非常相似的趨勢,這是因為電表試圖同時發(fā)送讀數(shù),由此會造成相同的延遲。這會導(dǎo)致訪問介質(zhì)上的爭用是相同的,產(chǎn)生相同的退避時間。從36節(jié)點拓撲至64節(jié)點拓撲,SV-EtoE-60s/120s性能優(yōu)于SV-HbyH-60s/120s。這是因為HbyH機制在中間電表處采用了分組重組程序。PRP為用于EoE機制,因為加密電表讀數(shù)的大小是固定的,且對于每個電表是相同的。EtoE機制中數(shù)據(jù)聚合過程會造成網(wǎng)關(guān)處的計算開銷,在60節(jié)點拓撲之后,網(wǎng)絡(luò)計算開銷會超過分組重組程序的開銷。因此,在81節(jié)點和100節(jié)點拓撲中,SV-HbyH-60s/120s性能優(yōu)于SV-EtoE-60s/120s。
安全目標1:設(shè)mi,i∈{1,2,…,n}為電表i的讀數(shù)值,該數(shù)值在傳輸之前使用電力企業(yè)的公鑰(PKUC)進行了加密,即EncPKUC(mi)。
對細粒度電表數(shù)據(jù)進行網(wǎng)絡(luò)內(nèi)聚合,并將得出的數(shù)值(cGW)通過網(wǎng)關(guān)傳遞至電力企業(yè)。
即使對該數(shù)值(cGW)進行解密,也不可能從聚合數(shù)據(jù)中得到單個電表讀數(shù)。
這同樣適用于SMPC協(xié)議,因為所有運算均在隱藏數(shù)據(jù)上進行(電表讀數(shù)的分布式子密鑰)。在操作過程中,電力企業(yè)僅能得到所有電表讀數(shù)的總和。
安全目標2:智能電能表傳遞的隱藏數(shù)據(jù)包并不反映實際電表讀數(shù)。因此,即使竊聽者捕捉到數(shù)據(jù)包,其也無法正確推導(dǎo)出用戶活動。對于PHE或FHE,為得到實際讀數(shù),竊聽者需要知道僅為電力企業(yè)所持有的私鑰。對于SMPC協(xié)議,竊聽者需要知道目標智能電能表生成的作為其他智能電能表的子密鑰的n-1個256位隨機數(shù)。
安全目標3:由于本文使用的協(xié)議能夠在隱藏數(shù)據(jù)上執(zhí)行數(shù)據(jù)聚合,其不會泄漏實際數(shù)值(對執(zhí)行數(shù)據(jù)聚合的智能電能表來說也是如此)。
安全目標4:提出的SMPC協(xié)議基于網(wǎng)關(guān)發(fā)送的數(shù)據(jù)采集請求進行數(shù)據(jù)采集。由于所有智能電能表在傳輸數(shù)據(jù)包時使用身份驗證機制,即橢圓曲線數(shù)字簽名算法(ECDSA),可以通過驗證數(shù)字簽名來確認數(shù)據(jù)包發(fā)送方的身份,且無法在不知道創(chuàng)建簽名的私鑰的情況下偽造簽名。此外,修改數(shù)據(jù)包內(nèi)容會使得簽名失效,從而提供了數(shù)據(jù)完整性。即:
{EncPKUC(mi),SigSKi(EncPKUC(mi))}
安全目標5:由于所有數(shù)據(jù)包均包含時間戳,可以通過檢查數(shù)據(jù)包的時間戳(TS),來確認其是否為當(dāng)前數(shù)據(jù)采集輪的數(shù)據(jù)包。即:
{〈EncPKUC(mi),TS〉,SigSKi(〈EncPKUC(mi),TS〉)}
本文針對AMI網(wǎng)絡(luò)應(yīng)用了FHE和安全MPC,提出一個在表示層的協(xié)議,以克服分組重組問題,還提出SMPC協(xié)議,能夠利用HbyH機制執(zhí)行數(shù)據(jù)聚合。為了提供安全和隱私保護的通信環(huán)境,本文方法實現(xiàn)了幾個關(guān)鍵目標,如:所有消息均包含時間戳以防止重放攻擊,并通過簽名進行消息的身份驗證;通過讀數(shù)加密,或?qū)⒆x數(shù)分割為在多項式上計算的子密鑰,隱藏了實際電表讀數(shù),由此防止竊聽者捕獲用電信息。
實驗結(jié)果表明,在兩個數(shù)據(jù)采集機制中,SMPC協(xié)議消耗的信道帶寬均少于SV方案。SV的數(shù)據(jù)采集周期較長,使其在帶寬使用方面更易被接受。在平均數(shù)據(jù)采集完成時間上,在兩種數(shù)據(jù)采集機制下,SMPC協(xié)議均優(yōu)于SV方案。特別是在HbyH機制下,兩種方法的時間差異較大。