吉 佳,溫巧燕,張 華
(北京郵電大學 網(wǎng)絡(luò)與交換技術(shù)國家重點實驗室,北京100876)
無線傳感器網(wǎng)絡(luò)(WSNs)是一個通過傳感器感知物理世界的自組織網(wǎng)絡(luò)[1]。由于傳感器受到電量限制,其收集的大量數(shù)據(jù)需要通過聚合減小能耗[2]。對于位置[3]、時間[4]和壓力感知[5]等敏感信息,由于數(shù)據(jù)傳遞過程中存在諸多不安全因素,如數(shù)據(jù)被截獲、篡改等,易造成數(shù)據(jù)泄露、數(shù)據(jù)不完整等問題。目前有文獻[6~9]致力于解決無線傳感器網(wǎng)絡(luò)中數(shù)據(jù)聚合問題。
He W 等 人 提 出 的CPDA(cluster-based private data aggregation)協(xié)議[1]基于分簇思想并利用多項式代數(shù)性質(zhì)聚合數(shù)據(jù),該協(xié)議計算量高且不能保證數(shù)據(jù)完整性。針對上述問題,He W 等人提出了iCPDA 協(xié)議[10],該協(xié)議基于多方安全計算和簇內(nèi)監(jiān)督,但其主要缺點是通信量大。
Guo Hengzhi[10]提出了一種減小CPDA 計算和通信開銷的協(xié)議,通過代入消元法聚合數(shù)據(jù)。Yao Jianbo 等人提出的DADPP(data aggregation different privacy-levels protection)[12]根據(jù)不同數(shù)量的節(jié)點對數(shù)據(jù)隱私保護的不同需求而進行聚合。以上兩篇文獻均不能保證數(shù)據(jù)完整性。
本文提出一種基于分簇的數(shù)據(jù)聚合機制,能夠有效降低傳感器計算和通信的耗能,同時保護數(shù)據(jù)的隱私性和完整性。在簇內(nèi)聚合階段,節(jié)點使用計算量、通信量均較小的聚合方式將分片后的數(shù)據(jù)聚合。在簇間傳輸階段,每個簇的副簇首監(jiān)督該簇的簇首向上游簇的簇首傳遞的數(shù)據(jù)是否被篡改,篡改時進行真實值替換。
本文將無線傳感器網(wǎng)絡(luò)建模為連通圖G(V,E),其中頂點v(v∈V)代表該無線傳感器網(wǎng)絡(luò)中的傳感器節(jié)點;邊e(e∈E)表示傳感器節(jié)點之間的無線鏈路。記無線傳感器網(wǎng)絡(luò)中的傳感器節(jié)點個數(shù)為N=|V|。
基于分簇的數(shù)據(jù)聚合機制能夠在保證隱私數(shù)據(jù)完整性的同時降低數(shù)據(jù)聚合階段傳感器計算和通信的耗能。
簇內(nèi)數(shù)據(jù)聚合的密鑰采用CPDA 的密鑰生成方式。無線傳感器網(wǎng)絡(luò)中每個節(jié)點從包含K 個密鑰的密鑰池中隨機選取k 個密鑰,含有相同密鑰的2 個節(jié)點則建立一條安全的通信鏈路。
簇間數(shù)據(jù)傳輸進行身份驗證所需非對稱密鑰的建立過程如下:
1)副簇首選取2 個不相同的大素數(shù),p 和q,計算n=p×q 和φ(n)=(p-1)(q-1),選取1 個隨機數(shù)d(1 <d <φ(n)),保證d 與φ(n)互質(zhì),由方程ed mod(p-1)(q-1)=1 計算出e。
2)副簇首將(n,d)作為公鑰發(fā)送給上游簇的簇首,將(p,q,e)作為私鑰自己保存。
簇的建立采用CPDA 中簇的建立方式:服務(wù)器發(fā)出查詢語句HELLO,每個收到消息的傳感器節(jié)點有pc的概率成為簇首。若一個節(jié)點成為簇首,它將HELLO 轉(zhuǎn)發(fā)給鄰居節(jié)點;否則,該節(jié)點發(fā)送JOIN 隨機加入某一個簇成為其成員。反復該過程即可將所有節(jié)點分成若干個簇。
本文做出如下假設(shè):每個節(jié)點選1 個與其他節(jié)點不同的非零數(shù)字k(1≤k≤N)作為自身標識,為網(wǎng)絡(luò)中傳感器的個數(shù)。以一個含有4 個傳感器節(jié)點的簇為例:節(jié)點A 為簇首,節(jié)點B 為副簇首,節(jié)點C 和節(jié)點D 為簇內(nèi)成員。圖1描述了簇內(nèi)數(shù)據(jù)聚合階段的消息傳輸過程。
圖1 簇內(nèi)消息傳遞過程Fig 1 Message transmitting process within cluster
1)節(jié)點A,B,C,D 首先在簇內(nèi)廣播自己的k:kA,kB,kC,kD,然后分別將自己的隱私數(shù)據(jù)a,b,c,d 隨機分成n-1 片(n 是一個簇內(nèi)節(jié)點的總數(shù))。這里n=4,即,a=a1+a2+a3,b=b1+b2+b3,c=c1+c2+c3,d=d1+d2+d3。
2)節(jié)點A 計算
同樣,節(jié)點B,C,D 分別計算
3)節(jié)點A 使用其與節(jié)點B 的共享密鑰KAB加密VA-B,將E(VA-B,KAB)發(fā)送給節(jié)點B。同樣的,A 將E(VA-C,KAC)發(fā)送給節(jié)點C;B 將E(VB-A,KAB)和E(VB-C,KBC)分別發(fā)送給A 和C;C 將E(VC-A,KAC)和E(VC-B,KBC)分別發(fā)送給A和B;節(jié)點D 將E(VD-A,KAD),E(VD-B,KBD)和E(VD-C,KCD)分別發(fā)送給A,B 和C。其中,Kij表示節(jié)點i 和j 之間的共享密鑰。
4)A,B,C 分別計算RA,RB,RC,隨后C 將E(RC,KBC)發(fā)送給B,于是可得
5)B 計算RB+RC,并將E((RB+RC),KAB)發(fā)送給A,A將E(RA,KAB)發(fā)送給B,則有
由于kA,kB,kC和kD均已知,簇首A 在不清楚b,c,d 的值分別是多少的情況下,可以通過RA與RB+RC計算出a+b+c+d 的值,同樣,副簇首B 也可以得出a+b+c+d的值。
基站的最終目的是獲得正確的數(shù)據(jù)聚合結(jié)果,而不是獲得被攻擊節(jié)點的編號和該節(jié)點應該發(fā)送的真實中間數(shù)據(jù)聚合值。這些真實的中間數(shù)據(jù)聚合值應該被用來參與到上游簇的簇內(nèi)數(shù)據(jù)聚合中。本文通過下游簇的副簇首與上游簇的簇首通信的方式來保證數(shù)據(jù)完整性。
如圖2 所示,節(jié)點A,B,C,D 組成一個上游簇,A 是簇首,B 是副簇首;節(jié)點E,F(xiàn),G,H 和I,J,K,L 分別組成2 個下游簇。E 和I 分別為這2 個簇的簇首,F(xiàn) 和J 分別為這2 個簇的副簇首。以其中一個下游簇為例,副簇首F 監(jiān)聽簇首E 傳給A 的中間數(shù)據(jù)聚合值,如果與F 所掌握的值相同,F(xiàn) 無任何動作;否則,F(xiàn) 立即與A 通信,將正確的中間數(shù)據(jù)聚合值發(fā)送給A,A 通過數(shù)字簽名驗證F 的身份無誤后,使用F 發(fā)送的中間數(shù)據(jù)聚合值進行下一步的簇內(nèi)數(shù)據(jù)聚合。
圖2 簇間消息傳遞過程Fig 2 Message transmitting process between clusters
圖3 描述了數(shù)字簽名生成過程。
圖3 數(shù)字簽名生成過程Fig 3 Process of generation of digital signature
1)F 通過Hash 函數(shù)h 將中間數(shù)據(jù)聚合值DAV 生成消息摘要x=h(DAV)。
2)F 使用私鑰eF簽名x,生成數(shù)字簽名y=sigeF(x)=xeFmod n,其中,n 為F 選用的2 個不同的大素數(shù)p 和q 的乘積。sigeF(x)代表F 的一個依賴于私鑰eF對消息摘要x簽名的簽名算法。
3)F 使用其與A 的共享密鑰KAF加密(DAV,y),生成z=EKAF(DAV,y),發(fā)送給A。
圖4 描述了數(shù)字簽名驗證過程。
圖4 數(shù)字簽名驗證過程Fig 4 Process of verification of digital signature
1)A 接收到z'后(z 的值有可能被攻擊者篡改,這里用z'來表示A 接收到的值),使用KAF解密,得到DAV'和y',并計算x'=h(DAV')。
2)A 使用F 的公開驗證函數(shù)x=ydF(mod n)來驗證verdF(x',y')=true 是否成立,若成立,則說明F 通過了身份認證,且z'=z,DAV'=DAV,y'=y。verdF(x,y)為驗證簽名是否有效的公開驗證算法,若有效,則返回該簽名為true;否則,返回false。
實驗設(shè)定一個在400 m×400 m 的區(qū)域內(nèi)隨機分布600 個傳感器節(jié)點的無線傳感器網(wǎng)絡(luò)。數(shù)據(jù)傳輸有效范圍是50 m。數(shù)據(jù)傳輸速率是1 Mbps。根據(jù)TinyOS[13]系統(tǒng)的要求,數(shù)據(jù)包頭部占56 bits,支持的最大數(shù)據(jù)負載是232 bits。
圖5 數(shù)據(jù)隱私保護性能對比Fig 5 Comparison of performance of data privacy protection
本節(jié)使用Matlab 分別對本文機制、CPDA 和iCPDA 的簇內(nèi)數(shù)據(jù)聚合過程仿真,計算一個簇的簇內(nèi)數(shù)據(jù)聚合耗時的均值,實驗運行105次。由圖6 得,在簇內(nèi)節(jié)點個數(shù)相同時,本文機制的計算時間比CPDA 和iCPDA 少,這是因為該機制能減少節(jié)點的計算量和加解密次數(shù)。
圖6 計算耗時對比Fig 6 Comparison of time-consuming of calculation
本文在OMNeT 基礎(chǔ)上,使用基于TAG[5]的數(shù)據(jù)聚合組件分別實現(xiàn)CPDA、iCPDA 和本文機制。通信開銷的衡量標準為數(shù)據(jù)聚合過程中進行通信的數(shù)據(jù)比特總數(shù)。圖7中數(shù)據(jù)為三種機制分別運行70 次的平均結(jié)果。由圖7 得,本文機制在通信量上要遠小于CPDA 和iCPDA;隨著pc增大,通信開銷的增長速率比CPDA 和iCPDA 緩慢。這是由于本文機制將節(jié)點數(shù)據(jù)分片,從而減少鏈路負載,同時簇內(nèi)數(shù)據(jù)聚合方法較另外兩種機制簡化了步驟。
圖7 數(shù)據(jù)通信量總和對比Fig 7 Comparison of total of data traffic
實驗在OMNet 基礎(chǔ)上分別對本文機制、CPDA 和iCPDA 在數(shù)據(jù)完整性方面進行評估。測評標準為基站最終得到的數(shù)據(jù)聚合值與實際的數(shù)據(jù)聚合值之比。1 代表理想狀態(tài)下數(shù)據(jù)沒有丟失、被篡改的情況,但實際情況中,數(shù)據(jù)的丟失是難以避免的。由圖8 得,本文機制在數(shù)據(jù)完整性保護方面比CPDA 和iCPDA 更為完善。副簇首監(jiān)督機制使得上游簇的簇首獲得正確的中間數(shù)據(jù)聚合值,并進行后續(xù)聚合計算,保障基站能夠最終獲得有價值的完整數(shù)據(jù)聚合值。
圖8 數(shù)據(jù)完整性對比Fig 8 Comparison of data integrity
無線傳感器網(wǎng)絡(luò)中傳感器電量消耗快、數(shù)據(jù)隱私性和完整性得不到較好保護等問題不容忽視。針對以上問題,本文提出了一種在無線傳感器網(wǎng)絡(luò)中基于分簇的數(shù)據(jù)聚合機制。該機制首先運用代數(shù)方程進行數(shù)據(jù)聚合,較好地保護了數(shù)據(jù)隱私性,同時降低傳感器節(jié)點在計算和通信方面的能耗,延長傳感器存活時間;采用副簇首監(jiān)督機制保障數(shù)據(jù)的完整性,使得基站能夠最終獲得有價值的數(shù)據(jù)聚合值。實驗表明:本文提出的數(shù)據(jù)聚合機制能夠有效降低傳感器能耗,并保障數(shù)據(jù)的隱私性和完整性。
[1] He W,Liu X,Nguyen H,et al.Pda:Privacy-preserving data aggregation in wireless sensor networks[C]∥26th IEEE International Conference on Computer Communications,INFOCOM 2007,Anchorage,Alaska,USA:IEEE,2007:2045-2053.
[2] Ozdemir S,?am H.Integration of false data detection with data aggregation and confidential transmission in wireless sensor networks[J].IEEE/ACM TON,2010,18(3):736-749.
[3] Xi Y,Schwiebert L,Shi W.Preserving source location privacy in monitoring-based wireless sensor networks[C]∥20th International Parallel and Distributed Processing Symposium,IPDPS 2006,Rhodes Island,Greece:IEEE,2006:8.
[4] Kamat P,Xu W Y,Trappe W,et al.Temporal privacy in wireless sensor networks[C]∥Proceedings of the 27th International Conference on Distributed Computing Systems,Toronto,Ontario,Canada:IEEE,2007:23.
[5] Sivaraj R,Thangarajan R.Location and time-based clone detection in wireless sensor networks[C]∥4th Communication Systems and Network Technologies International Conference,CSNT 2014,Bhopal,India:IEEE,2014:133-137.
[6] Krishna M B,Vashishta N.Energy efficient data aggregation techniques in wireless sensor networks[C]∥5th International Conference on Computational Intelligence and Communication Networks,CICN 2013,Mathura,India:IEEE,2013:160-165.
[7] Jose J,Princy M.PEPPDA:Power efficient privacy preserving data aggregation for wireless sensor networks[C]∥International Conference on Emerging Trends in Computing,Communication and Nanotechnology,ICE-CCN 2013,Tirunelveli,India:IEEE,2013:330-336.
[8] Bista R,Yoo H K,Chang J W.A new sensitive data aggregation scheme for protecting integrity in wireless sensor networks[C]∥10th Computer and Information Technology,CIT 2010,Bradford,United Kingdom:IEEE,2010:2463-2470.
[9] Tang X,Xu J.Extending network lifetime for precision-constrained data aggregation in wireless sensor networks[C]∥INFOCOM 2006,Barcelona,Catalunya,Spain:IEEE,2006:1-12.
[10]He W,Liu X,Nguyen H,et al.A cluster-based protocol to enforce integrity and preserve privacy in data aggregation[C]∥Proceedings of the 29th IEEE International Conference on Distributed Computing Systems Workshops,Washington DC:IEEE Computer Society,2009:14-19.
[11]Guo Hongzhi.A modified scheme for privacy preserving data aggregation in WSNs[C]∥Proc of the 2nd International Conference on Consumer Electronics,Communications and Networks,Yichang,China:IEEE,2012:790-794.
[12]Yao Jianbo,Wen Guangjun.Protecting classification privacy data aggregation in wireless sensor networks[C]∥Proc of the 4th International Conference on Wireless Communications,Networking and Mobile Computing,DaLian,China:IEEE,2008:1-5.
[13]Karlof C,Sastry N,Wagner D.TinySec:A link layer security architecture for wireless sensor networks[C]∥Proceedings of the 2nd International Conference on Embedded Networked Sensor Systems,Baltimore,MD,USA:ACM,2004:162-175.
[14]Madden S,F(xiàn)ranklin M J,Hellerstein J M,et al.TAG:A tiny aggregation service for Ad-Hoc sensor networks[J].ACM SIGOPS Operating Systems Review,2002,36(SI):131-146.