魏琴芳,張雙杰,胡向東,秦曉良
(1.重慶郵電大學通信與信息工程學院,重慶 400065;2.重慶郵電大學自動化學院,重慶 400065)
無線傳感器網絡(Wireless Sensor Networks,WSN)由大量資源有限的節點以自組織方式組成,用來監控目標環境,例如森林防火、污染監控、軍事應用等。由于傳感器網絡能量受限及以數據為中心的特點,數據融合技術逐漸得到了重視和廣泛應用。作為傳感器網絡的一項關鍵技術,數據融合在節省整個網絡的能量、提高收集數據的準確性以及提高收集數據的效率方面起著十分重要的作用[1]。但是,大多數情況下,WSN部署在無法控制的、危險性高的環境中。由于物理上的可接觸性,WSN更容易受到物理攻擊。攻擊者不僅可以捕捉和威脅到普通節點,而且還可以控制融合節點,如果融合節點遭到攻擊,那么,得到的數據將可能無效,甚至有害[2]。因此,安全是WSN數據融合研究中最重要的問題之一。
在WSN中,數據融合安全主要包括數據的機密性和完整性。機密性是為了防止網絡中傳輸的數據被偷聽;完整性則保證數據在傳輸過程中沒有被篡改。為了實現安全的數據融合,研究者提出了各種方案來保證數據融合結果的安全性,它可以分為基于逐跳加密傳輸的安全數據融合[3-4]和基于端到端加密傳輸的安全數據融合[5-8]。
端到端的加密方式由于其可以保證數據在融合節點的機密性,降低數據融合節點的計算開銷,減少網絡延時,受到了越來越多的關注;缺點是無法檢測融合數據的完整性。實現端到端加密傳輸的一個直接且有效的辦法就是使用同態加密算法。同態加密算法允許融合節點在不進行解密操作的情況下直接對密文進行運算,運算結果發送至基站再進行解密,得到的最終結果跟直接對明文進行運算的結果一樣[9]。
文獻[5]提出了一種基于流密鑰的CMT(Castelluccia C,Myklentn E,Tsudik G)同態加密算法,它直接采用移位密碼進行加密,其加密解密方法簡單;但算法存在很突出的問題,即為了成功解密需要發送所有參與融合節點的ID,會造成很大的開銷;作者指出,即使只有10%的節點沒有響應,方案的總開銷也會增加2倍以上,而且網絡開銷分布極不均勻。針對CMT算法的不足,文獻[10-11]提出了兩種不同的方案對CMT算法進行改進,試圖減少ID傳輸所帶來的額外開銷。文獻[10]提出一種AIE(Aggregation of Interleaved Encryption)機制,算法引入t值來減少ID的傳輸開銷,但其安全性也隨之下降。文獻[11]提出一種評估機制來減少ID傳輸的開銷,作者提出3種思路,但均過于理想化,沒有實際意義。SEEDA[6](Secure End-to-End Data Aggregation)同樣使用CMT算法進行加密,并提出減少ID傳輸的方法;算法要求所有節點都要進行信息發送,若節點不響應基站查詢,則將其感應數據設為0,然后進行發送;但是如果網絡中未響應節點比例過高,則造成較大的額外開銷。且以上方案均不能保證融合結果的完整性。
與CMT采用對稱密碼體制為基礎相反,文獻[12]比較了幾種公鑰同態加密算法,認為ECOU(Elliptic Curve Okamoto-Uchiyama)和 ECEG(Elliptic Curve ElGamal)這兩種基于橢圓曲線的加密算法具有較少的計算開銷及較短的明密文,非常適合于無線傳感器網絡;文獻[7]同樣提出基于橢圓曲線密碼算法的安全數據融合機制,它允許對密文進行N次加法操作和1次乘法操作,增加了對密文的可操作性。但算法只能保證數據的機密傳輸,無法檢測融合結果的完整性。文獻[8]在保證數據機密性的同時,設計了滿足同態性質的數字簽名來檢查融合結果的完整性;但其加密和數字簽名均使用基于橢圓曲線密碼的非對稱密鑰,加密解密開銷很大。
文獻[13]比較了適用于WSN的3種同態加密算法 DFPH(Domingo-Ferrer Privacy Homomorphism)、CMT、ECEG[12]的優點及不足,指出基于流密鑰的CMT算法是最具有發展前景的同態加密機制之一;并提出了相應的改進措施,其中包括使用同態消息認證碼的思想,但文中并沒有給出產生同態消息認證碼的方法。
針對上述研究的不足,本文在采用CMT加密的基礎上,通過設計基于離散對數的同態消息認證碼,實現對數據的完整性檢驗;同時提出了一種改進的ID傳輸措施來有效減少通信開銷。仿真及性能對比分析表明該方案能夠保障融合數據的機密性和完整性,并且能夠有效減少ID傳輸所帶來的額外開銷。
同態加密技術允許直接對密文進行運算。考慮到加密和解密操作,同態加密非常適合于無線傳感器網絡,它具有如下性質:

