首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于可重构的可信SOPC平台的WSN安全系统之二

基于可重构的可信SOPC平台的WSN安全系统之二

 3.3 增强WSN网络内节点的抗篡改能力


  传感器节点大都布置在非受控区域(如布置在敌方控制区域内等),一旦节点被捕获后,内部存储的数据尤其是通信密钥泄露出去的话,会威胁整个网络的安全。本系统在保证通信安全的基础上增加了防篡改检测电路,一旦检测到敌方欲窃取里面存储的密钥等重要信息时,则立即将数据清零,从而增强了网络的安全。

  4 系统原理与实现

  4.1 WSN网络的原理与实现



  本系统采用的通信协议如图5所示,DDL层以下采用IEEE802.15.4协议,网络层以上根据系统自定义通信协议。

                                                                          图5 WSN网络通信协议

  系统网络层协议的实现是基于XILINX公司的8位CPU软核PicoBlaze,用汇编语言编写模块控制部分,帧协议的分析用硬件实现。

  4.2 网络节点的原理与实现


  系统的总体设计如图7所示。系统主要由4部分构成:中心控制器,数据传输控制器,安全模块(TPM), 外围模块。

                                                                          图6 网络节点的总体设计图

  4.3 中心控制器

  4.3.1 中心控制器总体结构



  中心控制器是整个系统的控制中心,接受无线收发模块,数据采集模块,TPM模块和数据传输控制器的命令,并根据命令的内容控制各个模块之间的协调工作。

                                                                         图7 中心控制器框图

  4.3.2 中心控制器具体实现


  传感器节点在不同时刻扮演不同的角色,如系统初始化过程中传感器节点需要等待四个密钥的输入,在基站工作模式下需要分发密钥协议相关包,在终端节点工作模式下需要接受密钥协议包和采集数据并且发送给基站,因此中心控制器根据节点的工作状态选择信号,重构为不同的工作模式。中心控制器的工作模式有:初始化工作模式,基站工作模式和终端节点工作模式。

  4.4 TPM模块

  4.4.1 TPM模块总体设计



  TPM模块总体设计图如图10:主要包含模式选择控制器,RC5加密模块,MD5模块,比较器模块,随机数产生器模块,篡改响应模块,密钥存储区。

                                                                            图8 TPM结构图


  4.4.2 模式选择控制器


  模式选择控制器根据中心控制器的模式选择命令,配置TPM成相应的工作模式后进入正常工作状态。

  4.4.3 RC5加密模块

  本系统用硬件实现了RC5-16/1/4,该模块的为了提高加解密速率采用了流水线的设计方法,如图11所示,首先输入32位密钥,22个周期之后扩展密钥计算完成,输入32位的明文,经过运算得到32位的密文。

                                                                     图9 RC5加密模块

  4.4.4 MD5模块


  MD5模块(图12)主要由三部分构成:数据读入模块,数据读出模块和数据处理模块。

                                                                              图10 MD5模块

  4.5 外围模块


  外围硬件电路的设计使用了三个Xilinx提供的Picoblaze核,系统总体结构图如图13所示。

                                                                             图11 外围电路设计图

  5 测试方案

  5.1 密钥管理协议测试方案



  为了验证系统的密钥管理协议中在测试密钥管理协议时,我们从以下几个方面验证:

  a) 四个密钥和ID基的注入正确

  四个密钥和ID基是后面密钥协议相关包运算的原始数据,故如果可证明后面的结果正确则可得证前面的结果正确

  b) 验证K子的正确性

  因为初始包的数据是经过K子加密后的结果,为了验证 K子的正确性,我们查看下一步的初始包的数据正确与否即可得知。

  c) 验证初始包的正确性

  为了验证初始包的正确性,在电脑上接上一个无线收发模块,用来接受节点和基站发送出来的消息。然后用已知的KT0和K0来算出相应的初始包的内容,和接受到的数据进行比对即可得知初始包的内容正确与否。

  d) 验证TESLA 密钥包的正确性

  接受到两次的TESLA包,算出Ki,然后用算出相应的TESLA 密钥包,和接受到的密钥包进行比对,即可知道密钥包分发正确与否。

  e) 验证通信密钥Ki正确更新

  为了验证通信密钥的正确更新,可以在不同时段使终端节点发送相同的数据,如果接受到的数据不同则说明密钥发生了更新,为了验证密钥的正确更新则算出两个时段发送的数据的正确内容,和接受到的内容进行比较即可知道通信密钥是否正常更新。

  5.2 可重构功能的测试方案

  为了测试可重构功能,可以将原来网络中的基站关闭,等待一段时间之后看网络内是否有节点重构为基站,重构为基站后正常工作的验证办法同密钥管理协议的测试方案。

  5.3 可信平台的测试方案


  当发现敌手入侵时,clear信号为高,所有密钥清零,为了验证其正确性,以后发送的密钥协议相关包用到的各种密钥均为零,将计算结果和接受到的数据进行比对即可知道其正确与否

  6 结束语

  本系统创新性的将可信平台理论和可重构机制引入WSN系统安全中,依托WSN通信协议和SPINS网络密钥管理协议,实现一种从点到面,点面结合的安全机制。系统方案不强调加解密算法的复杂性,着重于方案的灵活性,健壮性。

  展望未来技术的发展,基于FPGA的动态可重构技术以及可重构密码芯片理论,本系统还可以实现加解密算法的动态调整,工作模式的切换更加快捷,以适合不同情景下的安全需求。
记录学习中的点点滴滴,让每一天过的更加有意义!
返回列表