一种容忍移动Sink捕获的UWSN安全数据收集机制研究

2019-08-08 06:23苑红曦胡蓉华孟葱高常粮赵晓兵
电脑知识与技术 2019年18期
关键词:数据收集

苑红曦 胡蓉华 孟葱 高常粮 赵晓兵

摘要:在基于移动Sink收集数据的无线传感器网络应用中,移动Sink往往拥有更多的安全秘密材料。为了防御攻击者通过捕获移动Sink,获取密钥等秘密信息之后发起移动Sink复制攻击,收集传感器节点采集的数据,提出了一种容忍移动Sink捕获的安全数据收集机制。通过在移动Sink与普通节点间的对密钥更新过程中引入依赖于网络拥有者TA和普通节点共享的秘密信息来同步完成更新,可克服已有方案中特权可复制性问题,实现对基于复制的移动Sink发起的数据窃取攻击进行防御。

關键词:移动基站;复制攻击;节点捕获;数据收集;密钥更新

中图分类号:TP311    文献标识码:A

文章编号:1009-3044(2019)18-0037-02

Abstract: In wireless sensor network applications that gather data based on mobile Sink, mobile Sink often has more security secret materials. In order to prevent the attacker from capturing the mobile Sink, obtaining the secret information such as the key and then launching the mobile Sink replication attack to gather data sensed by sensor nodes, a secure data collection mechanism for tolerating mobile Sink capture is proposed. By introducing the secret information shared by the network owner TA and the common node to update the key between the mobile Sink and the common node synchronously, the problem of privilege replication in existing schemes can be overcome, and the data stealing attack initiated by replication mobile Sink can be defended.

Key words: mobile sink; replication attack; node capturing; data gathering; key updating

1 引言

文献[1,2]基于非对称密钥预分配协议AKPS[3]和Lighton-Micali密钥协商协议[4],提出了一种移动Sink协助的非对称的密钥预分配机制mAKPS,通过把大量的存储开销转移到资源相对更充足的移动Sink,来降低普通节点的存储开销。为了限制移动Sink特权,在mAKPS中引入移动Sink特权限制机制,使得移动Sink仅能访问特定的普通节点,或特定的数据类型,或特定普通节点的特定数据类型。

然而,基于mAKPS的特权限制机制忽略了移动Sink被捕获并复制后具有特权可复制性问题以及被动收集信息的威胁。例如,当攻击者捕获了移动Sink并获取其存储的所有秘密信息后,可克隆一个移动Sink,然后将被捕获的移动Sink“放回”(未做任何修改),并部署新克隆的移动Sink(加入了由敌方控制的指令)。由于克隆出来的移动Sink具有所有合法的认证相关的密钥信息,因此也可访问特定的普通节点或特定的数据类型,即具有特权可复制性问题。同时如果攻击者发起隐蔽的被动攻击,可通过克隆的移动Sink收集放回的移动Sink与普通节点交互的所有信息。通过分析发现,出现上述安全威胁的主要原因是移动Sink和普通节点间的密钥建立与管理存在安全隐患。

为了克服特权可复制性问题和防御复制移动Sink的被动信息收集攻击,本文提出了一种容忍移动Sink捕获的安全数据收集机制。其主要思想是通过在移动Sink与普通节点间的对密钥更新过程中引入依赖于网络拥有者TA和普通节点共享的某种信息来同步生成。由于移动Sink与普通节点间的对密钥可更新且不再依赖于移动Sink中存储的秘密信息,因此可以防止攻击者利用被捕获的移动Sink发起复制攻击,获取网络中采集的信息。

2 网络假设

假设一个无人照看的无线传感器网络UWSN由网络拥有者TA、一个或多个移动Sink及N个普通节点组成。当需要执行数据收集任务时,本文称一次数据收集任务为一轮,TA指派特定的移动Sink到UWSN进行该轮的数据收集。移动Sink沿路发布数据收集信元消息beacon-msg,普通节点收到beacon-msg后,如果有数据需要上传给Sink,则对Sink进行认证,认证通过后将采集的数据安全传输至Sink。移动Sink执行完一次数据收集任务后返回。

假设TA是安全的,移动Sink和普通节点均不具备防篡改的能力。当攻击者捕获移动Sink或普通节点后,可以获取其中的所有秘密材料。

假设攻击者捕获移动Sink后,可发起主动攻击和被动攻击。对于前者,攻击者通过复制移动Sink尝试主动收集普通节点采集的信息;对于后者,攻击者通过复制移动Sink后,尝试利用获取的密钥信息监听“放回”的移动Sink与普通节点交互的所有信息,进行更加隐蔽的窃听活动。

本文的目的是防止以上两种攻击,实现数据的安全有效的收集。

3 容忍移动Sink捕获的安全数据收集机制

为了克服已有方案的不足之处,基于mAKSP,本文提出了一种容忍移动Sink捕获的安全数据收集机制。通过在移动Sink与普通节点间的对密钥更新过程中引入依赖于网络拥有者TA和普通节点共享的对密钥信息来同步完成更新,实现对基于复制的移动Sink发起的数据窃取攻击。

3.1 密钥预部署及普通节点对密钥的建立阶段