式(1)中,Enc(a)表示用同態加密密鑰對明文a進行加密(ENC為Encyption簡寫),⊕、?指分別對明密文進行某種運算。
1.1.1 CMT 同態加密算法
CMT是一種基于流密鑰的加密方法,每個節點i和基站共享密鑰種子Ki及偽隨機序列生成器。由于其易于執行的特點,非常適合于資源有限的WSN;唯一的不足是為了成功解密,必須發送所有響應節點的ID,會造成較大的開銷。下面簡單介紹CMT算法。
參數:大整數M
加密:
(1)明文m∈[0,M-1];
(2)隨機生成流密鑰k∈[0,M-1];
(3)密文c=Enc(m,k,M)=(m+k)modM。
解密:m=Dec(c,k,M)=(c-k)modM。
融合:
對于c1=Enc(m1,k1,M),c2=Enc(m2,k2,M),則c1,2=c1+c2=Enc(m1+m2,k1+k2,M)
解密時,有 Dec(c1+c2,k1+k2,M)=m1+m2。
其中mod表示取模運算。Enc(m,k,M)表示用密鑰k對明文m進行加密,Dec(c,k,M)表示對密文c進行解密(Decyption)。顯然,CMT機制具有加法同態的性質。
如果n個不同的密文ci相加,則M必須大于,否則無法保證融合結果的正確性。實際應用中,若p=max(mi),則M可以選為M=2「log2(p·n)?。
1.1.2 基于離散對數的加法同態加密算法
考慮冪函數F=gx,滿足F(x1+x2)=F(x1)×F(x2),由于gx+y=gx×gy。對其進行變換:假設感應信息為d,則d→gdmodp,p為一個素數,g為乘群Gp的一個生成元。如對于d1、d2進行同態加密,有

式(2)~式(4)中,E(d1)表示對d1進行加密。由式(2)、式(3)、式(4)可得E(d1+d2)=E(d1)×E(d2),故基于離散對數的同態加密算法具有加法同態的性質。
使用§1.1.2提出的基于離散對數的同態加密算法來設計滿足加法同態性質的消息認證碼。每個節點s和基站共享m個密鑰種子ksi(i=1,2,…,m),如ks={ks1,ks2,…,ksm}。

通常節點ID用2字節明文表示,記為Sensor ID。采用文獻[15]中設計的方法來表示節點的另一種ID,記為Real ID。它使用固定長度的簽名來表示,且每個節點的ID只有一位為高位(1)。各節點共享簽名生成算法。2字節的Real ID如表1所列。

表1 2 byte Real ID表示方法
不同子樹內的兩個節點可以具有相同的Real ID,基站能區分它們。Real ID可以使用按位異或運算來進行融合。
葉節點直接發送自己的Sensor ID給其直接父節點。當中間節點向父節點發送參與融合節點的ID時,首先確定其收到融合節點的ID的類型(連接的Sensor ID或融合的Real ID)。若為連接的Sensor ID,則將連接后的Sensor ID(如果自己參與融合,則長度增加)與自己的Real ID長度進行比較:若其長度小于Real ID,則將連接后響應節點的Sensor ID發送至父節點,否則將融合后的Real ID發送至父節點;若為融合的Real ID,則直接將融合后的Real ID發送至父節點。即發送連接后的Sensor ID和Real ID中較短的一個,若相等,則選擇發送融合的Real ID。
在先前的ID傳輸機制中,中間節點只是簡單將參與融合節點的Sensor ID進行連接,越接近數據融合樹的上層,節點需要傳輸ID的數目就越多,使得整個網絡負載極不均衡,上層節點的能量會很快耗盡繼而影響網絡壽命。研究證實,傳感器網絡失效時,大部分節點仍具有較高的能量[16]。在本文的機制中,由于同一子樹內的節點具有相同長度的Real ID,且每比特可以攜帶一個節點的ID。上層樹節點傳送ID的最大長度也僅僅為Real ID的長度,減少了由ID傳輸帶來的能量消耗,有助于延長網絡壽命。若將其用于分簇網絡,則減少ID傳輸開銷的效果會更加明顯。
1.4.1 網絡拓撲及相關符號標記
假設一個無線傳感器網絡,基站足夠安全且不能被俘獲。節點隨機部署后通過自組織的方式構成以基站為根節點的靜態樹型網絡。本文使用如下標記便于后續描述:
BS:基站
M:節點和基站共享的大整數;
p:節點和基站共享的素數;
g:乘群Gp的生成元;
Ks:節點s與基站共享的密鑰種子,用于產生隨機序列;
ksi(i=1,2,…,m):節點s與基站共享的密鑰種子,m為其個數,通過時間片輪轉來選擇,產生消息認證碼;
IDs:節點s的ID,在網絡中獨一無二;
ds:節點s感應的數據;
Enc(d):用CMT算法加密消息d;
MAC(g,km,d,p):對消息d生成消息認證碼;
其中,M、p、g和都在節點部署到目標區域前存儲在內存中。各節點s和基站共享密鑰種子Ks及偽隨機序列生成器。
1.4.2 安全數據融合機制
這里主要討論求和融合函數SUM,因為其它融合函數如均值、標準差、方差等都可以由SUM得出。


