1、普通高等教育物联网工程类规划教材第三章第三章 物联网的密钥管理物联网的密钥管理3.1 密钥管理类型3.2 密钥管理安全问题及安全需求3.3 全局密钥管理方案3.4 随机密钥预分配方案3.5 基于矩阵的密钥管理方案3.6 基于EBS的密钥管理方案3.7 LEAP协议和SPINs协议3.8 适用于WIA-PA标准的密钥管理方案3.1 密钥管理类型密钥管理类型密钥管理类型3.1 密钥管理类型密钥管理类型1.基于对称密码体制和非对称密码体制的密钥管理特点:q 密钥长度不长q 物联网节点设备的计算开销相对较小q 对微处理器的存储开销要求相对较低q 物联网节点设备之间的通信开销相对较低而非对称密码体制是基
2、于数据函数的复杂度而不是基于代替和置换的方式来保证明文信息的安全。3.1 密钥管理类型密钥管理类型2. 分布式密钥管理和层次式密钥管理 在分布式密钥管理方案中,传感器节点具有相同的计算、存储和通信能力,物联网节点间密钥的协商和更新是通过使用预配置的密钥材料和密钥协商协议相互协作来完成的。 层次式密钥管理方案更多的专注于将网络进行层次式划分来实现密钥的管理,即依据角色和功能强弱的不同,将物联网节点分为全功能设备(Full Function Device, FFD)和精简功能设备(Reduced Function Device, RFD),以FFD为核心,实现密钥的预分配、协商、更新和撤销等工作。
3、63.1 密钥管理类型密钥管理类型3. 静态密钥管理和动态密钥管理 在静态密钥管理中,由基站(安全管理者)为传感器节点预配置一定数目的密钥,传感器节点被部署在物联网中后,通过密钥协商协议完成通信密钥的建立,该通信密钥在整个网络运行期间不进行更新和撤销过程。 在动态密钥管理中,密钥拥有自己的生命周期,即密钥周期性进行分配、建立、更新和撤销等操作。3.1 密钥管理类型密钥管理类型74. 随机密钥管理和确定性密钥管理 在随机密钥管理中,密钥的协商是随机性的;确定性密钥管理方案则不同于随机密钥管理方案,密钥环或密钥空间的选取是固定的。5. 混合型密钥管理方案 将两种或两种以上的密钥分配特性混合起来的密
4、钥管理方案称为混合型密钥管理方案。第三章第三章 物联网的密钥管理物联网的密钥管理3.1 密钥管理类型3.2 密钥管理安全问题及安全需求3.3 全局密钥管理方案3.4 随机密钥预分配方案3.5 基于矩阵的密钥管理方案3.6 基于EBS的密钥管理方案3.7 LEAP协议和SPINs协议3.8 适用于WIA-PA标准的密钥管理方案3.2 密钥管理安全问题及安全需求密钥管理安全问题及安全需求9安全问题依据通信方式的不同,密钥管理的安全问题分为:对密钥管理问题和组密钥管理问题。1.对密钥管理问题 如何保障通信双方建立可靠的对密钥,如何确定通信双方的身份以及如何安全地撤销和更新对密钥。2.组密钥管理问题
5、如何满足不同的组成员数量、行为(加入或撤销)以及地理分布等多种需求,能否抵抗来自非法节点的攻击,保障网络的前向安全性和后向安全性。103.2 密钥管理安全问题及安全需求密钥管理安全问题及安全需求安全需求 结合物联网感知层的特性,密钥管理方案应该满足以下几种安全需求:真实性(Authenticity)机密性(Confidentiality)完整性(Integrity)可扩展(Scalability)灵活性(Flexibility)第三章第三章 物联网的密钥管理物联网的密钥管理3.1 密钥管理类型3.2 密钥管理安全问题及安全需求3.3 全局密钥管理方案3.4 随机密钥预分配方案3.5 基于矩阵的
6、密钥管理方案3.6 基于EBS的密钥管理方案3.7 LEAP协议和SPINs协议3.8 适用于WIA-PA标准的密钥管理方案123.3 全局密钥管理方案全局密钥管理方案 BROSK(Broadcast Session Key Negotiation Protocol) 协议以预配置主密钥(全局密钥)为基础,确保每个传感器节点与其邻居节点能够协商出会话密钥。协议分为三个阶段:假设网络初始化会话秘钥的建立133.3 全局密钥管理方案全局密钥管理方案1. 假设q 传感器节点的资源有限q 传感器节点是静止的或者有较低的移动能力q 每个传感器节点共享一个主密钥K,并且该主密钥K是绝对安全的2. 网络初始
7、化q 由安全管理中心(Security Operation Center,SOC)为所有传感器节点预配置主密钥143.3 全局密钥管理方案全局密钥管理方案3. 会话秘钥的建立 每个传感器节点向自己的邻居节点广播密钥协商消息,该消息的格式为:IDi|Ni|MACK(IDi|Ni), 一旦节点收到其邻居节点的密钥协商消息,其依据自身产生的随机数和邻居节点产生的随机数产生会话密钥。IDi:节点i的身份信息Ni:节点i产生的随机数MACK(IDi|Ni):使用主密钥K产生信息IDi|Ni的消息鉴别码(Message Authentication Code,MAC)|表示字符串连接符。第三章第三章 物联
8、网的密钥管理物联网的密钥管理3.1 密钥管理类型3.2 密钥管理安全问题及安全需求3.3 全局密钥管理方案3.4 随机密钥预分配方案3.5 基于矩阵的密钥管理方案3.6 基于EBS的密钥管理方案3.7 LEAP协议和SPINs协议3.8 适用于WIA-PA标准的密钥管理方案163.4.1 随机预随机预共享方案共享方案E-G方案 随机密钥预分配方案,亦称E-G方案。E-G方案的主要思路是:在WSNs完成部署前,由安全管理者从一个大的密钥池P中随机选出k个密钥构成密钥环,并将该密钥环加载到传感器节点中。 节点使用共享密钥(至少1个)来建立会话密钥。如果两节点没有共享密钥密钥,那么将通过路径密钥阶段
9、协商会话密钥。3.4.1 随机预随机预共享方案共享方案17E-G方案建立过程q 密钥预分配阶段q 共享密钥发现阶段q 径密钥建立阶段q 密钥的撤销路径密钥建立过程 对路径密钥建立过程做详细描述:节点A欲与节点E进行通信,但是它们之间又没有共享密钥。而节点B与节点A存在共享密钥,节点B与节点E也存在共享密钥,那么节点B即可作为密钥分发中心,为节点A和节点E建立会话密钥KAE,并以KAB和KBE加密KAE的方式分别发送给节点A和节点E。183.4.2 q-composite随机预共享方案随机预共享方案q-composite随机预共享方案 q-composite方案建立在E-G方案的基础上,该方案要
10、求两节点之间的共享密钥个数至少为q个。方案的实施过程q 密钥的生成q 共享密钥的发现q 通信密钥的计算 用Hash函数根据以下公式计算得到通信密钥,Hash函数的自变量顺序是预先设定的。 12(|)qKHash KKK第三章第三章 物联网的密钥管理物联网的密钥管理3.1 密钥管理类型3.2 密钥管理安全问题及安全需求3.3 全局密钥管理方案3.4 随机密钥预分配方案3.5 基于矩阵的密钥管理方案3.6 基于EBS的密钥管理方案3.7 LEAP协议和SPINs协议3.8 适用于WIA-PA标准的密钥管理方案203.5 基于矩阵的密钥管理方案基于矩阵的密钥管理方案 Blom方案主要采用对称矩阵和范
11、德蒙行列式的特性,完成对密钥的建立。从理论上来讲,该方案能够在任意两个传感器节点之间建立唯一的对密钥,并且该对密钥的安全阀值为 (安全阀值 表明只要网络中有不超过 个节点被捕获,任意两个节点之间的对密钥都是安全可靠的;反之,若超过了 个传感器节点被捕获,网络将不再绝对安全)。Blom方案主要分为三个阶段q 初始化阶段q 密钥材料预分配阶段q 对密钥建立阶段。 3.5 基于矩阵的密钥管理方案基于矩阵的密钥管理方案211. 初始化阶段 a.安全管理者构建一个 的范德蒙矩阵G; b.安全管理者在有限域GF(q)内随机产生一个 的对称矩阵D,并依据矩阵G计算对称矩阵A,即 。2. 密钥材料预分配阶段
12、将矩阵G的第i列和矩阵A的第i行存储于节点i的存储单元内。3. 对密钥建立阶段 若节点i和节点j进行通信,首先交换各自存储的矩阵G的信息,节点i计算 ,节点j计算 。1NTAD G 11ijijk AGjijik AGijjikk第三章第三章 物联网的密钥管理物联网的密钥管理3.1 密钥管理类型3.2 密钥管理安全问题及安全需求3.3 全局密钥管理方案3.4 随机密钥预分配方案3.5 基于矩阵的密钥管理方案3.6 基于EBS的密钥管理方案3.7 LEAP协议和SPINs协议3.8 适用于WIA-PA标准的密钥管理方案233.6 基于EBS的密钥管理方案数学定义 选定参量n,k和m,且参量满足k
13、1,nm的关系。EBS(n,m,k)是一个三元组集合 ,集合 中的元素是 中的子集 , ,t 满足以下两条性质: (1) t最多是集合 中的k个子集; (2) 集合 中恰好有m个子集: ,使得这些元素的并集满足 ,即任意节点成员t都可以恰好被m个集合剔除掉。 1,1,2,.,nn1,tn 12,mA AA, 11,miiAnt243.6 基于EBS的密钥管理方案方案介绍 在EBS方案中,规定了两类密钥类型:管理密钥和通信密钥。 管理密钥:用于WSNs系统的初始化配置、会话密钥的建立、密钥的更新和撤销; 通信密钥:用于保证组内成员节点之间的通信安全。 基于上述的定义和性质,EBS方案采用k+m个
14、管理密钥来支撑网络规模为n个节点的WSNs,为每个传感器节点分配k个管理密钥。 253.6 基于EBS的密钥管理方案 以EBS(8,3,2)为例,简单介绍密钥分配规则,如下表所示。 该网络中有8个传感器节点,密钥池中一共有5个密钥,从5个密钥中选出3个密钥分配给8个传感器节点,新加入的2个节点将按照灰色部分进行分配。 节点密钥N1N2N3N4N5N6N7N8N9N10k11111110000k21110001110k31001100111k40101011101k50010111011263.6 基于EBS的密钥管理方案密钥更新 假设节点N1被攻击者捕获,攻击者可以获得被捕获节点的三个管理密钥
15、k1、k2和k3。安全管理者需要撤销节点N1上的密钥,由于节点N1未知管理密钥有k4和k5,所以可以利用k4和k5进行密钥更新.第三章第三章 物联网的密钥管理物联网的密钥管理3.1 密钥管理类型3.2 密钥管理安全问题及安全需求3.3 全局密钥管理方案3.4 随机密钥预分配方案3.5 基于矩阵的密钥管理方案3.6 基于EBS的密钥管理方案3.7 LEAP协议和SPINs协议3.8 适用于WIA-PA标准的密钥管理方案283.7.1 LEAP协议协议LEAP协议 本地加密与认证协议(Localized Encryption and Authentication Protocol, LEAP)是一
16、个典型的分布式密钥管理方案,在该方案中一共定义了四种密钥类型,它们分别是个体密钥、对密钥、分组密钥和全网密钥。1. 个体密钥建立阶段 使用一个伪随机函数f和一个只有基站存储的主密钥 ,可得u的个体密钥: 。mK( )muKIKfu292. 对密钥建立q (1)密钥预先配置阶段 基站随机产生初始密钥 ,同时通过预先配置的方式将密钥 加载到每个传感器节点中,节点u利用密钥 和自己的ID派生出主密钥 。q (2) 邻居发现阶段 节点u向周围发送广播消息,其次当邻居节点v收到节点u广播的消息后回复响应消息。q (3)对密钥建立阶段 节点u收到邻居节点v发送的响应消息后,计算出节点v的主密钥 ,同时完成
17、对节点v的认证,若认证通过,则计算它们之间的对密钥 。节点 v采用相同的方法计算该对密钥。3.7.1 LEAP协议协议INKINKINK=( )INuKKfu = ( )INvKKfv( )vuvKKfu303.7.1 LEAP协议协议3. 分组密钥建立过程 节点u欲想与其所有的邻居节点 建立分组密钥,首先节点u随机产生一个随机密钥 ,然后使用与邻居节点 的对密钥 加密密钥 ,发送给邻居节点 ,即可完成分组密钥的建立。4. 全网密钥建立过程 基站产生全网密钥,然后使用基站本身生成的分组密钥加密该全网密钥并广播出去。基站的邻居节点收到基站广播的消息后,通过解密获得全网密钥,然后使用自己的分组密钥
18、加密全网密钥并广播出去。这样一次次通过多跳的方式将全网密钥分发下去,直到全网传感器节点获得全网密钥12,mv vvcuKiviuvKcuK31SPINs协议 该协议包含两个部分:SNEP协议和TESLA协议,其中SNEP协议的目的是:为传感器网络提供数据机密性、完整性、点到点的可认证性和数据的新鲜性等;TESLA协议为资源受限的传感器网络提供广播认证服务。 SNEP协议采用数据加密的形式确保数据的机密性,使用MAC码和计数器相集合的方法来保障数据的完整性、弱新鲜性和通信双方的可认证性,采用在数据报文中嵌入随机值的方式来保证数据的强新鲜性。3.7.2 SPINs协议协议32 通信双方共享的私钥和
19、MAC密钥建立的基础是预配置主密钥XAB,即将主密钥XAB作为伪随机函数F一个输入变量产生私钥和MAC密钥,如下式所示。1. 数据保密性和弱新鲜性 采用共享私钥和计数器相互的方式来加密明文数据,并以计数器值来为传输的数据提供弱新鲜性。3.7.2 SPINs协议协议 ABABABBAXABBAXKKFxKKFy3.7.2 SPINs协议协议332. 数据完整性和可认证性 通过加入MAC码来确保数据的完整性和通信双方的可认证性。3. 强新鲜性 采用单一的计数器方式不能够为数据提供强新鲜性,SNEP协议通过嵌入随机数的方式提高数据的新鲜性。第三章第三章 物联网的密钥管理物联网的密钥管理3.1 密钥管
20、理类型3.2 密钥管理安全问题及安全需求3.3 全局密钥管理方案3.4 随机密钥预分配方案3.5 基于矩阵的密钥管理方案3.6 基于EBS的密钥管理方案3.7 LEAP协议和SPINs协议3.8 适用于WIA-PA标准的密钥管理方案353.8 适用于适用于WIA-PA标准的密钥标准的密钥管理方案管理方案 WIA-PA密钥管理架构363.8 适用于适用于WIA-PA标准的密钥标准的密钥管理方案管理方案1. 密钥分发 WIA-PA网络无线设备在安装于现场之前,应该根据实际需求向现场设备装载初始密钥即为配置密钥。 设备在加入网络之前,设备需要利用配置密钥生成加入密钥。 设备安全入网后,安全管理者通过
21、秘密密钥产生(Secret Key Generation, SKG)协议为设备产生共享的对称主密钥373.8 适用于适用于WIA-PA标准的密钥标准的密钥管理方案管理方案2. SKG协议实现流程:383.8 适用于适用于WIA-PA标准的密钥标准的密钥管理方案管理方案 3. 密钥更新 WIA-PA网络密钥更新可以由安全管理者主动发起更新命令,安全管理者更新设备密钥的过程如下:393.8 适用于适用于WIA-PA标准的密钥标准的密钥管理方案管理方案4. 密钥撤销 在设备正常的密钥更新之后,安全管理者将撤销所有过期的密钥。当设备发现密钥的安全受到威胁、密钥已经泄漏等情况,就要及时通知安全管理者将该
22、密钥撤销。 安全管理者也可以根据WIA-PA网络受威胁情况,在密钥未过期之前,强制撤销设备中的某个密钥。撤销通知应包括密钥ID、撤销的日期时间、撤销的原因等。在密钥撤销之前,安全管理者应及时为该设备更新密钥。本章小结本章小结40 本章首先结合各种密钥管理方案不同的侧重点,以及这些方案的特征进行了分类;其次针对物联网密钥管理方案面临的安全问题提出了相应的安全需求;再次向读者介绍了几类经典的密钥管理方案,以便读者对密钥管理方案的进一步认识;最后结合WIA-PA标准中规定的密钥类型,描述了一种适用于WIA-PA网络的密钥管理机制。在现实应用中,密钥管理机制对于实际应用还有很多值得探究的地方。练习题练习题411. 随机密钥预分配方案包含哪几个阶段?2. 简述EBS密钥管理方案。3. 简述Blom方案中对密钥的建立过程。4. 简述WIA-PA 标准。5. 简述WIA-PA网络密钥管理过程。