苑紅曦 胡蓉華 陳中舉
摘要:為了防御攻擊者通過捕獲普通節(jié)點,竊取密鑰信息之后發(fā)起移動Sink復(fù)制攻擊,收集網(wǎng)絡(luò)采集的信息,提出了一種基于數(shù)字水印與密鑰更新的防御機制。采用密鑰更新機制,可以克服基于密鑰池預(yù)分配模式中的閾值缺陷。與數(shù)字水印技術(shù)結(jié)合,可以提高密鑰更新的安全性并減少網(wǎng)絡(luò)的通信量。與已有典型方案相比,認(rèn)證開銷較小,并克服了閾值缺陷。
關(guān)鍵詞:移動基站;復(fù)制攻擊;節(jié)點捕獲;數(shù)字水印;密鑰更新
中圖分類號:TP3? ? ? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2019)20-0034-02
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
Abstract: In order to defend the attacker from the mobile Sink replication attack by capturing common nodes, stealing key information and gathering information collected by the network, a defense mechanism based on digital watermarking and key update was proposed. The key update mechanism can overcome the threshold defect in the key pool pre-distribution mode. Combined with digital watermarking technology, it can improve the security of key update and reduce the network traffic. Compared with the existing typical schemes, the authentication overhead is smaller and the threshold defect is overcome.
Key words: mobile sink; replication attack; node capturing; digital watermarking; key updating
1 引言
無線傳感器網(wǎng)絡(luò)(Wireless Sensor Networks,WSN)是由大量集成了傳感器模塊、數(shù)據(jù)處理模塊、無線通信模塊和能量供應(yīng)模塊的節(jié)點組成。這些節(jié)點可以通過自組織方式形成多跳路由,將采集的信息傳遞至基站SinK。然而由于無線鏈路質(zhì)量的不穩(wěn)定性,采用多跳方式將消耗節(jié)點較多的能量。為了減少節(jié)點的能耗,提高收集數(shù)據(jù)的可靠性,研究人員提出了采用移動Sink收集網(wǎng)絡(luò)信息。對于某些應(yīng)用場景,傳感器節(jié)點部署后,比如敵方區(qū)域或者自然環(huán)境惡劣的區(qū)域,網(wǎng)絡(luò)的擁有者不會或者很難對節(jié)點進(jìn)行物理接觸上的管控,而是指派移動Sink節(jié)點周期性的或者按需收集網(wǎng)絡(luò)節(jié)點采集的信息,這種網(wǎng)絡(luò)稱為無人照看的無線傳感器網(wǎng)絡(luò)(Unattended Wireless Sensor Networks,UWSN)。
在UWSN中,由于傳感器節(jié)點無人照看,因此可能被攻擊者捕獲。一旦節(jié)點被攻擊者捕獲后,其可以獲取節(jié)點中的所有秘密信息,比如與移動Sink之間的共享密鑰。然后利用獲取的秘密信息發(fā)起各種攻擊。其中,攻擊者可以利用從所有被捕獲節(jié)點獲取的秘密信息,偽造一個Sink節(jié)點,來收集網(wǎng)絡(luò)的信息,文獻(xiàn)[1]稱這種攻擊為移動Sink復(fù)制攻擊。
本文針對移動Sink復(fù)制攻擊,提出了一種基于數(shù)字水印與密鑰更新的輕量級防御機制。與已有文獻(xiàn)相比,本方案在能耗及抗抵賴性方面均有優(yōu)勢。
2 相關(guān)工作
為了提高抵御復(fù)制攻擊的能力,已有方案大多采用基于認(rèn)證和在移動Sink與普通傳感器節(jié)點間建立對密鑰的方法。
文獻(xiàn)[2]首先提出了一種基于密鑰預(yù)分配的方法,用于建立節(jié)點間的共享密鑰。在該方案中,每個傳感器節(jié)點在部署前隨機從一個大的密鑰池中選擇一定個數(shù)的密鑰。部署后,如果兩個傳感器節(jié)點擁有至少一個共同的密鑰,則它們可以建立共享密鑰?;谖墨I(xiàn)[2],文獻(xiàn)[3]提出了一種改進(jìn)的模式,要求兩個節(jié)點至少擁有q個共享的密鑰才能建立共享的密鑰,以提高抗密鑰竊取的能力。為了提高網(wǎng)絡(luò)抵御節(jié)點捕獲攻擊能力,文獻(xiàn)[4]提出了一種基于雙變量t維多項式的方法。然而以上用于建立移動Sink與節(jié)點間的共享密鑰及認(rèn)證的方法,將無法抵御移動Sink復(fù)制攻擊[1]。
基于文獻(xiàn)[5],等人提出了一種三層通信模型ETTS,可以抵御移動Sink復(fù)制攻擊。其中,移動Sink與節(jié)點間的認(rèn)證以一定的概率實現(xiàn)。然而,該模式中,攻擊者可以復(fù)制普通節(jié)點來收集網(wǎng)絡(luò)采集的數(shù)據(jù)。為了防御UWSN中移動Sink復(fù)制攻擊,文獻(xiàn)[1]提出了一種(M,m)認(rèn)證模式。在該模式中,假設(shè)移動節(jié)點u有M個鄰居節(jié)點,Sink為了收集普通節(jié)點u采集的數(shù)據(jù),首先需要與節(jié)點u采用基于雙變量t維多項式的方法建立對密鑰,其次需要通過u的m個鄰居節(jié)點的認(rèn)證。雖然該方法可以較好地抵御移動Sink復(fù)制攻擊,然而需要節(jié)點與Sink進(jìn)行多次交互認(rèn)證,通信開銷較大。
通過分析發(fā)現(xiàn),已有的采用從密鑰池隨機選擇部分密鑰建立共享密鑰的方案中,一旦被捕獲節(jié)點達(dá)到一定個數(shù),整個密碼機制很可能會失效,本文稱這種現(xiàn)象為閾值缺陷。攻擊者可以偽造一個移動Sink并預(yù)載密鑰信息,進(jìn)而收集節(jié)點采集的信息。而基于(M,m)認(rèn)證模式的機制,通信開銷較大。因此,有必要設(shè)計一種輕量級的防御Sink復(fù)制攻擊的機制。
3 基于數(shù)字水印的防御移動Sink復(fù)制攻擊機制
為了克服已有方案的不足之處,借鑒文獻(xiàn)[1]的部分思想,本文提出了一種基于數(shù)字水印與密鑰更新的防御移動Sink復(fù)制攻擊的方案。其主要思想是首先基于雙變量t維多項式的方法建立節(jié)點間的共享密鑰,然后通過將密鑰更新與數(shù)字水印技術(shù)相結(jié)合,實現(xiàn)移動Sink與普通節(jié)點間的認(rèn)證。該方法一方面可以克服基于密鑰池預(yù)分配方案存在閾值缺陷問題,另一方面與基于(M,m)認(rèn)證模式相比,可以減少移動Sink和節(jié)點的認(rèn)證開銷。
3.1 密鑰預(yù)部署及共享密鑰建立階段
與文獻(xiàn)[1]類似,基于雙變量t維多項式的方法建立節(jié)點間的共享密鑰。注意,本文提出的基于數(shù)字水印的認(rèn)證方案也兼容于其他共享密鑰方案。假設(shè)經(jīng)過共享密鑰建立節(jié)點,節(jié)點u與移動Sink間的共享密鑰為Ku-sink。
3.2 數(shù)據(jù)收集階段
數(shù)據(jù)收集階段分為以下步驟:
(1)移動SinK廣播信息收集請求消息info-gath-req-msg;
(2)如果節(jié)點u緩存中有采集的信息需要發(fā)送給Sink,則發(fā)送認(rèn)證請求消息req-for-auth-msg,以便對移動Sink進(jìn)行認(rèn)證;否則,忽略移動Sink發(fā)送的info-gath-req-msg;
(3)如果移動Sink收到來自節(jié)點u的req-for-auth-msg,則發(fā)送認(rèn)證回復(fù)消息rep-for-anth-msg,格式具體如下:
rep-for-anth-msg = {u,Sink,rnd,MAC(u|Sink|rnd,Ku-sink)}
其中rnd是Sink生成的隨機數(shù),MAC(x,y)為消息驗證碼函數(shù),x為需要驗證的數(shù)據(jù),y為密鑰。
(4)如果節(jié)點u收到來自移動Sink的rep-for-anth-msg,則采用Ku-sink對該消息進(jìn)行驗證。若驗證通過,則發(fā)送信息報告消息info-reco-msg,將緩存中的數(shù)據(jù)發(fā)送Sink,并在發(fā)送的數(shù)據(jù)DATA中嵌入水印信息,可以采用LSB方法并使用共享密鑰Ku-sink進(jìn)行水印信息wm的嵌入,其中密鑰用于控制水印嵌入的比特位置。發(fā)送完畢之后,更新共享密鑰。否則,驗證失敗,不發(fā)送。
info-reco-msg的格式和密鑰更新方法具體如下:
info-reco-msg ={Sink,u,En(Em(DATA,wm,Ku-sink),Ku-sink),MAC(Sink|u|En()|wm)}
Ku-sink(new) = H(Ku-sink|wm,len)
其中,En(x,y)為加密算法,x為待加密的數(shù)據(jù),y為加密密鑰;Em()為水印嵌入算法;H(var1,var2)表示采用安全的哈希算法對輸入var1進(jìn)行計算,取出長度為var2的比特信息作為輸出結(jié)果。
(5)移動Sink收到來自節(jié)點u的info-reco-msg后,首先使用共享密鑰解密消息,然后采用水印提取算法和Ku-sink進(jìn)行水印信息的提取與驗證。若驗證通過,則進(jìn)行密鑰的更新操作。
4 結(jié)束語
在UWSN中,為了防御攻擊者通過捕獲普通節(jié)點,竊取秘密信息之后發(fā)起移動Sink復(fù)制攻擊,本文提出了一種基于數(shù)字水印與密鑰更新的輕量級的防御機制,將數(shù)字水印技術(shù)與密鑰更新相結(jié)合,不僅克服了基于密鑰池預(yù)分配方案存在閾值缺陷問題,而且極大地減少了認(rèn)證代價。
參考文獻(xiàn):
[1] Li S, Wang W, Zhou B, et al. A (M, m) authentication scheme against mobile sink replicated attack in unattended sensor networks[J]. IEEE Wireless Communications Letters, 2018, 7(2):250 -253.
[2] Eschenauer L, Gligor V D. A key-management scheme for distributed sensor networks[C].Proc. of the 9th ACM Conference on Computer and Communication Security, 2002: 41-47.
[3] Chan H, Perrig A, Song D, et al. Random key predistribution schemes for sensor networks[J]. ieee symposium on security and privacy, 2003: 197-213.
[4] Liu D, Ning P, Li R, et al. Establishing pairwise keys in distributed sensor networks[J]. ACM Transactions on Information and System Security, 2005, 8(1): 41-77.
[5] Rasheed A, Mahapatra R N. The Three-Tier Security Scheme in Wireless Sensor Networks with Mobile Sinks[J]. IEEE Transactions on Parallel and Distributed Systems, 2012, 23(5): 958-965.
【通聯(lián)編輯:梁書】