论文部分内容阅读
LoRaWAN协议是一种低功耗广域网协议。网络由终端、网关、网络服务器、应用服务器四部分组成。网络服务器负责管理网络运行,并面向应用服务器构成网络应用。在网络安全方面,原LoRaWAN协议采用预配置密钥AppKey衍生“网络服务器与终端通信的网络会话密钥NkwSKey”、“应用服务器与终端通信的应用会话密钥AppSKey”的密钥方案保护网络安全。这种密钥管理机制导致会话密钥无法更新、应用服务器不能直接与终端建立会话密钥等诸多问题。因此,本文旨在提出一种针对LoRaWAN的密钥管理方案,提高网络安全性,主要工作如下:1.设计一种针对LoRaWAN的矩阵与多密钥空间密钥管理方案,主要解决了三方面网络安全问题:该方案能完全遵循LoRaWAN规定的入网申请及回复报文格式完成密钥协商,并建立AppSKey及NwkSKey;该方案融合了Blom方案及矩阵和多密钥空间方案的优势,提高了网络生存能力,使得网络即使被攻击者捕获了大量终端也能保证网络的安全运行;该方案通过引入AppCode及NwkCode两个参数,使得应用服务器和网络服务器都能独立的与终端生成会话密钥。分析表明:该方案能够抵御暴力攻击、主密钥及硬件分析攻击、中间人攻击、重放攻击。2.由于原LoRaWAN协议无法支持会话密钥的更新,且由于LoRaWAN网络的终端普遍以服务器无法主动发送数据的A类模式运行,对终端的密钥撤销与更新形成了阻碍。本文设计了一种通过LoRa物理层独有的CAD功能,利用超长前导码数据包对网络终端进行唤醒的方式,实现密钥的更新。3.在以STM32L053为主控芯片和SX1276为射频芯片的LoRaWAN终端、网关硬件设备上对本方案进行了实现,并在测试验证系统中,对方案进行测试验证。加入本文设计的密钥更新功能后,与原LoRaWAN协议搭建的网络相比:连续运行1min、5min后,本方案通信交互数据总量分别减少4字节、6字节,连续运行1周后,本方案增加518字节。计算开销方面,本方案密钥建立计算时延为4.8ms,密钥更新计算时延为0.84ms。存储开销方面,安全功能代码占整体代码的3.6%,安全功能变量占整体变量的6.1%。因此本方案能很好的运行在LoRaWAN网络中。