论文部分内容阅读
随着半导体技术、微系统技术、通信技术、计算机技术、自动控制和人工智能等技术的飞速发展孕育了一种新型的测控网络——无线传感器网络。ZigBee是无线传感器网络技术之一,ZigBee协议是专用于无线传感器网络的通信协议,并且成为了无线传感器网络的首选网络协议。本文在了解ZigBee技术的背景、协议构架,协议栈结构包括应用层、网络层、MAC层和PHY层的基础上。主要研究了ZigBee协议的安全层,其数据的安全采用基于AES-128加密算法的CCM~*模式,研究了AES-128加密算法原理,并采用C语言编程在VC6.0环境下调试与AES-128标准给出的例子比较,验证编写代码正确性,并将其应用在CCM~*模式中,同样经过VC6.0环境下调试验证其正确性。其密钥的建立使用SKKE协议,仔细研究了SKKE协议中使用的HMAC算法,在明白原理的基础上用C语言编程实现此算法。并在理论基础上组建了ZigBee开发平台。硬件平台主要由微控制器和射频模块两部分组成,微控制器采用ATmega128L,RF模块采用CC2420。微控制器采用RS-232串口总线与PC机相连,显示测试结果,用JTAG进行程序下载和仿真,微控制器通过SPI接口与CC2420芯片进行通信。在系统软件设计方面,利用现有协议栈和部分源代码,编写了ZigBee协议栈的安全层源代码包括基于CCM~*模式的数据安全和基于SKKE协议的建立钥匙过程。数据安全主要在应用层和网络层实现了数据的加密和解密;而建立钥匙是在设备要安全加入网络时实现的,还编写了SPI接口程序、串口程序和部分射频收发程序等。基于此平台实现的ZigBee协议栈功能有:网络的建立,设备安全加入网络和设备间安全通信。通过网络的建立、对A/D采集的数据进行加密和解密,取得了测试结果,证实了编写的协议栈源代码的正确性。