證明不失一般性,我們假設只有葉節點a,b,c響應基站查詢,則節點a將其數據da進行加密得:
ca=Enc(da)=(da+ka)modM;
同理,節點b將其數據db進行加密得:
cb=Enc(db)=(db+kb)modM;
節點c將其數據dc進行加密得:
cc=Enc(dc)=(dc+kc)modM;
父結點對密文進行數據融合cdata=ca+cb+cc,而后發送cdata至基站。
同時,響應節點a對其感應數據da生成消息認證碼:

同理,節點b對其感應數據db生成消息認證碼:

節點c對其感應數據dc生成消息認證碼:


首先,由于節點和基站共享大素數M,密鑰種子K,及偽隨機序列生成器。基站將收到的融合數據解密得到 data;即 data=Dec(cdata)=da+db+dc。同時,基站將收到融合的消息認證碼MAC(agg)存儲。
其次,由于節點和基站共享,基站由收到的融合后響應節點的ID以及參與融合節點的值,可得出參與融合節點的值之和

消極攻擊指敵人只對傳輸的數據進行監聽,包括密文分析和已知明文攻擊。由于數據進行加密傳輸,且在融合節點不進行解密,故算法能有效地防止偷聽,且融合信息不泄露給融合節點,保證融合信息在中間節點的機密性。
這種類型的攻擊指敵人能夠擾亂通信,比如捕獲、毀壞、篡改或者重發數據包等,以欺騙用戶接收非法值,這種攻擊對于安全數據融合來說是最危險的。
2.2.1 重放攻擊
重放攻擊指惡意節點重發先前發送過的數據包。由于本文采用CMT流密鑰進行加密,對每個數據使用新的密鑰,即“一次一密”,若敵人重放數據包,則會導致MAC檢查失敗,故所提出的算法能夠有效地防止重放攻擊。
2.2.2 節點捕獲攻擊
若節點被敵人捕獲,敵人就獲取了此節點的所有信息,包括g、p、M及此節點的K、k,但是由于不同節點部署了不同的K和k,故不能得到其余節點的其他任何信息。
2.2.3 惡意數據注入
若節點被敵人捕獲,敵人通過節點注入虛假信息,通常這種攻擊很難被檢測出來。相反,若數據在傳輸途中被篡改或者融合節點被捕獲導致融合信息被篡改,則可以通過同態的消息認證碼檢測出來,并對錯誤融合數據進行排除,保證融合結果的準確性。
下面對本文提出的算法與典型的CMT及AIE算法的通信開銷進行比較。三種算法均使用基于流密鑰的CMT機制加密,主要區別在于本文使用新提出的ID傳輸機制進行響應節點ID的發送,而CMT則發送響應節點或未響應節點兩者中較少的部分,AIE則根據t值來進行ID的傳輸。
假設數據融合樹形成以基站為根節點的完全三叉樹,共有5層(基站為第0層),包括363個節點。設AIE算法的t為3。圖1為響應節點比例(假設響應節點全部為葉節點)與要傳送ID的數目在三種方案下的比較。

圖1 靜態樹型結構傳輸ID數目在三種方案中的比較
由圖1可知,當響應節點比例較高時,即使在最壞情況下,本文提出的ID傳輸機制相對于CMT機制來說也能減少20%-30%的ID傳輸開銷,且優于AIE機制,從而節省網絡能量。
分簇的思想是通過簇頭對簇內節點間的相關信息融合及轉發機制減少數據的傳輸量和距離,進而降低通信能量,達到網絡節能的目的[17]。假設1050個節點的動態分簇網絡,包含50個簇頭,每個簇內有20個節點。簇頭只進行數據融合并發送數據到基站,并不進行數據采集。由于AIE不適用于分簇網絡,故只將本文提出的ID傳輸機制與CMT機制進行比較。圖2為響應節點比例與傳輸ID的數目在兩種方案下的比較。

