发明名称 一种基于桥式的无线传感网密钥管理方案
摘要 本发明涉及一种基于桥式的无线传感网密钥管理方案,包括一些步骤:一、密钥预分配:节点部署前由启动服务器将配置信息预置到每个传感器节点;二、成簇阶段:选择出簇头节点后,成簇阶段随即开始。在成簇过程中,每个传感器节点加入到距离自己最近的簇中;三、邻居节点发现阶段:每个传感器节点通过夹角计算公式决定是否记录其他节点为自己的邻居节点;四、簇内配对密钥的建立:在此过程中每个传感器节点通过桥式计算出它和其邻居节点的配对密钥;五、簇间配对密钥的建立:在此过程中每个簇头节点通过对称二元多项式计算出它和其他簇头节点的配对密钥。本发明在保证一定连通率的情况下,能保证信息传递的安全性和有效性,较好的节省了内存存储量。
申请公布号 CN103731825A 申请公布日期 2014.04.16
申请号 CN201310710697.7 申请日期 2013.12.20
申请人 北京理工大学 发明人 郑军;赵芳芳;郭先臣;徐三春
分类号 H04W12/04(2009.01)I 主分类号 H04W12/04(2009.01)I
代理机构 代理人
主权项 1.一种基于桥式的密钥管理方案,包括以下步骤: 一、密钥预分配: 本阶段在所有传感器节点部署前由启动服务器实施,包括以下步骤: 1).部署前,启动服务器根据传感器节点的数量以及部署区域的范围决定簇的数量,并为每个传感器节点预置唯一的身份标识,私钥,系统初始密钥以及哈希函数H<sub>1</sub>和H<sub>2</sub>; 2).基站选择F<sub>q</sub>上的t阶随机对称二元多项式 <img file="FDA0000442752690000011.GIF" wi="760" he="114" />式中:a<sub>mn</sub>∈F<sub>q</sub>是二元多项式的系数;相应的,每个簇头节点h获得自己个人密钥<img file="FDA0000442752690000014.GIF" wi="253" he="68" />3).每个簇头节点h将被分配相应的组密钥<img file="FDA0000442752690000012.GIF" wi="100" he="71" /><img file="FDA0000442752690000013.GIF" wi="349" he="78" />二、成簇阶段 传感器节点部署后,簇头选择阶段和成簇阶段开始实施,簇头选择阶段选择出每个簇的簇头节点,成簇阶段包括以下步骤: 1).每个簇头节点记录其他簇头节点的身份标识,并向基站发送自己的身份标识; 2).基站向每个簇头节点发送相应的个人密钥和组密钥; 3).每个簇头节点通过GPS获得自己的位置,并且向周围的传感器节点广播一个‘Hello’消息;根据接收的信号强度指示,每个接收到‘Hello’消息的传感器节点获得距离自己最近的簇头节点的位置,并且加入该簇头所在的簇;在成簇阶段,如果存在传感器节点没有接收到任何‘Hello’消息,那么该节点可以广播一个自举消息以获得距离它最近的簇头节点; 4).每个簇头节点记录它的所有成员节点的身份标识,并且向基站发送,本阶段结束后,网络被划分成多个簇的集合; 三、邻居节点发现阶段 传感器节点u首先初始化一个定时器T<sub>min</sub>来激活该阶段,本阶段包括以下步骤: 1).节点u广播一个‘Hello’消息BM<sub>u</sub>; <img file="FDA0000442752690000027.GIF" wi="786" he="63" />2).接收到消息BM<sub>u</sub>的传感器节点v向节点u发送确认消息AckM<sub>v</sub>; <img file="FDA0000442752690000028.GIF" wi="1181" he="69" />3).如果节点v的确认消息通过认证,那么节点u计算基站,节点v以及它自己之间的夹角θ,如果θ小于等于45°,节点u将记录v的身份标识到它的邻居节点列表,否则丢弃v的身份标识,这样做的目的是为了节省节点内存消耗,并且使节点更快更有效的将信息传送到基站;夹角计算示意图如图5所示。 4).定时器超时时,如果还有节点的邻居节点列表为空,降低夹角小于等于45°的限制,以使这些节点的列表不为空; 四、簇内配对密钥的建立 网络部署后,时间被随机分成各个时间段,第一个时间段为T<sub>0</sub>,第二个为T<sub>1</sub>,以此类推,在T<sub>0</sub>阶段,每个传感器节点和它们的邻居节点建立配对密钥,配对密钥建立过程中,基站负责广播本簇成员的公钥以及椭圆曲线的基点P; 1).节点u向它的邻居节点广播一个包含ID<sub>u</sub>和<img file="FDA0000442752690000029.GIF" wi="67" he="57" />的消息,该消息被系统初始密钥加密;<img file="FDA0000442752690000021.GIF" wi="400" he="71" />2).接收到消息的邻居节点v解密该消息获得ID<sub>u</sub>和<img file="FDA0000442752690000022.GIF" wi="98" he="71" />并且向节点u发送包含ID<sub>v</sub>和<img file="FDA0000442752690000023.GIF" wi="72" he="71" />的确认消息,接着计算它和u的配对密钥k<sub>vu</sub>;<img file="FDA0000442752690000024.GIF" wi="396" he="71" /><img file="FDA0000442752690000025.GIF" wi="1462" he="393" />3).接收到确认消息的节点u解密该消息获得ID<sub>v</sub>和<img file="FDA0000442752690000026.GIF" wi="92" he="71" />接着计算它和节点v的配对密钥k<sub>uv</sub>:<img file="FDA0000442752690000031.GIF" wi="1465" he="384" />因此,每对传感器节点u,v能共享一个配对密钥; 4).在配对密钥建立后,每个传感器节点更新系统初始密钥,然后丢弃系统初始密钥,簇头节点和传感器节点的配对密钥建立过程与簇内配对密钥的建立过程相同: <img file="FDA0000442752690000032.GIF" wi="284" he="77" />五、簇间配对密钥的建立 在T<sub>0</sub>阶段,每个簇头节点和其他簇头节点建立配对密钥,配对密钥建立过程中,基站负责广播椭圆曲线的基点P; 1).簇头节点h随机生成临时值<img file="FDA0000442752690000033.GIF" wi="178" he="84" />接着向其他簇头节点广播一个包含<img file="FDA0000442752690000039.GIF" wi="107" he="66" />和t<sub>h</sub>P的消息;2).接收到该消息的另一簇头节点y解密该消息得到<img file="FDA00004427526900000310.GIF" wi="104" he="67" />和t<sub>h</sub>P,它也随机生成临时值<img file="FDA0000442752690000034.GIF" wi="181" he="84" />并向簇头节点h发送包含<img file="FDA00004427526900000311.GIF" wi="104" he="69" />和t<sub>y</sub>P的确认信息,接着计算它和簇头节点h的配对密钥<img file="FDA00004427526900000312.GIF" wi="143" he="69" /><img file="FDA0000442752690000035.GIF" wi="676" he="104" />3).接收到确认信息的簇头节点h解密该消息得到<img file="FDA0000442752690000036.GIF" wi="104" he="80" />和t<sub>y</sub>P,接着计算它和簇头节点y的配对密钥<img file="FDA0000442752690000037.GIF" wi="145" he="81" /><img file="FDA0000442752690000038.GIF" wi="587" he="82" />4).在配对密钥建立后,每个簇头节点更新系统初始密钥,然后丢弃系统初始密钥; 六、密钥更新/撤销阶段 任何不提供密钥更新和密钥撤销的管理方案都不是完整的密钥管理方案。网络中的节点如果不经常更新密钥,那么它很容易被攻击者捕获。另外,为了继续进行网路的日常操作,被捕获节点的密钥需要被及时撤销。在本发明中,网路的生存期被划分为一系列时间间隔。在每个时间间隔T<sub>i</sub>内,所有节点需要更 新<img file="FDA0000442752690000041.GIF" wi="88" he="77" />和<img file="FDA0000442752690000042.GIF" wi="113" he="78" />更新完成后删除<img file="FDA0000442752690000043.GIF" wi="118" he="77" />在本发明中,基站负责被捕获节点或能量耗尽节点的回收工作。我们假设在入侵检测系统的帮助下,基站能及时检测出失败节点。回收工作中,基站单独对每个簇实施密钥撤销操作。首先,基站将失败节点的密钥删除,并向该节点所在簇的簇头节点广播失败节点列表。接收到失败节点列表的簇头节点向簇内所有节点转播该信息。接收到消息的簇内节点首先检验失败节点是否在自己的邻居节点列表中,如果是则删除相应的失败节点,否则忽略该消息。 七、新节点的加入 在许多无线传感网的应用中,新节点需要加入已部署的无线传感网以代替能量耗尽或被捕获的节点。假设时间间隔为T<sub>i</sub>,一个新节点u想要加入网络。首先,启动服务器给节点u预配置唯一的身份标识,密钥,<img file="FDA0000442752690000044.GIF" wi="85" he="77" />以及其他信息。节点u加入网络前,基站需要确认其是否为非法节点。如果该节点的身份通过验证,那么它广播一个自举消息以获得距离它最近的簇头,并且加入该簇头所在的簇。接着它初始化一个定时器启动邻居节点发现阶段。在邻居节点发现阶段,首先,它向其他传感器节点广播一个‘Hello’消息,所有接收到该消息的节点向u返回一个确认信息。如果确认信息通过验证,那么节点u计算基站,发送确定信息的节点以及它自己三者之间的夹角。如果夹角小于等于45°,节点u记录发送确认信息节点的身份标识到自己的邻居节点列表中,否则丢弃该身份标识。当定时器超时时,如果节点u的邻居列表仍为空,则需重新初始化一个定时器启动该阶段,同时需要适时地降低夹角小于等于45°的限制,以使它的邻居节点列表不致为空。在下一时间间隔T<sub>i+1</sub>内,假设节点u想要与它的邻居节点建立配对密钥。配对密钥建立的详细计算过程如下所示: <img file="FDA0000442752690000051.GIF" wi="511" he="77" /><img file="FDA0000442752690000052.GIF" wi="511" he="81" /><img file="FDA0000442752690000053.GIF" wi="842" he="88" /><img file="FDA0000442752690000054.GIF" wi="840" he="86" /><img file="FDA0000442752690000055.GIF" wi="1612" he="238" /><img file="FDA0000442752690000056.GIF" wi="1614" he="239" /><img file="FDA0000442752690000057.GIF" wi="466" he="156" />其中,所使用的标识如表1所示: 表1标识符集 <img file="FDA0000442752690000058.GIF" wi="1880" he="1616" />
地址 100081 北京市海淀区中关村南大街5号