[BLE--Link Layer]设备蓝牙地址

简述

任何网络设备而言,都会有自己独特的一个MAC地址,不然在设备量较大的情况下很可能造成通信的混乱。蓝牙是无线通信中使用非常广泛的技术,当然其蓝牙地址也是相当的重要的了。

蓝牙地址简述

种类划分
- public地址
- random地址
蓝牙地址长度,48bit,即6个byte。

Public地址

该地址是固定的,厂商设定:
这里写图片描述
public addr和resolvable random addr和unresolvable random addr

Random地址

Random地址其实又分为两种:
- Static地址
- Private地址

Static地址

这里写图片描述
这种地址是在蓝牙设备上电初始化成功后,就不会再变化,而到关闭电源再重启,才会使用一个新的值。

Private地址

这里写图片描述
这种是non resolvable的private地址,其值不能和public地址一样。对于这种地址,如果都没有办法解析出,不知道需要这类地址有什么作用?以后知道了再来补充吧。不过觉得可能是对Public地址的一个补充。

这里写图片描述
这种是resolvable的private地址,prand部分是随机生成的24bit数值,hash部分使用如下的方式生成:

hash = ah(IRK, prand)

ah是SMP部分的随机地址生成函数,IRK是密钥(Identity Resolving Key),先随机生成prand部分,然后用这个算法生成hash,然后将hash和prand部分填入上图中对应bit区域,就形成了resolvable private address(RPA)了。
因为上面这种地址是resolvable的,当然得有对应的地址解析的方法了,通过解密所获得对方的蓝牙地址,才可以进行某些通信,看来是BLE的新特性所提供安全性的一些手段了。
在拿到对方的resolvable private address(RPA)后,本地设备从RPA中取出prand部分,然后会根据上面hash的生成方式生成一个叫localhash的:

localHash = ah(IRK, prand)

然后将这个localHash和从RPA中取出的hash部分进行比较,如果相同,那么对方设备就被识别了。感觉这里的识别作用就是确定应当用哪个IRK和对方设备交互。对于这种random地址的方式,后面还得再看看,应当是比较新的特性。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

技塑未来-苏导

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值