圖2 分簇結構傳輸ID數目在兩種方案下的比較
由圖2可知,隨著響應節點比例的增加,本文提出的方案所需要傳輸的ID數目幾乎不變;當響應節點比例為50%時,減少了約85%的ID傳輸開銷,極大地節省了傳輸ID所消耗的能量。同時,減少數據包的長度能夠減少信息干擾,從而減少丟包率,保證信息的可靠傳輸。
安全數據融合能夠保證融合數據的機密性和完整性,在安全敏感的傳感器網絡應用中具有重要的實用價值。本文使用輕量級的加密機制來保證數據機密性,通過構造同態消息認證碼來檢測融合結果的完整性。安全性分析表明該算法能夠實現對融合數據機密性和完整性的雙重保障;并且能夠減少ID傳輸的數目,減少ID傳輸所帶來的額外開銷,有助于延長網絡壽命。
[1]孫利民,李建中,陳渝,等.無線傳感器網絡[M].北京:清華大學出版社,2005.
[2]羅蔚,胡向東.無線傳感器網絡中一種高效的安全數據融合協議[J].重慶郵電大學學報(自然科學版),2009,21(1):110-114.
[3]Przydatek B,Song D,Perrig A.SIA:Secure Information Aggregation in Sensor Networks[C]//Proc of SenSys 03.Los Angeles:ACM Press,2003:255-265.
[4]Yang Y,Wang X,Zhu S,et al.SDAP:A Secure Hop-by-Hop Data Aggregation Protocol for Sensor Networks[C]//Proc of the ACM MOBIHOC 06.Florence:ACM Press,2006:356-367.
[5]Castelluccia C,Myklentn E,Tsudik G.Efficient Aggregation of Encrypted Data in Wireless Sensor Networks[C]//The Second Annual International Conference on MobiQuitous 2005.San Diego:IEEE Computer Society,2005:109-117.
[6]Poornima A S,Amberker B B.SEEDA:Secure End-to-End Data Aggregation in Wireless Sensor Networks[C]//2010 Seventh International Conference On Wireless And Optical Communications Networks(WOCN),Colombo:IEEE Press,2010:1-5.
[7]Bahi J M,Guyeux C,Makhoul A.Efficient and Robust Secure Aggregation of Encrypted Data in Sensor Networks[C]//2010 Fourth International Conference on Sensor Technologies and Applications(SENSORCOMM),Venice/Mestre:IEEE Press,2010:472-477.
[8]Albath J,Madria S.Secure Hierarchical Data Aggregation in Wireless Sensor Networks[C]//Proc of the WCNC 2009.Budapest:IEEE Press,2009:1-6.
[9]劉鑫芝.無線傳感器網絡安全數據融合的研究[J].計算機與現代化,2010(5):151-155.
[10]Castelluccia C.Securing Very Dynamic Groups and Data Aggregation in Wireless Sensor Networks[C]//IEEE Internatonal Conference on Mobile Adhoc and Sensor Systems(MASS).Washington DC:IEEE Computer Society Press,2007:1-9.
[11]Taiming Feng,Chuang Wang,Wensheng Zhang,et al.Confidentiality Protection for Distributed Sensor Data Aggregation[C]//The 27th Conference on Computer Communications(INFOCOM).New York:IEEE Communications Society Press,2008:56-60.
[12]Mykletun E,Girao J,Westhoff D.Public Key Based Cryptoschemes for Data Concealment in Wireless Sensor Networks[C]//Proc of the ICC 2006.Istanbul:IEEE Press,2006:2288-2295.
[13]Peter S,Piotrowski S,Langendoerfer R.On Concealed Data Aggregation for WSNs[C]//Proc of the CCNC 2007.Las Vegas:IEEE Press,2007:192-196.
[14]Domingo-Ferrer J.A Provably Secure Additive and Multiplicative Privacy Homomorphism[C]//Proc of the 5th International Conference on Information Security(ISC).Sao Paulo:ISC,2002:471-483.
[15]Bista R,Yoo H K,Chang J W.Achieving Scalable Privacy Preserving Data Aggregation for Wireless Sensor Networks[C]//Proc of the CIT 2010.Bradford:IEEE Press,2010:1962-1969.
[16]王海員,石為人.面向動態傳感器網絡的數據匯集算法[J].傳感技術學報,2011,24(1):116-121.
[17]胡向東,蔡東強.無線傳感器網絡安全加密成簇算法的設計及研究[J].重慶郵電大學學報(自然科學版),2009,21(3):421-424.