sTiki协议:受限传感器设备的互认证协议
1. sTiki协议概述
sTiki协议的设计与TinySAM类似,是一种应用层加密协议,采用AES - 128进行对称加密。为避免使用单一密钥导致网络易受节点捕获攻击,它结合了密钥服务器解决方案,使每个链路都使用自己的密钥进行加密。不过,这种方式也存在一些缺点:
- 存储与网络中每个节点交互的密钥会消耗大量内存,且使密钥分发变得极为复杂,尤其是在网络添加节点时。
- 密钥服务器解决方案会在网络中形成单点故障,容易成为攻击者的目标。但实际上,现有网络中本身就存在单点故障,即网络中的最后一个节点(称为sink),它与服务器通信,共同构成网关。
1.1 sTiki数据包头部
sTiki数据包总是以一个公共头部开始,包含以下内容:
- 一个魔术数字(magic number),用于区分加密和未加密的数据包,因为一些设备(如TelosB)可能由于资源有限而无法对数据进行加密。
- 一个指定sTiki内部协议(如握手、数据传输或警报)和子协议(如警报类型)的数字,用于确定数据包应转发到的位置。
1.2 会话密钥的建立
为了建立会话密钥,sTiki使用了ANOR(AN Otway - Rees)协议。每个节点都有一个用于与密钥服务器通信和认证的密钥,该密钥称为初始主密钥(IMK)。在节点启动时,从这个共享的IMK中派生两个密钥,一个用于计算MAC,另一个用于消息加密。
当节点A和B创建会话密钥KAB时,会执行以下步骤并发送四条消息:
1. 节点A发起握手,向节点B发送消息M1。该消息包含A的标识IDA、目的地的标识IDB,以及用KA
超级会员免费看
订阅专栏 解锁全文
1829

被折叠的 条评论
为什么被折叠?



