孫子文,吳夢(mèng)蕓,白 勇
(1.江南大學(xué)物聯(lián)網(wǎng)工程學(xué)院,江蘇 無錫 214122;2.無錫宏創(chuàng)電子有限公司,江蘇 無錫 214072)
?
抗延遲攻擊的WSN時(shí)間同步方法*
孫子文1*,吳夢(mèng)蕓1,白 勇2
(1.江南大學(xué)物聯(lián)網(wǎng)工程學(xué)院,江蘇 無錫 214122;2.無錫宏創(chuàng)電子有限公司,江蘇 無錫 214072)
為抵抗延遲攻擊,保證時(shí)間同步安全正常運(yùn)行,提出WSN安全時(shí)間同步算法。算法采用梯度時(shí)間同步,同時(shí)修正時(shí)間率和本地時(shí)間,提高同步精度;采用最小二乘估計(jì)計(jì)算發(fā)送時(shí)間、時(shí)間率估計(jì)值,根據(jù)發(fā)送時(shí)間估計(jì)值和實(shí)際值偏差、時(shí)間率估計(jì)值和實(shí)際值偏差分別設(shè)置閾值檢測(cè)并排除異常同步信息。仿真結(jié)果表明:算法具有同步誤差小、異常檢測(cè)率高的特點(diǎn),且通過異常檢測(cè)排除異常同步信息后同步誤差降低率高,提高了同步精度和同步安全性。
無線傳感器網(wǎng)絡(luò);時(shí)間同步;異常檢測(cè);延遲攻擊
無線傳感器網(wǎng)絡(luò)分布廣泛性和無線通信的特點(diǎn)使其易受惡意攻擊影響,無線傳感器網(wǎng)絡(luò)的安全問題受到越來越廣泛的關(guān)注。時(shí)間同步技術(shù)作為無線傳感器網(wǎng)絡(luò)的關(guān)鍵技術(shù)之一,其安全性受到破壞,會(huì)導(dǎo)致節(jié)點(diǎn)時(shí)間的偏移,進(jìn)而影響無線傳感器網(wǎng)絡(luò)中其他基于時(shí)間同步的應(yīng)用正常運(yùn)行,因此提高無線傳感器網(wǎng)絡(luò)時(shí)間同步協(xié)議的安全性是關(guān)系到整個(gè)網(wǎng)絡(luò)可靠運(yùn)行的關(guān)鍵問題[1-4]。
針對(duì)時(shí)間同步的惡意攻擊主要分為外部攻擊和內(nèi)部攻擊,外部攻擊通常通過篡改兩個(gè)可信節(jié)點(diǎn)間的通信過程導(dǎo)致時(shí)間同步失敗,如偽裝攻擊(Masquerade Attack);內(nèi)部攻擊通常通過妥協(xié)節(jié)點(diǎn)(Compromised Nodes)向其他節(jié)點(diǎn)發(fā)送錯(cuò)誤時(shí)間信息干擾時(shí)間同步,如延遲攻擊(Delay Attack)。信息加密技術(shù)如廣播認(rèn)證機(jī)制可以保證信息包的完整性和機(jī)密性,有效抵御外部攻擊,但不能保證時(shí)間準(zhǔn)確性[5-8]。延遲攻擊通過延遲、更改發(fā)送時(shí)間以放大節(jié)點(diǎn)與實(shí)際時(shí)間間的偏差干擾同步,目前所有時(shí)間同步機(jī)制都易受延遲攻擊影響,且不能用密碼學(xué)技術(shù)解決延遲攻擊[9-12]。文獻(xiàn)[8]指出惡意節(jié)點(diǎn)通常通過廣播較大時(shí)間偏差干擾同步過程,因此通過檢測(cè)時(shí)間偏差中的異常值排除惡意節(jié)點(diǎn),分別采用了GESD(Generalized Extreme Studentized Deviate)和閾值檢測(cè)方法,并通過實(shí)驗(yàn)得出閾值檢測(cè)的檢測(cè)率更高的結(jié)論;文獻(xiàn)[10]在IRBS(Improved Reference Based Synchronization)算法上增加容錯(cuò)機(jī)制,設(shè)置觀察節(jié)點(diǎn)找出惡意節(jié)點(diǎn)緩和攻擊;文獻(xiàn)[12]中帶容錯(cuò)機(jī)制的無線傳感器網(wǎng)絡(luò)時(shí)間同步協(xié)議FTTSP(Fault-Tolerant Time Synchronization Protocol)以發(fā)送時(shí)間的估計(jì)值和實(shí)際值之差為判據(jù)檢測(cè)惡意攻擊。上述方法通過檢測(cè)并排除攻擊導(dǎo)致的異常提高時(shí)間同步安全性,但未修正時(shí)間率,同步精度低,同步誤差增長快,且沒有檢測(cè)時(shí)間率異常,而時(shí)間率異常會(huì)影響節(jié)點(diǎn)時(shí)間運(yùn)行,使得節(jié)點(diǎn)間時(shí)間誤差增大,最終導(dǎo)致時(shí)間同步失敗。
本文采用梯度同步方式,節(jié)點(diǎn)通過融合鄰居節(jié)點(diǎn)同步信息,同時(shí)修正本地時(shí)間和時(shí)間率,達(dá)到減小同步誤差提高同步精度目的。采用單向鏈認(rèn)證機(jī)制對(duì)同步信息進(jìn)行認(rèn)證,確保發(fā)送同步信息的節(jié)點(diǎn)為合法節(jié)點(diǎn),防止外部攻擊者欺騙干擾同步過程,針對(duì)內(nèi)部攻擊中的延遲攻擊,以發(fā)送時(shí)間估計(jì)值和實(shí)際值的偏差、時(shí)間率估計(jì)值和實(shí)際值的偏差同時(shí)作為判據(jù),檢測(cè)異常同步信息,通過排除異常保證時(shí)間同步正常進(jìn)行。
1.1 時(shí)鐘模型
節(jié)點(diǎn)時(shí)間通過自身晶體振蕩器計(jì)數(shù),晶體振蕩器的振蕩頻率不相同,節(jié)點(diǎn)時(shí)間不可能絕對(duì)相同,實(shí)際應(yīng)用中環(huán)境溫度、振蕩器老化等會(huì)造成晶體振蕩頻率漂移,通常節(jié)點(diǎn)晶體振蕩頻率漂移為30×10-6~100×10-6,即每秒產(chǎn)生30 μs~100 μs漂移,一般設(shè)定振蕩器漂移在短時(shí)間內(nèi)相對(duì)恒定。時(shí)間同步通過構(gòu)造并校準(zhǔn)邏輯時(shí)間(Logical Time)實(shí)現(xiàn),即在任意時(shí)刻使所有節(jié)點(diǎn)有相同或近似相同的邏輯時(shí)間[13-14]。
設(shè)T(t)為邏輯時(shí)間,T(t)滿足式(1):
(1)
其中,t為國際標(biāo)準(zhǔn)時(shí)間(Universal Time),ω(t)為邏輯時(shí)間率,T(t0)為t0時(shí)刻邏輯時(shí)間值。
邏輯時(shí)間率通常是分段線性的,因此式(1)可以簡化成線性模型,如式(2):
T(t)=ωt+φ
(2)
其中,φ為邏輯時(shí)間與標(biāo)準(zhǔn)時(shí)間偏差(Time Offset),φ=T(t0)-ωt0;ω為時(shí)間率也稱時(shí)間偏移率(Time Skew),節(jié)點(diǎn)間時(shí)間偏差主要是由于ω不同引起,因此ω的修正是保證時(shí)間同步長期可靠的關(guān)鍵[1-3]。
1.2 時(shí)間同步攻擊
節(jié)點(diǎn)受延遲攻擊影響時(shí)時(shí)間變化如圖1(a)所示,未受攻擊時(shí),節(jié)點(diǎn)時(shí)間呈線性變化;受延遲攻擊時(shí),節(jié)點(diǎn)時(shí)間與實(shí)際時(shí)間偏差很大,攻擊結(jié)束后節(jié)點(diǎn)時(shí)間逐漸恢復(fù)線性,其鄰居節(jié)點(diǎn)根據(jù)異常時(shí)間同步將導(dǎo)致該鄰居節(jié)點(diǎn)時(shí)間也產(chǎn)生偏差,使得整個(gè)網(wǎng)絡(luò)的節(jié)點(diǎn)間時(shí)間偏差很大,時(shí)間同步失敗。另一種隱蔽攻擊如圖1(b)所示,通過更改節(jié)點(diǎn)時(shí)間率,使得節(jié)點(diǎn)本地時(shí)間運(yùn)行逐漸偏離標(biāo)準(zhǔn)時(shí)間,根據(jù)此異常時(shí)間率同步的鄰居節(jié)點(diǎn)的時(shí)間也將運(yùn)行異常,相對(duì)于延遲攻擊,此隱蔽攻擊對(duì)時(shí)間造成時(shí)間偏差較小,不易被檢測(cè)出,但隨時(shí)間運(yùn)行增長節(jié)點(diǎn)間的時(shí)間偏差累積增大,最終導(dǎo)致時(shí)間同步失敗。
圖1 攻擊時(shí)節(jié)點(diǎn)時(shí)間變化圖
1.3 單向鏈認(rèn)證
通過單向鏈認(rèn)證機(jī)制[15]可確保同步信息來源合法,抵御外部攻擊者的欺騙行為。單向鏈身份認(rèn)證機(jī)制:發(fā)送節(jié)點(diǎn)利用單向哈希函數(shù)H生成單向密鑰鏈K(0),K(1),…,K(L),L為密鑰鏈長度,K(i-1)=H(K(i))(i>0),用對(duì)密鑰把第一個(gè)密鑰K(0)通過單播方式安全分發(fā)給各節(jié)點(diǎn),發(fā)送第j個(gè)信息時(shí),取第j個(gè)密鑰K(j)附加在信息中,接收節(jié)點(diǎn)接收該信息后,用最新已認(rèn)證的合法密鑰K(k)對(duì)K(j)認(rèn)證,若K(k)=Hj-k(K(j))(k 單向哈希函數(shù)H滿足特性:給定輸入x,計(jì)算輸出y=H(x)簡單,但給定輸出y計(jì)算輸入x=H-1(y)非常困難,H的特性決定了攻擊節(jié)點(diǎn)很難根據(jù)K(i)計(jì)算合法發(fā)送節(jié)點(diǎn)下一密鑰K(i+1)。 2.1 攻擊檢測(cè) 設(shè)節(jié)點(diǎn)j的鄰居節(jié)點(diǎn)集合為Nj,其鄰居節(jié)點(diǎn)i第k次發(fā)送發(fā)送同步信息時(shí)發(fā)送時(shí)間為Si,k,節(jié)點(diǎn)j接收時(shí)間為Ri,k,i∈Nj,k=1,2,…,n,n為同步次數(shù),由式(2)得,未受攻擊時(shí): Si,k=ωi,k·t+φi,k,Ri,k=ωj,k·t+φj,k (3) Si,k=a·Ri,k+b (4) ωi,k、ωj,k滿足關(guān)系式:ωi,k=c·ωj,k。 (5) (6) 其中 2.2 基于加權(quán)平均的梯度同步 (7) (8) (9) 其中,αi,k、βi,k為權(quán)值(0<αi,k<1,0<βi,k<1),αi,k、βi,k的取值規(guī)則如式(10)(11): (10) (11) 2.3 算法流程 本文算法采用基于加權(quán)平均的梯度同步機(jī)制提高同步精度,設(shè)置雙閾值檢測(cè)延遲攻擊和隱蔽攻擊,保證時(shí)間同步安全,算法流程如圖2所示。 ①節(jié)點(diǎn)廣播同步信息并接收其鄰居節(jié)點(diǎn)發(fā)送的同步信息;②接收節(jié)點(diǎn)根據(jù)式(5)、式(6)分別計(jì)算各發(fā)送節(jié)點(diǎn)發(fā)送時(shí)間估計(jì)值、時(shí)間率估計(jì)值;③計(jì)算ΔSi,k,若ΔSi,k≥σS,判斷節(jié)點(diǎn)i發(fā)送的第k個(gè)同步信息的發(fā)送時(shí)間異常,丟棄此同步信息;④若ΔSi,k<σS,判斷節(jié)點(diǎn)i發(fā)送的第k個(gè)同步信息的發(fā)送時(shí)間正常并計(jì)算Δωi,k,若Δωi,k≥σω,判斷此同步信息的時(shí)間率異常,丟棄此同步信息;⑤若Δωi,k<σω,判斷此同步信息時(shí)間率正常,接收節(jié)點(diǎn)根據(jù)式(8)、式(9)分別計(jì)算并更新時(shí)間率和本地時(shí)間。 圖2 算法流程圖 采用NS2網(wǎng)絡(luò)仿真軟件對(duì)提出算法的有效性進(jìn)行驗(yàn)證,設(shè)置仿真環(huán)境為1 000 m×1 000 m區(qū)域,隨機(jī)產(chǎn)生20個(gè)節(jié)點(diǎn),同步周期為30 s。 仿真主要從同步誤差、異常檢測(cè)方面,將提出方法與FTTSP[12]作對(duì)比分析。 3.1 同步誤差 圖3 無攻擊時(shí)同步誤差(t>500 s) 同步精度通過同步誤差MSE(Mean Square Error)衡量,同步誤差越小同步精度越高。設(shè)置觀測(cè)時(shí)間為1 500 s,圖3為無攻擊時(shí)觀測(cè)時(shí)間從500 s到1 500 s的正常時(shí)間同步下全網(wǎng)MSE對(duì)時(shí)間變化對(duì)比,本文算法根據(jù)節(jié)點(diǎn)時(shí)間運(yùn)行快慢設(shè)定權(quán)值,對(duì)鄰居節(jié)點(diǎn)時(shí)間信息進(jìn)行加權(quán)平均計(jì)算并更新本地時(shí)間和時(shí)間率,同時(shí)修正了本地時(shí)間和時(shí)間率,提高了同步精度,觀測(cè)時(shí)間內(nèi)本文算法平均MSE為7.61 μs,FTTSP平均MSE為10.27 μs。 3.2 異常檢測(cè) 設(shè)40 s時(shí)發(fā)生延遲攻擊,延遲攻擊的隨機(jī)延遲為1 ms~10 ms,圖4為本文算法時(shí)間同步受延遲攻擊時(shí)排除異常前后MSE隨時(shí)間變化對(duì)比,節(jié)點(diǎn)受延遲攻擊同步信息被更改,其鄰居節(jié)點(diǎn)采用錯(cuò)誤發(fā)送時(shí)間計(jì)算并更新本地時(shí)間,因此更新后時(shí)間與正常時(shí)間偏差增大,導(dǎo)致全網(wǎng)MSE明顯增大,通過ΔSi,k閾值檢測(cè)可以有效檢測(cè)受延遲攻擊影響的異常同步信息,保證正常同步。 圖4 時(shí)間同步受延遲攻擊時(shí)同步誤差 圖5為排除異常后本文算法和FTTSP誤差對(duì)比,由圖5得排除異常后本文算法MSE低于FTTSP。 圖5 排除異常后同步誤差 表1為排除異常后MSE值以及MSE降低率。本文算法MSE小,同步精度高,MSE最大降低率為70.14%,平均降低率為50.65%;FTTSP最大降低率為65.86%,平均降低率為38.08%;本文算法MSE平均降低率比FTTSP高12.57。 表1 同步誤差降低率(延遲攻擊時(shí)) 圖6為本文算法時(shí)間同步受隱蔽攻擊(40 s、70 s處,隨機(jī)延遲小于1 ms)時(shí)MSE隨時(shí)間變化對(duì)比。 圖6 時(shí)間同步受隱蔽攻擊時(shí)同步誤差 受隱蔽攻擊時(shí),由于隨機(jī)延遲較小,節(jié)點(diǎn)當(dāng)前發(fā)送時(shí)間未產(chǎn)生異?;蚴苡绊懞苄?但節(jié)點(diǎn)時(shí)間率即節(jié)點(diǎn)運(yùn)行異常,其鄰居節(jié)點(diǎn)根據(jù)錯(cuò)誤時(shí)間率更新后時(shí)間運(yùn)行也將異常,與正常節(jié)點(diǎn)的時(shí)間偏差逐漸增大,導(dǎo)致全網(wǎng)MSE增大,逐漸破壞時(shí)間同步。本文算法通過Δωi,k閾值檢測(cè)檢測(cè)出異常時(shí)間率,有效消除隱蔽延遲攻擊影響,使時(shí)間同步趨于正常運(yùn)行。 圖7為排除受異常信息后本文算法和FTTSP算法MSE對(duì)比圖,FTTSP只設(shè)置發(fā)送時(shí)間閾值檢測(cè),不能檢測(cè)隱蔽攻擊時(shí)的時(shí)間異常,因此雖通過隨機(jī)加權(quán)平均降低MSE,但MSE仍呈不正常增長趨勢(shì)。 圖7 排除異常后同步誤差(隱蔽攻擊時(shí)) 表2為排除異常后MSE值及MSE降低率。本文算法MSE最大降低率為49.09%,平均降低率為36.69%;FTTSP的最大降低率為19.19%,平均降低率為12.87%,本文算法MSE平均降低率比FTTSP高23.82??梢?排除異常后,本文算法MSE比FTTSP小,具有更高的同步精度,表3為不同惡意節(jié)點(diǎn)數(shù)時(shí)異常檢測(cè)率和排除異常后平均同步誤差降低率。設(shè)置觀測(cè)時(shí)間為1 500 s,本文算法最高異常檢測(cè)率為100%,最低檢測(cè)率為92.4%,檢測(cè)率高于FTTSP,且平均誤差降低率高于FTTSP,本文算法比FTTSP異常檢測(cè)效果好,且排除異常后同步精度高。結(jié)果證明了本文算法針對(duì)隱蔽延遲攻擊增加時(shí)間率閾值檢測(cè),異常檢測(cè)率和誤差降低率高,提高了同步精度。 表2 同步誤差降低率(隱蔽攻擊時(shí)) 表3 異常檢測(cè)率 本文提出了一種具有安全機(jī)制的時(shí)間同步方法,采用梯度同步方式,通過融合鄰居節(jié)點(diǎn)時(shí)間信息修正本地時(shí)間和時(shí)間率,提高同步精度,針對(duì)內(nèi)部攻擊(延遲攻擊和隱蔽攻擊)設(shè)置雙重閾值檢測(cè)機(jī)制,保證同步安全性。與FTTSP對(duì)比仿真分析結(jié)果表明,本文算法同步誤差小,同步精度高;延遲攻擊、隱蔽攻擊異常檢測(cè)率高,且排除異常后平均誤差降低率高,能夠有效消除兩種攻擊影響,保證時(shí)間同步安全正常進(jìn)行。 [1] 吳寶明,李聲飛.基于最優(yōu)線性擬合的WSN時(shí)間同步算法研究[J].傳感技術(shù)學(xué)報(bào),2011,23(12):1787-1791. [2]周賢偉,韋煒,覃伯平.無線傳感器網(wǎng)絡(luò)的時(shí)間同步算法研究[J].傳感器技術(shù)學(xué)報(bào),2006,19(1):21-29. [3]程利娟,王福豹,段渭軍.無線傳感器網(wǎng)絡(luò)時(shí)間同步算法的安全性研究[J].計(jì)算機(jī)應(yīng)用研究,2007,24(11):6-8. [4]汪付強(qiáng),曾鵬,于海斌.一種低開銷的雙向時(shí)間同步算法[J].儀器儀表學(xué)報(bào),2011,6(32):1357-1363. [5]Zhu W T,Zhou J,Deng R H,et al.Detecting Node Replication Attacks in Mobile Sensor Networks:Theory and Approaches[J].Security and Communication Networks,2012,5(5):496-507. [6]Na Wang,Haihui He.Time Synchronization for Failure Tolerance in Wireless Sensor Network[C]//Software Engineering,Artificial Intelligence,Networking and Parallel and Distributed Computing(SNPD),2012 13th ACIS International Conference on Kyoto.IEEE,2012:181-184. [7]Mizrahi T.A Game Theoretic Analysis of Delay Attacks Against Time Synchronization Protocols[C]//Precision Clock Synchronization for Measurement Control and Communication(ISPCS),2012 International IEEE Symposium on San Francisco.IEEE,2012:1-6. [8]Song H,Zhu S,Cao G.Attack-Resilient Time Synchronization for Wireless Sensor Networks[J].Ad Hoc Networks,2007,5(1):112-125. [9]尹香蘭,齊望東.LiteST:一種無線傳感器網(wǎng)絡(luò)輕量級(jí)安全時(shí)間同步協(xié)議[J].通信學(xué)報(bào),2009,30(4):74-85. [10]Kim,Kyeong Tae.SAEP:Secure,Accurate and Energy-Efficient Time Synchronization Protocol in WSNs[J].IEICE Transactions on Communications,2011,94(6):1587-1597. [11]Eui Jik Kim,Jeongsik I N,Sungkwan Y.Delay Attack-Resilient Clock Synchronization for Wireless Sensor Networks[J].IEICE Transactions on Information and Systems,2012,95(1):188-191. [12]秦紹華,陳冬巖.具有容錯(cuò)性的無線傳感器網(wǎng)絡(luò)時(shí)間同步協(xié)議[J].軟件學(xué)報(bào),2012,23(1):126-133. [13]Philipp Sommer,Roger Wattenhofer.Gradient Clock Synchronization in Wireless Sensor Networks[C]//Proc of Int Conf on Information Processing in Sensor Networks(IPSN’09),2009:37-48. [14]Pinho A C,Figueiredo D R,Franca F M G.A Robust Gradient Clock Synchronization Algorithm for Wireless Sensor Networks[C]//Communication Systems and Networks(COMSNETS),2012 Fourth International Conference on Bangalore.IEEE,2012:1-10. [15]Lamport L.Password Authentication with Insecure Communication[J].Communications of the ACM,1981,24(11):770-772. 孫子文(1968-),女,四川大竹人,工學(xué)博士,教授,碩士生導(dǎo)師,研究方向?yàn)闊o線傳感器網(wǎng)絡(luò)理論與技術(shù),信息隱藏、模式識(shí)別與圖像處理等,sunziwen@jiangnan.edu.cn; 吳夢(mèng)蕓(1989-),女,碩士研究生,研究方向?yàn)闊o線傳感器網(wǎng)絡(luò)安全時(shí)間同步方法,s111918004@vip.jiangnan.edu.cn; 白勇(1968-),男,工程師,主要研究方向傳感器網(wǎng)絡(luò)應(yīng)用、控制工程,by@wxhcdz.com。 DelayAttack-ResistantTimeSynchronizationforWSN* SUNZiwen1,WUMengyun1,BAIYong2 (1.Jiangnan University,School of Internet of Things Engineering,Wuxi Jiangsu 214122,China;2.Wuxi Hong Chuang Electronic Co.Ltd,Wuxi Jiangsu 214072,China) A security time synchronization algorithm is proposed to resist delay attack and ensure safe time synchronization for Wireless Sensor Networks.The gradient clock synchronization mechanism is adopted to improve the synchronization accuracy by correcting both the logical time rate and the local time.The least squares estimation is adopted to estimate both the transmission time and the time rate.The abnormal synchronization information is detected and eliminated by comparing the deviation between the estimated and actual value of the send time with a threshold,and comparing the deviation of estimated and actual value of the time rate with another threshold.NS2 simulations show that the proposed algorithm has advantage with small synchronization error and high detection rate.The accuracy and the security of synchronization are improved due to the high reduction of synchronization deviation for the abnormal synchronization information being eliminated by adopting anomaly detection. wireless sensor network;time synchronization;anomaly detection;delay attack 項(xiàng)目來源:國家自然科學(xué)基金面上項(xiàng)目(61373126);江蘇省自科學(xué)基金面上項(xiàng)目(BK20131107) 2014-01-01修改日期:2014-06-03 10.3969/j.issn.1004-1699.2014.07.022 TP393 :A :1004-1699(2014)07-0982-062 WSN安全時(shí)間同步算法
3 仿真分析
4 結(jié)語