与文献[1,2]类似,基于非对称密钥预分配协议AKPS[3]和Lighton-Micali密钥协商协议[4]完成秘密材料的方法及普通节点间对密钥的建立。假设经过共享密钥建立节点,节点u与移动Sink间的共享密钥为Ku-sink。

不同之处在于:对任意的普通节点u,TA生成安全的秘密密钥KTA-u作为TA与u的对称密钥;初始化rndu=0,rndu记录TA指派移动Sink从u收集数据的轮数,该属性在TA和u中都需同步记录。

3.2 数据收集阶段

数据收集阶段分为以下步骤:

(1)移动SinK广播数据收集信元消息beacon-msg。

(2)如果节点u缓存中有采集的数据需要发送给Sink,则发送认证请求消息req-for-auth-msg,以便对移动Sink进行认证;否则,忽略移动Sink发送的info-gath-req-msg。

(3)如果移动Sink收到来自节点u的req-for-auth-msg,则发送认证回复消息rep-for-anth-msg,格式具体如下:

rep-for-anth-msg = {u,Sink-ID,authRnd,MAC(u|Sink-ID|authRnd)}

authRnd= H(KTA-u|(1+ rndu),len)

其中authRnd是TA指派Sink向u执行第(1+ rndu)轮数据收集任务时预载在Sink中的认证信息,KTA-u和rndu对Sink是未知秘密参数;MAC(x)为消息验证码函数;H(var1,var2)表示采用安全的哈希算法对输入var1进行计算,取出长度为var2的比特信息作为输出结果。

(4)如果节点u收到来自移动Sink的rep-for-anth-msg,首先进行消息验证码检验,判断是否有传输错误。若无传输错误,则读取KTA-u和rndu,并计算H(KTA-u|(1+ rndu),len),与rep-for-anth-msg中的authRnd比较,若相等,表明该移动Sink确实是由TA指派执行新一轮数据收集任务。若验证通过,则发送数据报告消息info-reco-msg,将缓存中的数据DATA发送至Sink。发送完毕之后,更新rndu和共享密钥。否则,验证失败,不发送。

info-reco-msg的格式和rndu更新、密钥更新具体如下:

info-reco-msg ={Sink-ID,u,En(DATA,Ku-sink),MAC( Sink-ID|u|En() )}

rndu=rndu + 1

Ku-sink(new) = H(u|Sink-ID|Ku-sink|(1+ rndu)| KTA-u,len)

其中,En(x,y)為加密算法,x为待加密的数据,y为加密密钥。

(5)移动Sink收到来自节点u的info-reco-msg后,首先进行消息验证码检验,判断是否有传输错误。若无传输错误,则可使用共享密钥Ku-sink解密消息。

(6)TA从移动Sink获取来自节点u的info-reco-msg后,进行消息完整性检验并更新rndu、移动Sink与u的共享密钥,具体方法与u的更新操作一致。

3.3 安全性分析

假设移动Sink被攻击者捕获后,通过复制移动Sink进行主动攻击和被动攻击。

对于主动攻击,由于被复制的移动Sink对authRnd信息未知,因此发送的认证回复消息rep-for-anth-msg无法通过普通节点的认证。即本文方案可以抵御基于复制的移动Sink发起的主动数据收集攻击。

对于被动攻击,假设攻击者想窃听移动Sink与u交互的信息,由于发送的数据报告消息info-reco-msg采用了新的Ku-sink进行加密,攻击者无法通过旧Ku-sink的解密出DATA,只能通过获取新的Ku-sink来解密消息。而Ku-sink更新依赖KTA-u和rndu,即使攻击者猜测出rndu,对KTA-u信息也未知,因此无法计算出新的Ku-sink。即本文的方案也可以抵御基于复制的移动Sink发起的被动数据收集攻击。

4 结束语

在UWSN中,为了防御攻击者通过捕获移动Sink,窃取秘密信息之后发起移动Sink复制攻击,本文提出了一种容忍移动Sink捕获的轻量级的安全数据收集防御机制,克服了已有方案中特权可复制性问题并能有效防御基于被捕获移动Sink发起的数据窃取攻击,而且引入的存储开销很小,仅需每个普通节点额外存储一个对称密钥和一个计数值。

参考文献:

[1] 张旭彬, 刘志宏. 无线传感器网络及移动sink安全[J]. 计算机科学, 2013, 40(11A):4-7.

[2] Liu Zhihong, Ma Jianfeng, Park YoungHo, et al. Data Security in Unattended Wireless Sensor Networks with Mobile Sinks[J]. Wireless Communications and Mobile Computing, 2012, 12(13):1131-1146.

[3] Liu Zhihong , Ma Jianfeng , Huang Qiping , et al. Asymmetric Key Pre-distribution Scheme for sensor networks[J]. IEEE Transactions on Wireless Communications, 2009, 8(3):1366-1372.

[4] Leighton T , Micali S . Secret-Key Agreement without Public-Key Cryptography[C]// Proceedings of the 13th Annual International Cryptology Conference on Advances in Cryptology, 1993. London, UK: Springer-Verlag, 1994:456-479.

【通联编辑:梁书】

猜你喜欢
数据收集
电力企业管理信息系统的建设探讨
浅谈计算机技术在电力系统自动化中的应用
浅谈公路工程项目竣工资料整理常见问题及解决措施
基于全集成自动化的能耗监控管理系统设计