史晶
(咸阳职业技术学院,电子信息学院, 陕西, 咸阳 712000)
无线传感器网络作为多学科交叉的新型技术应用于军事、医疗、公共安全等众多领域,具有极大的应用价值。但由于受部署环境复杂且不受控、传感器节点资源受限、计算能力不足等因素影响,无线传感器网络很容易受到安全威胁,因此采用哪种安全机制提升网络安全性是急需解决的问题。根据密码学理论,密码系统的安全关键在于密钥的安全,科学合理的密钥管理对提升无线传感器网络安全、避免经济损失具有极为重要的现实意义。
无线传感器网络(Wireless Sensor Networks,WSN)集成了传感器、微机电、无线通信、嵌入式等多门高端技术,由微型传感器节点根据自治组网的方式形成无线网络。与传统的通讯网络相比,具有规模大、自组织、无中心、任务型网络等特点。网络拓扑根据规模及节点能量分为分簇网络、对等网络。分簇网络中存在2种节点,一种是负责协调的管理节点,一种是负责采集与传输的普通工作节点,管理节点和与其相邻的工作节点合起来为一个簇;对等网络中各节点资源一致,均可与相邻节点通讯,均要保存路由信息,更利于扩展。
网络安全是确保数据从采集、传输、处理到应用的基础,受无线传感器网络自身特点所限,网络容易受到攻击与威胁,大致可以分为物理攻击、路由攻击、Sybil攻击、污水池攻击、DoS攻击、泛洪攻击、Wormholes攻击等几类[1-2]。
针对无线传感网络的特性以及容易受到的攻击与安全威胁,目前主流的安全机制包括信息加密、管理密钥以及安全路由协议等。
(1) 信息加密:常见的包括对称密码算法、非对称密码算法。受制于节点存储空间和计算能力,加密算法中RC5、RC6、轻量ECC以及非对称加密算法都有广泛应用。
(2) 管理密钥:从生成、分发、交换三个方面对密钥进行管理,定位恶意节点减少信息泄露,包括随机预分配机制、预安装机制等。
(3) 安全路由协议:由于缺少专用路由设备,每个节点都既充当采集方又充当转发方,因此必须寻求安全路由。常用的包括TRANS协议、SEIF协议、INSENS协议、多路径协议等。
密码学是通过复杂的函数对信息进行转换保证初始数据的安全可靠,若函数E拥有参数K且具备不可逆特性,即可称为密码函数,K即密钥。利用密码函数对信息m进行转换获得密文c,这个E(K,m)=c的过程即为加密。与之相对应,解密函数D是加密函数E的逆运算,这个m=D(K,c)的过程即为解密。最常用的是对称密码算法和非对称密码算法。
(1) 对称算法:对称算法采用对称密钥机制,算法简单、计算量小、运算速率快,但分发机制不好实现。常见的有DES算法、AES算法等。
(2) 非对称算法:非对称算法采用非对称密钥机制,运算速率不高,但加密强度更高、分发机制简单。常见的有RSA算法、ECC算法等[3]。
散列函数主要是将长度不等的输入值转化为固定长度的散列值,属于一种压缩映射术手段,在信息安全方面的主要应用包括文件校验、数字签名等。文件校验可以检测并订正信道中的错误码,常见的算法有CRC校验、奇偶校验;数字签名可以对数据进行密码转换,属于防篡改、防冒充的技术手段,常见的算法有RSA、DSA、ELGamal、椭圆曲线等。
SPINS协议包括SNEP和μTESLA两部分,SNEP是基于可信基站S的,在部署之前所有节点预存与可信基站共享的密钥,如果节点A要与B通信,则请求发给B之后,B与S通信,由S生成A与B之间的会话密钥并进行分发,以此建立AB会话通道。这种方案计算量小,存储开销小,但过于依赖可信基站,比较适合规模稍小的网络。μTESLA利用单项散列函数延迟认证广播数据报文,使攻击者难以得到最新密钥,但由于是非实时认证,容易遭受DoS攻击。
E-G方案属于基于随机概率的预分发方案。核心是将密钥管理分为密钥预分配、共享密钥直接协商、共享密钥间接协商三个阶段。研究的主要参数是密钥池M和密钥环K的大小,如果要提升安全联通率,则需增加K或降低M;如果要提升网络抗破坏性,则要降低K增加M。如何寻求平衡是很大的技术挑战。该方案采取随机分卡,容易实现,计算量小,但确定性方面无法保证。
q-composite方案基于上一章节的E-G方案,但研究参数多了一个q,相邻节点检查密钥环的时候一定要存在q个一样的共享密钥才可以建立连接。攻击方俘获单个节点的情况下,基于该方案这一特性,对网络的冲击大幅降低,安全性更高。
针对E-G方案中相邻节点间的共享密钥同时分配给其他节点的缺陷,研究人员提出了多路径增强方案,假设节点A、B存在j条链路,则A产生j个随机值,通过j条链路发给B,B接收到随机值之后生成配对密钥,只有俘获全部随机值才能进行破译,显著提升网络安全。
Blom方案主要是利用对称矩阵生成一类对密钥分配方案,实现节点与相邻的任意节点独立计算对密钥。部署之前在可信域内生成(t+1)*N的矩阵G,然后选定任意的(t+1)*(t+1)的只有可信服务器知道的对阵机密矩阵S,构成密钥空间组合(S,G),转置得到A=(DG)T,最后将A的第j行元素与G的第j列元素配给任意一个节点,以此利用机密矩阵S的对称性来实现对密钥[4]。
通过对无线传感器网络的拓扑结构以及容易遭受的攻击进行分析得到通过密钥管理提升网络安全是比较简便的方式。传统的密钥管理方案及协议都有各自的优点以及缺陷,为了安全性提升最大化,本文设计了一种基于散列链改进的混合密钥管理机制。因为无线传感器网络的基本单元是节点,既包括Coord节点(协调全功能),也包括RFD节点(精简功能),本文提出的管理机制核心思想是将网络划分为多个部分,利用多边形中任意2个顶点相连可变为对角线或多边形的理论,将每个边及对角线作为密钥,设n代表节点数量,q代表多边形顶点数量,划分成的每个部分最多可以存在(q*q-q)/2个节点,以此实现密钥管理。
分发之前密钥池需具备2个散列函数H、H2,形成多条散列链,生成各个链密钥的验证值,散列链之间一一对应,以完成链密钥的认证。在网络形成时,利用ECC加密算法计算Coord节点的密钥及公钥,以n=10,q=5为例,Coord节点生成密钥从一到五分配给五个顶点,并生产公共密钥(5个密钥进行异或运算产生),Coord节点将顶点密钥和公钥加密后分发至所有的RFD节点,RFD节点收到后利用公钥进行解密得到各自的边密钥。组内节点使用公钥通信,若两个节点间需要私密通信,则需建立会话密钥。整个过程如图1所示。
图1 网络形成时密钥分发过程
当节点间不能通过密钥建立连接的时候,可以利用辅助节点。设节点U将数据加密后利用辅助节点F的共享密钥再次加密,发送给F解密之后再通过与另一节点V的共享密钥加密U加密后的数据,如此,V则可进行解密。
4.3.1 节点加入更新
RFD节点加入分为2种情况,整体流程如图2所示。
图2 节点加入时密钥更新流程
(1) 加入之前节点总数小于(q*q-q)/2时,Coord节点验证身份后不合规则拒绝,合规则将闲置的边或对角线的密钥分配给新节点即可,并将公钥也发给该节点。
(2) 加入之前节点总数等于(q*q-q)/2时,此时节点数量已达上限,Coord节点验证身份合规后由于没有闲置边可分配,需要更新调整q的值,重新形成新的顶点密钥、边密钥,并给所有节点重新分配相关密钥[5-6]。
4.3.2 节点退出更新
节点退出时也需要对公钥以及边密钥进行更新以确保网络安全,Coord节点需要生成新的公共密钥,同时生成退出的节点的边密钥,并进行更新分发。
密钥管理方案最关键的评价指标即节点之间的安全连通性。为验证本文改进的管理机制的实际效果,进行了假设分析。其中,由于存在被俘节点,数据转发跳数会增加,在此假设跳出小于等于1,辅助节点通讯半径R,普通节点通讯半径r,R≥r,普通节点间距离x(x≤r),则普通节点U、V间的安全连通率计算如下。
(1)U和V之间至少共享一个验证值的概率PUV为
(1)
有i个共享验证值时概率为
(2)
(3)
(3) 任意普通节点可拥有的平均辅助节点数λa为
λa=E(s×p(N辅U=s))=ρaπR2
(4)
(4) 在U与V的公共辅助区域中,至少包含1个辅助节点才可以建立安全通讯链路,联通率计算公式为
(5)
本文分析了无线传感器网络的特性以及容易受到的攻击类型,对典型的无线传感器网络密钥管理方案及协议进行研究,提出了一种基于散列链改进的密钥管理机制,利用多边形的顶点、边、对角线之间的关系对网络进行划分,既满足安全要求,又缩减计算量。但在入侵检测以及节点老化计算方面还需进一步寻求最优算法。