ble mesh学习笔记(10)mesh网络各种key的应用

2023-05-16

 

一、网络密钥(Network Key)

应使用符合核心规范要求的随机数生成器生成。 网络密钥层次结构的图示如图所示。

 

1、用NID EncryptionKey PrivacyKey 来对mesh网络数据加密。

 

 

2、Network ID 安全网络广播 以及GATT网络广播

 

 

3、IdentityKey 用于节点识别广播

 

其中hash就是采用 IdentityKey生成。

 

4、beaconkey

 

 

二、应用密钥(AppKey)

 

1、AID 用于接入消息的验证

 

 

不同应用之间可以采用不同的应用秘钥。AppKey用于应用程序的数据。网络中的一些节点具有特定应用,并且根据应用的需要对一些潜在敏感数据的访问进行限制。这些节点具有特定的AppKey,并与特定应用相关联。会使用不同AppKey的领域通常包括安全(楼宇门禁、机房门禁和CEO办公室门禁)、照明(制造厂房、外部楼宇照明和人行道)和HVAC系统。

 

当一节点接收到讯息时,会将讯息从架构最底下的低功耗蓝牙,一层一层往上传(从载体层到网络层)。接着,网络层会进行各项检查来决定是否将讯息传给上一层,或者直接抛弃。

此外,PDU当中有一个网络识别码(Network ID)栏位,可用来快速判断讯息使用的网络密钥。如果接收端的网络层无法辨识该网络密钥,就代表接收端装置不属于该网络的成员,而会将PDU抛弃。此外,还有一个网络讯息完整性检查(MIC) 栏位。节点会辨识PDU网络识别码对应的网络密钥,如果检查失败,讯息便会直接被抛弃。在发送端节点讯号范围内的所有节点都会收到发出的讯息,与收到装置不相干的讯息则会迅速被抛弃,例如来自不同的网络或子网络的讯息。

同样的原则在上层传输层也一样适用。不过,该层检查的是讯息的应用密钥,也就是PDU当中的应用识别码(AID)栏位。如果收到的节点无法辨识PDU中的应用识别码,上层传输层就会将PDU直接抛弃。此外,若是传输讯息的完整性检查(TransMIC)失败,讯息也会被抛弃。

 

三、设备秘钥(DevKey)

设备密钥(DevKey)是仅为节点和配置客户端所知的访问层密钥。 设备密钥应绑定到节点已知的每个网络密钥。 那些绑定不能改变。 设备密钥派生的图示如图所示。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ble mesh学习笔记(10)mesh网络各种key的应用 的相关文章

随机推荐